JSON의 문법은 자바스크립트에서 객체를 작성하는 문법과 동일하다. 우리는 자바스크립트에서 객체를 작성하는 작업을 해보지 않았지만 금방 이해할 수 있으리라 생각한다.
JSON에서 표현되는 데이터는 이름과 값의 한 쌍으로 구성된다. 필드명과 값은 ":"으로 구분하며 데이터와 데이터는 ","로 구분한다. 자바스크립트 객체는 name과 value를 ""로 구분하지 않지만 JSON은 ""를 이용하여 감싸주어야 한다. JSON의 value에는 숫자(정수나 부동소수점), 문자열, 불린값(true나 false), 배열([]), 오브젝트({}), null등을 사용할 수 있다.
각각의 필드를 모아 객체로 표현할 수 있으며 객체를 구분하는 기호는 "{ }"이며 JSON오브젝트 안에서 여러 개의 name과 value를 표현할 수 있다.
JSON에서도 자바스크립트 처럼 데이터들을 배열로 관리할 수 있으며 JSON의 배열은 "[ ]"로 구분한다. 배열은 여러 개의 오브젝트를 포함할 수 있다.
우선 자바스크립트 내부에서 객체로 JSON을 다뤄보도록 합시다.
1. AjaxTest의 WebContent에 "json"이라는 폴더를 작성합니다.
2. JSP를 했으니 HTML문서로 추가하지 말고 JSP문서를 추가합니다. 파일명은 "jsontest01.jsp"
3. 아래의 코드는 자바스크립트 내부에서 JSON을 정의하는 것이며 자바스크립트 객체 처럼 접근할 수 있다는 것을 확인하기 위한 예제입니다.<body>태그 내부에 <script>태그를 정의하고 다음과 같은 코드를 작성합니다.
- document.write를 이용하여 정의된 JSON의 값을 추출하여 웹 페이지에 출력하고 있습니
다.
- "var person = " 문장을 보면 {}로 묶어 놓은 JSON을 변수에 할당하고 있기 때문에
person변수를 통해 각각의 필드를 접근할 수 있는 것입니다.
- person.history[0].subject처럼 JSON의 배열을 표현하는 방법은 자바스크립트의 배열을 표
현하는 방법과 동일합니다.
4. 실행하면 다음과 같은 결과가 나타납니다.
5. 위와 같은 코드를 자바스크립트 객체로 변환하면 다음과 같습니다. "jsontest01.jsp"를 rename하여 "json_obj.jsp"로 변환한 후 작업합니다.
- JSON을 표현한 것과 동일하며 필드의 name만 ""를 없앴습니다. 결과는 동일하게 나타납니다.
'웹 > json' 카테고리의 다른 글
JSON Validator (0) | 2019.08.11 |
---|---|
자바에서 JSON객체 작성하기 (0) | 2019.08.11 |
자바스크립트에서 JSON파싱하기 (0) | 2019.08.11 |
JSON의 개요 (0) | 2019.08.11 |