Google AdSense (text)

hidden logo stop

Moving

거지 같은 이글루스 광고노출 정책이 싫어서,
새 보금자리(http://blog.leocat.kr/)로 이사감.

[Groovy] json 만들기 Computer & Program


- 함께 역인 글 : [Groovy] json 파싱하기


말이 필요 없음
예제가 다 말해줌 ㅋ

def json = new groovy.json.JsonBuilder()

json.html {
    header {
        title 'Login'
    }
    body {
        h1 'Hello world'
        div {
            p ({
                label ('ID')
                input 'id'
            },
            {
                label 'Password'
                input 'pw'
            })
            button 'Login', 'Exit'
        }
    }
}

def prettyJson = groovy.json.JsonOutput.prettyPrint(json.toString())
assert prettyJson == '''{
    "html": {
        "header": {
            "title": "Login"
        },
        "body": {
            "h1": "Hello world",
            "div": {
                "p": [
                    {
                        "label": "ID",
                        "input": "id"
                    },
                    {
                        "label": "Password",
                        "input": "pw"
                    }
                ],
                "button": [
                    "Login",
                    "Exit"
                ]
            }
        }
    }
}'''


JsonBuilder라는 녀석이 json을 만들기 쉽게 구성해 준다.
한 줄에 key와 value를 구분해 적어주고, 여러 자식이 있는 경우 closure로 만들어 주면 된다. (header와 body를 가진 html 처럼 closure로 묶는다) "button"처럼 배열을 넣고 싶으면 콤마(,)로 구분해 준다. "Label ('ID')"처럼 괄호로 묶을 수 있다. "p"처럼 여러줄로 나뉜 경우도 괄호로 묶으면 하나의 value로 인식하게 할 수 있다.

그리고 JsonOutput을 사용하면 생성된 json을 이쁘게 출력할 수 있다.


- 참고
Groovy Goodness: Build JSON with JsonBuilder and Pretty Print JSON Text

핑백

덧글

  • 안녕하세요 2014/09/02 14:10 # 삭제 답글

    완전하게 이해가 되지는 않지만
    한번 적용해보고자 합니다~
    좋은 글 감사합니다. 담아갈게요~
댓글 입력 영역

Google AdSense (text/image)