Ace-T's Blog 내 검색 [네이버 커넥트 이웃 합니다~^-^/ 요청 大 환영~~]

apache accesslog 삭제

OS/Shell Script 2018.04.24 18:32
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


주저리


디스크가 Full이 났다. 

보니 아파치 액세스로그가 엄청나게 쌓이고 있었다..

매번 쌓일때마다 지워줘야하니 짜증이-_-;;

그래서 찾아보았다. 아파치 httpd.conf에서 옵션으로 삭제가 가능한지를..

잘못찾겠다-_-; 그래서 그냥 쉘스크립트로 삭제를 하기로 맘먹었다.


쉘 스크립트로 처리

remove_apache_accesslog.sh라는 쉘을 하나 만들었다.

shell의 내용

 #!/bin/bash

 # older than 1 days(수정 시간: mtime)

 find -daystart -type f -name "*.access_log" -mtime +1 -delete 


-daystart 옵션이 중요하다. 

참고 사이트 : https://www.gnu.org/software/findutils/manual/html_node/find_html/Age-Ranges.html


크론탭 스케줄링 처리

크론탭 설정 (crontab -e)

  # 아파치 액세스로그 삭제

 0 1 * * * /acet/script/remove_apache_accesslog.sh >> /acet/script/remove.log 2>&1 


'OS > Shell Script' 카테고리의 다른 글

apache accesslog 삭제  (0) 2018.04.24
[삽질 스토리] ssh에 연결하면서 바로 shell 수행하기!!  (0) 2016.05.10
value too great for base (error token is 08 )  (0) 2015.02.04
Shell Script DeBug Mode  (0) 2012.10.29
shell if 문법  (2) 2012.02.09

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

주식) 물려있던 녀석 처리 ㅋㅋㅋ 후아~

재테크 Info/Study-주식 2018.04.05 09:36
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T

물려있던 녀석을 결국 빨간색을 남기고 처분! ㅎㅎ 

그런데 판 가격보다 더 오르넼ㅋㅋㅋㅋㅋㅋㅋ

하지말 잘했다 욕심부리지말고 싼값에 빠르게 처분한것이 필요하다.

여러번 욕심부리다 못팔고 물려있지 않았나..! 기억해내라~

다른 종목을 선정하여 투자를 해보자!

날아라~에이스티! 주식투자 화이팅!

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

Error parsing HTTP request header 에러

Language/Java 2018.04.05 09:31
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


갑자기 헤더 오류가 나서 뭔가 싶었는데 알고 봤더니 앞단과 뒷단간에 통신할 때 Request가 Bad였던것!

그래서 아래와 같이 오류가 떨어짐.


수정사항으로는 앞단(클라이언트, 프론트) encodeURL로 뒷단(서버)에서는 decoode를 수행.

특이사항으로는 로컬에서는 잘되어짐. 서버단에서 버그 발생.

톰캣 버전에 따라서 달라진다는것을 알수 있었음. -_-;;

톰캣!!~~

   - 끝 -

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

최강두산) 2018년 4월 경기 일정

Life of AceT/Good Info 2018.04.03 10:53
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


공홈 : http://www.doosanbears.com/season/sche.do;jsessionid=73548F4A56489FDAFB9C58FEDFBAFE8E?gCode=R

'Life of AceT > Good Info' 카테고리의 다른 글

최강두산) 2018년 4월 경기 일정  (0) 2018.04.03
2018년 두산베어스 3월 경기일정  (0) 2018.03.28
스팸전화 모음  (0) 2017.11.01
카드포인트 통합조회 사이트!  (0) 2016.11.21
투표 완료!  (0) 2016.04.13
크롬 대박 기능 ㅋㅋㅋ  (0) 2015.02.04

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

2018년 두산베어스 3월 경기일정

Life of AceT/Good Info 2018.03.28 09:48
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T

공홈 : http://www.doosanbears.com/season/sche.do;jsessionid=73548F4A56489FDAFB9C58FEDFBAFE8E?gCode=R

'Life of AceT > Good Info' 카테고리의 다른 글

최강두산) 2018년 4월 경기 일정  (0) 2018.04.03
2018년 두산베어스 3월 경기일정  (0) 2018.03.28
스팸전화 모음  (0) 2017.11.01
카드포인트 통합조회 사이트!  (0) 2016.11.21
투표 완료!  (0) 2016.04.13
크롬 대박 기능 ㅋㅋㅋ  (0) 2015.02.04

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

중고차 파악해보기 - 티볼리

재테크 Info/주저리 2018.03.20 14:43
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


일단 가솔린(휘발유) 보단 유지비 면에선 디젤이 좋을것 같다.(경유)

AX / IX / RX 트림 등으로 분류가 되어지고 2WD / 4WD로도 나뉘어진다.

트림은 아래 사이트를 참고하세요!

