JSON(JavaScript Object Notation)

자바 스크립트에서 객체를 만들때 사용함

 

프로그래밍언어가아닌 데이터포맷형태

Map과 같은 (key, value)형태를 지닌다

 

자료형은 Number, String, Boolean, Array, Object, NULL만 가능하다

 

JSON 메서드

  • JSON.stringify() : 인수로 받은 자바스크립트 객체를 문자열로 반환
  • JSON.parse() : 인수로 받은 문자열을 자바스크립트 객체로 반환
  • .toJSON() : 자바스크립트의 객체를 "JSON형식의 문자열"로 반환

JSON을 쓰기위해서는 pom.xml에 JSON라이브러리 의존성 추가를 해줄 필요가 있다

        <dependency>
            <groupId>com.googlecode.json-simple</groupId>
            <artifactId>json-simple</artifactId>
            <version>1.1</version>
        </dependency>

 

JSON.jar파일을 다운받아 라이브러리 추가로 추가 하는 방법도 존재한다 

 

JSON.stringify() 

<script>
	var member = {memberNum : 1,memberId : "ABC123",memberName : "KIM"};//자바스크립트 객체생성				 
	var data = JSON.stringify(member);//JSON으로 변환
	alert(data);
</script>

 

JSON.parse()

<script>
	var member = {
				 memberNum : 1,
				 memberId : "ABC123",
				 memberName : "KIM" 	
				 };
				 
	var data = JSON.stringify(member);//JSON객체로 변환
	var data = JSON.parse(data);//다시 자바스크립트 객체로 변환

</script>

 

.toJSON()

 

<script>
	var date = new Date();//현재 날짜 객체 생성
	alert(date);
	var result = JSON.stringify(date);//인수로 받은 자바스크립트 객체를 문자열로 반환
	alert(result);
	var result = date.toJSON();//자바스크립트의 객체의 데이터를 JSON형식의 문자열로 반환
	alert(result);
</script>

 

 

alert 결과

 

JSON형식의 문자열은 일반적인 문자열과 비교해 앞뒤에 ""가 붙는다

 

 

자바에서의 JSON 다루기

 

import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
    
    @SuppressWarnings("unchecked")//검증되지 않은 연산자 관련 경고 억제
	public JSONObject JSONStudy() {
		JSONObject obj1 = new JSONObject();//첫번째 JSON객체 생성
		obj1.put("memberNum", 1);
		obj1.put("memberId", "ABC123");
		
		
		JSONObject obj2 = new JSONObject();//두번째 JSON객체 생성
		obj2.put("memberNum", 1);
		obj2.put("memberId", "ABC123");
		obj2.put("memberName", "KIM");
		
		JSONArray memberList = new JSONArray();//JSON리스트 생성
		memberList.add(obj2);//JSON객체를 JSON리스트에 넣음, 메모리에서의 형태는 Bean을 리스트에 넣었을 때와 같음
		
		obj1.put("memberList", memberList);//JSON리스트를 첫번째 JSON객체에 넣음
		
		return obj1;
        }

 

+ Recent posts