http://www.kbench.com/?q=node/164434

2WD / 4WD 는 구동을 말합니다.
  - 2륜은 4륜에 비해 코너링이 힘듭니다.
  - 4륜은 쉬운 주행성능을 갖지만 무게가 많이 나가서 2륜에 비해 속도가 쳐지는 편입니다. 

또한 가솔린보다 디젤이 더 잘나온다는 내용도 얼핏 본거 같네요.




acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

용어 - multiplexer

Language/go lang 2018.03.16 10:50
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T



// Mux is a simple HTTP route multiplexer that parses a request path,
// records any URL params, and executes an end handler. It implements
// the http.Handler interface and is friendly with the standard library.
//
// Mux is designed to be fast, minimal and offer a powerful API for building
// modular and composable HTTP services with a large set of handlers. It's
// particularly useful for writing large REST API services that break a handler
// into many smaller parts composed of middlewares and end handlers.


멀티플렉서?

복수의 입력 중에서 1개를 선택해서 출력하는 전환회로. 복수의 입력은 제어신호에 의해 1개의 출력에 시간분할로 이어 바꿔진다. 논리 게이트로 구성되는 조합 논리 회로이다. 멀티플렉서의 역기능 회로를 디멀티플렉서(demultiplexer)라고 한다.

Mux요청경로를 파싱하는 간단한 HTTP route multiplexer이며, URL params을 기록하고 종료 처리기를 실행합니다.

이것은 http.Handler를 구현하며 표준 라이브러리와 친합니다.

Mux는 빠르고 최소한으로 설계되어 modular나 많은 handler를 가지는 http services를 만들기 위해 강력한 api를 제공 합니다.

또한 미들웨어와 엔드 핸들러로 구성된 매우 작은 파트들인 핸들러를 구성하는 rest api service를 만드는데 특히 유용 합니다.

type Mux struct {
// The radix trie router
tree *node

// The middleware stack
middlewares []func(http.Handler) http.Handler

// Controls the behaviour of middleware chain generation when a mux
// is registered as an inline group inside another mux.
inline bool
parent *Mux

// The computed mux handler made of the chained middleware stack and
// the tree router
handler http.Handler

// Routing context pool
pool sync.Pool

// Custom route not found handler
notFoundHandler http.HandlerFunc

// Custom method not allowed handler
methodNotAllowedHandler http.HandlerFunc
}


middleware stack가 뭔지 궁금했는데  []func(http.Handler) http.Handler 였다. 굿굿!


관련하여 chi package를 살펴보자.

2018/03/02 - [Language/go lang] - chi package






'Language > go lang' 카테고리의 다른 글

용어 - multiplexer  (0) 2018.03.16
golang + github Permanently added the RSA host key  (0) 2018.03.05
golang + github ignore setting  (0) 2018.03.05
기초) golang project 만들어보기!  (0) 2018.03.05
golang setting  (0) 2018.03.02
chi package  (0) 2018.03.02

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

보호글

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력해주세요.

레지스터(Register), Context Switching란?

OS/Linux&Unix 2018.03.14 14:25
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T



레지스터란?

CPU 내부에 존재하는 다목적 저장 공간입니다. 

일반적으로 메모리라고 얘기하는 RAM(Random Access Memory)과는 성격이 조금 다릅니다. 

CPU가 RAM에 있는 데이터에 접근하기 위해서는 물리적으로 돌아가야하기 때문에 오래걸리지만, 

레지스터는 CPU 내부에 존재하므로 고속으로 데이터를 처리할 수 있습니다.

출처: http://orang.tistory.com/entry/레지스터-Register-의-이해 [Hacked by ORANG]



문맥교환(Context Switching)란?

인터럽트가 발생되었을 때 실행 중이던 프로세스가 작업을 멈추었다가 다시 실행될 때 이전 작업을 다시 수행하기 위해

이전 작업 내용과 프로세스의 정보들을 PCB에 저장하는데 이것은 문맥을 저장한다고 말하며 프로세스가 다시 실행되기 전에 저장해

놓았던 정보들을 다시 프로세스에 적재 시키는 것을 문맥을 재적재한다고 말한다. 이러한 행위가 문맥교환이다.

출처 : http://junsday.tistory.com/27?category=897242



'OS > Linux&Unix' 카테고리의 다른 글

레지스터(Register), Context Switching란?  (0) 2018.03.14
linux os 확인  (0) 2017.07.03
pokemon skin  (0) 2017.06.22
yum에 대해 알아보자.  (0) 2017.05.09
curl http/2  (0) 2017.03.21
리눅스 - scp file copy  (1) 2017.01.22

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

golang + github Permanently added the RSA host key

Language/go lang 2018.03.05 20:52
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


Permanently added the RSA host key

공개키 에러인데 ..github서버에 파일을 push하려고 보니 현재 인증된게 하나도 없는 상태이다.
공개키를 github에 등록을 해주어야한다.


아래처럼 우선 공개키가 있는지 확인해보자.

공개키가 없다면..

2016/08/29 - [OS/Linux&Unix] - SSH 유용정보!



github에 id_rsa.pub 의 내용을 넣으면 된다.


잘 push  되었음을 알수가 있다.

  - 끝 -


'Language > go lang' 카테고리의 다른 글

용어 - multiplexer  (0) 2018.03.16
golang + github Permanently added the RSA host key  (0) 2018.03.05
golang + github ignore setting  (0) 2018.03.05
기초) golang project 만들어보기!  (0) 2018.03.05
golang setting  (0) 2018.03.02
chi package  (0) 2018.03.02

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

golang + github ignore setting

Language/go lang 2018.03.05 20:30
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


github에 push하는데 있어서 무시해야하는 파일들은 무시하도록 설정한다. 아래 링크 참고!

2016/03/23 - [OpenSource/Spring Boot] - ace-t의 Spring Boot 따라잡기(기본 - SourceTree에 연결 및 Repository에 올리기)


https://www.gitignore.io/

에서 go와 intelij+imi를 선택한다.

복사 후 아래의 파일에 저장 시키면 된다.


다시 github을 열었을 때 imi파일들은 사라지고 아래의 커밋대상만 보이면 성공!


  - 끝 -

'Language > go lang' 카테고리의 다른 글

용어 - multiplexer  (0) 2018.03.16
golang + github Permanently added the RSA host key  (0) 2018.03.05
golang + github ignore setting  (0) 2018.03.05
기초) golang project 만들어보기!  (0) 2018.03.05
golang setting  (0) 2018.03.02
chi package  (0) 2018.03.02

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

기초) golang project 만들어보기!

Language/go lang 2018.03.05 20:05
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


잘못된 예


잘된 예


아래와 같이 github.com/ace-t/golangArch로 만드는데 이렇게 하는 이유는 golang은 라이브러리 자체가 github에 올려서 공유하는 그런 형태이다.

그러므로 우리도 자기자신의 github url형식으로 프로젝트를 만들어보자!(글쓴이는 golang IDE를 사용한다.)


  - 끝 -


'Language > go lang' 카테고리의 다른 글

golang + github Permanently added the RSA host key  (0) 2018.03.05
golang + github ignore setting  (0) 2018.03.05
기초) golang project 만들어보기!  (0) 2018.03.05
golang setting  (0) 2018.03.02
chi package  (0) 2018.03.02
go lang song? zz  (0) 2018.02.20

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

golang setting

Language/go lang 2018.03.02 17:36
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T




참조 : golang 셋팅

  1. Go 설치
    1. https://golang.org/dl/


B. goland 사용



workspace에는 src와 더불어 bin, pkg 서브 폴더를 만들어준다.



go env를 통해 GOROOT와 GOPATH를 확인한다.


GoLand를 사용

이제 재미난 코딩과 함께~아키텍처구조를 잡아보자^0^


2017/04/26 - [Language/go lang] - go land에서 formatting 설정하기

위의 프로젝트가 조금 잘못 만든거 같다.

프로젝트는 아래의 링크를 보도록 하자.

2018/03/05 - [Language/go lang] - 기초) golang project 만들어보기!





'Language > go lang' 카테고리의 다른 글

golang + github ignore setting  (0) 2018.03.05
기초) golang project 만들어보기!  (0) 2018.03.05
golang setting  (0) 2018.03.02
chi package  (0) 2018.03.02
go lang song? zz  (0) 2018.02.20
golang factory  (0) 2018.02.13

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

chi package

Language/go lang 2018.03.02 13:21
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T

HTTP Service를 구현할 때 사용한다.

Go 1.7이나 그 이상에서 사용이 가능하다.

package main

import (
	"net/http"

	"github.com/go-chi/chi"
	"github.com/go-chi/chi/middleware"
)

func main() {
	r := chi.NewRouter()
	r.Use(middleware.Logger)
	r.Use(middleware.Recoverer)

	r.Get("/", func(w http.ResponseWriter, r *http.Request) {
		w.Write([]byte("root."))
	})

	http.ListenAndServe(":3333", r)
}

여러가지 함수들이 다양하기 때문에 가지고 놀아봐야 제대로 알듯 하다.

chi package는 크게 Context, Middleware, Mux, Route 등으로 구성되어져있다고 보면 된다.

참고 : https://godoc.org/github.com/go-chi/ch


그 중 Type Route은 아래와 같다.

Use : Mux middleware stack에 middleware handler를 추가 한다.   
        Mux를 위한 
middleware stack은 매칭을 검색하기 전에 실행 된다.
        특정 핸들러로 route하여 조기에 응답할 수 있는 기회를 제공 한다.
        그리고 요청 실행과정을 변경하거나 요청 범위 값을 다음 http.Handler를 위해 설정 합니다. 


// Use appends a middleware handler to the Mux middleware stack.
//
// The middleware stack for any Mux will execute before searching for a matching
// route to a specific handler, which provides opportunity to respond early,
// change the course of the request execution, or set request-scoped values for
// the next http.Handler.
func (mx *Mux) Use(middlewares ...func(http.Handler) http.Handler) {
if mx.handler != nil {
panic("chi: all middlewares must be defined before routes on a mux")
}
mx.middlewares = append(mx.middlewares, middlewares...)
}


Middlewares

// Middlewares type is a slice of standard middleware handlers with methods
// to compose middleware chains and http.Handler's.
type Middlewares []func(http.Handler) http.Handler


Route : 새로운 middleware stack이 있는 새로운 Mux를 만들고 Sub Router로 패턴을 따라 마운트 한다.


// Route creates a new Mux with a fresh middleware stack and mounts it
// along the `pattern` as a subrouter. Effectively, this is a short-hand
// call to Mount. See _examples/.
func (mx *Mux) Route(pattern string, fn func(r Router)) Router {
subRouter := NewRouter()
if fn != nil {
fn(subRouter)
}
mx.Mount(pattern, subRouter)
return subRouter
}


Mount 


// Mount attaches another http.Handler or chi Router as a subrouter along a routing
// path. It's very useful to split up a large API as many independent routers and
// compose them as a single service using Mount. See _examples/.
//
// Note that Mount() simply sets a wildcard along the `pattern` that will continue
// routing at the `handler`, which in most cases is another chi.Router. As a result,
// if you define two Mount() routes on the exact same pattern the mount will panic.
func (mx *Mux) Mount(pattern string, handler http.Handler) {


Handle : http method와 일치하는 'handler' http.Handler를 실행한다.

// Handle and HandleFunc adds routes for `pattern` that matches
// all HTTP methods.
Handle(pattern string, h http.Handler)
HandleFunc(pattern string, h http.HandlerFunc)


Handler > ServeHTTP


// A Handler responds to an HTTP request.
//
// ServeHTTP should write reply headers and data to the ResponseWriter
// and then return. Returning signals that the request is finished; it
// is not valid to use the ResponseWriter or read from the
// Request.Body after or concurrently with the completion of the
// ServeHTTP call.
//
// Depending on the HTTP client software, HTTP protocol version, and
// any intermediaries between the client and the Go server, it may not
// be possible to read from the Request.Body after writing to the
// ResponseWriter. Cautious handlers should read the Request.Body
// first, and then reply.
//
// Except for reading the body, handlers should not modify the
// provided Request.
//
// If ServeHTTP panics, the server (the caller of ServeHTTP) assumes
// that the effect of the panic was isolated to the active request.
// It recovers the panic, logs a stack trace to the server error log,
// and either closes the network connection or sends an HTTP/2
// RST_STREAM, depending on the HTTP protocol. To abort a handler so
// the client sees an interrupted response but the server doesn't log
// an error, panic with the value ErrAbortHandler.
type Handler interface {
ServeHTTP(ResponseWriter, *Request)
}



참고 

type Router interface {
    http.Handler
    Routes

    // Use appends one of more middlewares onto the Router stack.
    Use(middlewares ...func(http.Handler) http.Handler)

    // With adds inline middlewares for an endpoint handler.
    With(middlewares ...func(http.Handler) http.Handler) Router

    // Group adds a new inline-Router along the current routing
    // path, with a fresh middleware stack for the inline-Router.
    Group(fn func(r Router)) Router

    // Route mounts a sub-Router along a `pattern`` string.
    Route(pattern string, fn func(r Router)) Router

    // Mount attaches another http.Handler along ./pattern/*
    Mount(pattern string, h http.Handler)

    // Handle and HandleFunc adds routes for `pattern` that matches
    // all HTTP methods.
    Handle(pattern string, h http.Handler)
    HandleFunc(pattern string, h http.HandlerFunc)

    // Method and MethodFunc adds routes for `pattern` that matches
    // the `method` HTTP method.
    Method(method, pattern string, h http.Handler)
    MethodFunc(method, pattern string, h http.HandlerFunc)

    // HTTP-method routing along `pattern`
    Connect(pattern string, h http.HandlerFunc)
    Delete(pattern string, h http.HandlerFunc)
    Get(pattern string, h http.HandlerFunc)
    Head(pattern string, h http.HandlerFunc)
    Options(pattern string, h http.HandlerFunc)
    Patch(pattern string, h http.HandlerFunc)
    Post(pattern string, h http.HandlerFunc)
    Put(pattern string, h http.HandlerFunc)
    Trace(pattern string, h http.HandlerFunc)

    // NotFound defines a handler to respond whenever a route could
    // not be found.
    NotFound(h http.HandlerFunc)

    // MethodNotAllowed defines a handler to respond whenever a method is
    // not allowed.
    MethodNotAllowed(h http.HandlerFunc)
}





'Language > go lang' 카테고리의 다른 글

기초) golang project 만들어보기!  (0) 2018.03.05
golang setting  (0) 2018.03.02
chi package  (0) 2018.03.02
go lang song? zz  (0) 2018.02.20
golang factory  (0) 2018.02.13
golang - Package json  (0) 2018.02.09

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

분양권 전매 절차 알아보기

재테크 Info/주저리 2018.02.21 17:17
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


1. 분양권 전매 절차 

 : 아파트 분양 당첨 후 건설사와 분양 계약이 체결돼야 분양권 전매

   가능해짐


2. 매매계약

 : 매도자와 매수자가 지역 중개업소 또는 직거래로 계약함

매우중요!!! 호구가 되지 않고 손해를 보지 않으려면 매매계약서 작성이 매우매우 중요하다!!
중계업자를 절대 믿으면 안된다. 그리고 달콤한 말로 꼬드기는데 막상 계약하러 갔을 때 내가 알던 말과 다르면
바로 없던일로 하고 돌아오는것도 하나의 방법이다. 지속적으로 말이 달라질수 있기 때문이다. 


 이 부분이 매우 중요하다.
 개념없는 부동산 또는 나를 호구로 아는 부동산에서는 매도자인 나와 상의 없이 일을 일사천리 진행할 수 있기 때문이다.
 그렇게 되면 그것에 대한 협의를 다시 해야하니 골치 아프다-_-;;

 매매 계약서를 쓰기전에! 협의할 것은 반드시 해야한다. 부동산을 너무 믿지말라! 부동산은 매수자와 친하다?!(이후에 전세, 매매등을 더 할수 있으니깐!)
  - 협의 대상은 1원이라도 들어가는 내용이면 무조건 정하라!!
  ex) 인지세, 양도세, 중도금대출에 대한 이자!(매우중요!) 보통 매수자가 내는데 중계업자가 매도자에게 말하지 않고 그냥 넘어가고 나중에 상황이 기울어지면 대충 넘어가는 경향이 있을수 있다.
 - 계약서 특약에 들어갈 내용을 내가 미리 알아보고 넣어달라고 요구하자!
 - 계약서의 내용중에 이상한 것이 있으면 반드시 이해하고 넘어가자!
   : 거지같은 내용이 있어서...예를 들어 귀책사유로 매수자가 명의변경이 어려울경우(거의 없다 그리고 있으면 당연히 계약 못한다) 계약 파기가 가능하다 라는 문구 등등 귀책사유? 변심도 할수 있기에 이런 위험한 내용은 파기 하자! , 특히 제주도에서 이런문구가 많다.  조심!!
 -  잔금일자를 협의한 뒤에 적자고 하는 경우도 있다. 어이가 없는 경우이다..바로 날짜 픽스하고 도장 찍자!!
 - 그리고 팁으로 부동산에서 말이 안통하면 시청이나 도청등의 지적과라는 곳이 있다. 부동산 관리! 이곳을 방문하면 된다.
 - 그리고 중계업자가 많은 수수료를 제시하기도 하니 조심하자. 주변 시세를 알아보기!
 - 중계 수수료는 양도세 낼 때 가져가야한다. 현금영수증 자료. 사진으로 준다고 괜찮다고 하는데...그냥 프린트해가자!
 - 마지막 팁으로 협의가 안된 돈이 발생할 경우 계약서에 넣어버리면 그돈이 프리미엄으로 잡히게 된다.
    작은 돈일지라도 별지특약이나 차용증으로 처리하자!



* 분양권 전매 시 매매 계약서 작성에는 

   초기 분양가격이 아닌 계약금, 중도금, 발코니 확장비용, 옵션비용

   프리미엄을 포함한 실 거래 금액이 산정됨


3. 매매계약서 검인 (매도자 또는 매수자) <-- 이 부분은 한적 없는 거 같음 패스~

 : 매도자 또는 매수자 한 명만 방문 (시, 군, 구청 지적과)


4. 실거래가 신고

 : 중개업자가 부동산 거래 계약 신고서를 작성, 신고함


5. 은행대출 승계 (매도자와 매수자)

 : 매도자와 매수자가 함께 대출받은 금융기관을 방문해 중도금 

   대출의 채무를 승계함 (은행대출채무승계동의서 작성)
 : 매도자는 신분증, 분양계약서, 검인계약서, 인감도장, 대출통장

   을 준비하고 매수자는 신분증, 인감도장을 준비함


6. 명의변경 (매도자와 매수자)

 : 매도자는 인감증명서, 주민등록증, 인감도장, 신분증, 분양계약서,

   분양대금납부영수증, 은행대출채무승계동의서를 준비하며 

   매수자는 인감증명서, 인감도장, 신분증, 검인계약서를 준비해 

   건설사의 분양사무소를 방문해 분양계약서 뒷면의 매수자 명의를

   변경함

 

 7. 양도소득세 신고 (매도자의 경우 분양권 전매 시 프리미엄에 대한

    양도소득세 납부 필요) 

   - 세무서 찾아가서 작성 하면 된다.



출처: http://jbljoo.tistory.com/21 [JBL JOO]

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

'프마송-주이 편'

분류없음 2018.02.21 10:49
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


대세 걸그룹 모모랜드의 귀요미 주이가 참여한 프마송 영상이 전격 공개~상콤하네요 ㅎㅎ



acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

go lang song? zz

Language/go lang 2018.02.20 13:23
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


Go를 홍보하는? 노래가 있다(Write in Go) (자막켜기 하면 자막 있음)

퍼옴 : https://www.youtube.com/watch?v=LJvEIjRBSDA

재밌네 ㅋㅋ

'Language > go lang' 카테고리의 다른 글

golang setting  (0) 2018.03.02
chi package  (0) 2018.03.02
go lang song? zz  (0) 2018.02.20
golang factory  (0) 2018.02.13
golang - Package json  (0) 2018.02.09
valid 시 non zero value required 오류  (0) 2018.02.02

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

golang factory

Language/go lang 2018.02.13 13:18
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


golang factory?


[ 호출부]

json.NewDecoder(reader).Decode(&msg)


[Decode]

func (dec *Decoder) Decode(v interface{}) error {
if dec.err != nil {
return dec.err
}

if err := dec.tokenPrepareForDecode(); err != nil {
return err
}

if !dec.tokenValueAllowed() {
return &SyntaxError{msg: "not at beginning of value"}
}

// Read whole value into buffer.
n, err := dec.readValue()
if err != nil {
return err
}
dec.d.init(dec.buf[dec.scanp : dec.scanp+n])
dec.scanp += n

// Don't save err from unmarshal into dec.err:
// the connection is still usable since we read a complete JSON
// object from it before the error happened.
err = dec.d.unmarshal(v)

// fixup token streaming state
dec.tokenValueEnd()

return err
}


위의 소스에서 Decode 함수를 보자.

err = dec.d.unmarshal(v)라는게 눈에 띈다.

아래의 Encode함수도 마찬가지로 err := e.marshal(v, encOpts{escapeHTML: enc.escapeHTML}) 이라는게 있다.

[Encode]

func (enc *Encoder) Encode(v interface{}) error {
if enc.err != nil {
return enc.err
}
e := newEncodeState()
err := e.marshal(v, encOpts{escapeHTML: enc.escapeHTML})
if err != nil {
return err
}

// Terminate each value with a newline.
// This makes the output look a little nicer
// when debugging, and some kind of space
// is required if the encoded value was a number,
// so that the reader knows there aren't more
// digits coming.
e.WriteByte('\n')

b := e.Bytes()
if enc.indentPrefix != "" || enc.indentValue != "" {
if enc.indentBuf == nil {
enc.indentBuf = new(bytes.Buffer)
}
enc.indentBuf.Reset()
err = Indent(enc.indentBuf, b, enc.indentPrefix, enc.indentValue)
if err != nil {
return err
}
b = enc.indentBuf.Bytes()
}
if _, err = enc.w.Write(b); err != nil {
enc.err = err
}
encodeStatePool.Put(e)
return err
}


아래의 링크를 타고 내용을 보면 Marshal의 값은 v를 재귀적으로 호출한다.  v는 인터페이스!  또한 발생한 값이 Marshal 인터페이스를 구현하고 nil pointer가

아닐 경우 MarshalJSON 메소드를 호출하여 JSON을 생성하는 프로세스이다. 그러므로 아래처럼 MarshalJSON메소드를 구현 해주면 그녀석이 발동 된다는 것이다.

func Marshal(v interface{}) ([]byte, error)

2018/02/09 - [Language/go lang] - golang - Package json


예를 들어 아래와 같이 메소드가 있다면 아래의 MarshalJSON()을 호출하여 그안에서 factory를 생성한다.

func (m *AceTMessage) MarshalJSON(b []byte) error {


m.Test = newFactory(m.Header.Type)


}


newFactory() 가 factory관련 소스이다.

var exFactory = map[string]func() Test{ // type에 따라 처리가 되어지는 구조.



- 끝 - 









'Language > go lang' 카테고리의 다른 글

chi package  (0) 2018.03.02
go lang song? zz  (0) 2018.02.20
golang factory  (0) 2018.02.13
golang - Package json  (0) 2018.02.09
valid 시 non zero value required 오류  (0) 2018.02.02
Review  (0) 2017.10.24

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

golang - Package json

Language/go lang 2018.02.09 13:44
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T

import "encoding/json"

json 패키지는 RFC 4627에 정의 된 JSON의 인코딩 및 디코딩을 구현합니다. 

JSON 및 Go 값 간의 매핑은 marshal 및 unmarshal 함수에 대한 설명서에 설명되어 있습니다.

func Marshal(v interface{}) ([]byte, error)

Marshal은 v의 JSON 인코딩을 반환합니다. Marshal은 값 v를 재귀적으로 호출한다.
발생한 값이 
Marshal 인터페이스를 구현하고 nil 포인터가 아닌 경우 MarshalJSON 메서드를 호출하여 JSON을 생성합니다. 
MarshalJSON 메서드가 없지만 값이 encoding.TextMarshaler를 대신 구현하면 Marshal은 해당 MarshalText 메서드를
호출하고 결과를 JSON 문자열로 인코딩합니다. 
nil 포인터 예외가 반드시 필요한 것은 아니지만 UnmarshalJSON의 동작에서 비슷하고 필요한 예외를 모방합니다.
그렇지 않은 경우, Marshal은 다음과 같은 유형 종속 기본 인코딩을 사용합니다.

부울 값은 JSON 부울 값으로 인코딩됩니다. 부동 소수점, 정수 및 숫자 값은 JSON 숫자로 인코딩됩니다.

문자열 값은 유효한 UTF-8로 강제 변환 된 JSON 문자열로 인코딩되어 유효하지 않은 바이트를 유니 코드 대체 문자로 대체합니다. 꺽쇠 괄호 "<"및 ">"는 "\ u003c"및 "\ u003e"로 이스케이프 처리되어 일부 브라우저가 JSON 출력을 HTML로 오해하지 않게합니다. 앰퍼샌드 "&"도 같은 이유로 "\ u0026"로 이스케이프됩니다. 이 이스케이프는 SetEscapeHTML (false)가 호출 된 인코더를 사용하여 비활성화 할 수 있습니다. 배열 및 슬라이스 값은 JSON 배열로 인코딩됩니다. 단, [] 바이트는 base64 인코딩 된 문자열로 인코딩되고 nil 슬라이스는 null JSON 값으로 인코딩됩니다. 구조체 값은 JSON 객체로 인코딩됩니다. 각 내보내기 된 구조체 필드는 개체 이름으로 필드 이름을 사용하여 개체의 멤버가됩니다. 필드가 아래에 나와있는 이유 중 하나로 생략되지 않는 한 각 구조체 필드의 인코딩은 구조체 필드의 태그에서 "json"키 아래에 저장된 형식 문자열을 사용하여 사용자 정의 할 수 있습니다. 형식 문자열은 필드의 이름을 제공하며 그 뒤에 쉼표로 구분 된 옵션 목록이옵니다. 기본 필드 이름을 무시하지 않고 옵션을 지정하려면 이름이 비어있을 수 있습니다.

"omitempty"옵션은 필드에 빈 값이 있거나 false, 0, nil 포인터, nil 인터페이스 값 및 빈 배열, 슬라이스, 맵 또는 문자열로 정의 된 필드가 인코딩에서 생략되어야한다고 지정합니다. ex) Field int `json:"myName,omitempty"` / Field int `json:",omitempty"`

특수한 경우 필드 태그가 "-"인 경우 필드는 항상 생략됩니다. ex) Field int `json:"-"`

이름이 "-"인 필드는 여전히 "-"태그를 사용하여 생성 할 수 있습니다. ex) Field int `json:"-,"`

유니 코드 문자, 숫자 및 ASCII 구두점 (인용 부호, 백 슬래시 및 쉼표 제외)으로 구성된 비어 있지 않은 문자열 인 경우 키 이름이 사용됩니다.

익명 구조체 필드는 일반적으로 내부 내보내기 필드가 외부 구조체의 필드 인 것처럼 마샬링되며 다음 단락에서 설명하는대로 일반적인 Go 가시성 규칙이 수정됩니다. JSON 태그에 주어진 이름을 가진 익명 구조체 필드는 익명이 아닌 해당 이름을 가진 것으로 취급됩니다. 인터페이스 유형의 익명 구조체 필드는 익명이 아닌 이름으로 해당 유형을 갖는 것과 동일하게 취급됩니다.

마샬링 또는 언 마샬링 할 필드를 결정할 때 구조체 필드에 대한 가시성 규칙이 JSON에 맞게 수정되었습니다. 같은 레벨에 여러 개의 필드가 있고 해당 레벨이 가장 작은 중첩 된 경우 (따라서 일반 Go 규칙에 의해 선택된 중첩 레벨이 됨) 다음과 같은 추가 규칙이 적용됩니다.
1) 이러한 필드 중 JSON 태그가 있는 경우 태그가없는 필드가 여러 개있는 경우에도 태그가있는 필드만 고려됩니다.
2) 정확히 하나의 필드 (첫 번째 규칙에 따라 태그가 지정 되었는지 여부)가 선택되면 해당 필드가 선택됩니다.

3) 그렇지 않으면 여러 필드가 있으며 모두 무시됩니다. 오류가 발생하지 않습니다.

익명 구조체 필드의 처리는 Go 1.1에서 새로 추가되었습니다. Go 1.1 이전에는 익명 구조체 필드가 ​​무시되었습니다. 현재 버전과 이전 버전의 익명 구조체 필드를 강제로 무시하려면 해당 필드에 "-"JSON 태그를 지정하십시오.

예제)

func Unmarshal(data []byte, v interface{}) error

Unmarshal은 JSON으로 인코딩 된 데이터를 구문 분석하고 결과가 v가 가리키는 값에 저장합니다. v가 nil이거나 포인터가 아닌 경우 Unmarshal은 InvalidUnmarshalError를 반환합니다.

Unmarshal은 마샬러가 사용하는 인코딩의 역함수를 사용하여 필요에 따라 maps, slices 및 포인터를 할당하고 다음과 같은 추가 규칙을 사용합니다.

Unmarshal은 JSON을 포인터로 unmarshal하기 위해 먼저 JSON 리터럴 null 인 JSON의 대소문자를 처리합니다. 이 경우 Unmarshal은 포인터를 nil로 설정합니다. 그렇지 않으면, Unmarshal은 JSON을 포인터가 가리키는 값으로 unmarshal합니다. 포인터가 nil이면 Unmarshal은 포인터가 가리키는 새 값을 할당합니다.

JSON을 Unmarshaler 인터페이스를 구현하는 값으로 unmarshal하기 위해 Unmarshal은 입력 값이 JSON null 인 경우를 포함하여 해당 값의 UnmarshalJSON 메서드를 호출 합니다. 그렇지 않은 경우 값이 encoding.TextUnmarshaler를 구현하고 입력 값이 JSON 인용 문자열이면 Unmarshal은 해당 값의 UnmarshalText 메소드를 인용되지 않은 문자열 형식으로 호출합니다.

JSON을 구조체로 unmarshal하려면 Unmarshal이 들어오는 객체 키를 marshal(구조체 필드 이름 또는 해당 태그)에서 사용하는 키와 일치 시키며 정확히 일치하는 것을 선호하지만 대 / 소문자를 구분하지 않는 일치를 허용합니다. Unmarshal은 구조체의 내 보낸 필드 만 설정합니다.

JSON 배열을 Go 배열로 unmarshal하기 위해 Unmarshal은 JSON 배열 요소를 해당 Go 배열 요소로 디코딩합니다. Go 배열이 JSON 배열보다 작은 경우 추가 JSON 배열 요소가 삭제됩니다. JSON 배열이 Go 배열보다 작은 경우 추가 Go 배열 요소는 0 값으로 설정됩니다.

.








'Language > go lang' 카테고리의 다른 글

go lang song? zz  (0) 2018.02.20
golang factory  (0) 2018.02.13
golang - Package json  (0) 2018.02.09
valid 시 non zero value required 오류  (0) 2018.02.02
Review  (0) 2017.10.24
test code..반성!  (0) 2017.10.13

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

valid 시 non zero value required 오류

Language/go lang 2018.02.02 14:20
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


func checkRequired(v reflect.Value, t reflect.StructField, options tagOptionsMap) (bool, error) {
if requiredOption, isRequired := options["required"]; isRequired {
if len(requiredOption) > 0 {
return false, Error{t.Name, fmt.Errorf(requiredOption), true}
}
return false, Error{t.Name, fmt.Errorf("non zero value required"), false}
} else if _, isOptional := options["optional"]; fieldsRequiredByDefault && !isOptional {
return false, Error{t.Name, fmt.Errorf("All fields are required to at least have one validation defined"), false}
}
// not required and empty is valid
return true, nil
}


위의 validator.go 소스를 살펴보자.

requried면 value를 가지고 체킹을 하게 된다.

즉, 값이 0이 들어오는데 required를 사용하게 된다면 false인 것이다. 즉 valid가 유효하지 못하다.

제거를 해주면 0이나 "" 이 들어와도 값이 없는 것으로 간주하지는 않을 것이다.

golang ref : 

 - https://godoc.org/

 - https://play.golang.org/


열공 열공~!

'Language > go lang' 카테고리의 다른 글

golang factory  (0) 2018.02.13
golang - Package json  (0) 2018.02.09
valid 시 non zero value required 오류  (0) 2018.02.02
Review  (0) 2017.10.24
test code..반성!  (0) 2017.10.13
golang Context란?  (0) 2017.09.07

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

티스토리 툴바