1      JSON Library Dependency  설정

다음과 같이 http://search.maven.org/ 리포지터리로 부터 POM 설정한다.

        <!-- JSON Utility -->

        <dependency>

            <groupId>net.sf.json-lib</groupId>

            <artifactId>json-lib</artifactId>

            <version>2.4</version>

            <classifier>jdk15</classifier>

        </dependency>

** classifier 지정하지 않는경우 missing artifact오류가 나서 다운로드가 받아지지 않아서 추가로 설정 하였다.

 

 

그림과 같이 json-lib-2.4-jdk15.jar 파일이 설정되었는지 확인한다.

 

JSON 관련 많은 라이브러리들이 있겠지만http://json-lib.sourceforge.net/ 라이브러리가 일반적으로 많이 사용되어 지는것 같다. 필요한 경우 웹싸이트에서 문서를 참고할것.

 

2      Java Object à JSON Object 전환

package net.sf.code;

 

import java.util.ArrayList;

import java.util.HashMap;

import java.util.Map;

 

import net.sf.json.JSONObject;

 

public class FileToJson {

 

                /**

                 * @param args

                 */

                public static void main(String[] args) {

                                // TODO Auto-generated method stub

                               

                               

                                Map<String, Object> model = new HashMap<String, Object>();                                                                                               

                                ArrayList<Map<String, String>> list = new ArrayList<Map<String,String>>();                                                         

                                Map<String, String> node;

                                node = new HashMap<String, String>();

                                node.put("blogurl", "1");

                                node.put("bloguser", "2");

                                node.put("blogpass", "3");

                                node.put("blogid", "4");

 

list.add(node);                   

 

                                node = null;

                                                                                                               

model.put("list", list);         

                               

JSONObject jsonObject = JSONObject.fromObject(model);                       

                                System.out.println(jsonObject);                       

                }

 

}

 

위의 결과는 다음과 같이 JSON형태로 출력이 될것이다.

     {"list":[{"bloguser":"2","blogpass":"3","blogid":"4","blogurl":"1"}]}       

 

 

 

3      JSON Object à Java Object

 

package net.sf.code;

 

import java.lang.reflect.InvocationTargetException;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.Map;

 

import org.apache.commons.beanutils.BeanUtils;

 

import net.sf.json.JSONObject;

 

public class FileToJson {

 

                /**

                 * @param args

                 * @throws NoSuchMethodException

                 * @throws InvocationTargetException

                 * @throws IllegalAccessException

                 */

                @SuppressWarnings("unchecked")

                public static void main(String[] args) throws IllegalAccessException, InvocationTargetException,

                                                                                               NoSuchMethodException {

                                // TODO Auto-generated method stub

                                                               

                                String fileContent = "{\"list\":[{\"bloguser\":\"2\",\"blogpass\":\"3\",\"blogid\":\"4\",\"blogurl\":\"1\"}]}";

                               

                                Map<String, Object> classMap = new HashMap<String, Object>();                                                          

                                JSONObject jsonObject = JSONObject.fromObject(fileContent);               

                                //fileContent String 형태의 JSON 넣는다            

                                Map<String, Object> model = (Map<String, Object>)JSONObject.toBean(jsonObject, java.util.HashMap.class, classMap);

                               

                                ArrayList<Object> nodeList = (ArrayList<Object>) model.get("list");

                                for(Object obj: nodeList){

                                               

                                                Map<String, String> mp = BeanUtils.describe(obj);

                                               

                                                System.out.println( mp.get("bloguser") );

                                                System.out.println( mp.get("blogpass") );

                                                System.out.println( mp.get("blogid") );

                                                System.out.println( mp.get("blogurl") );

                                                System.out.println( "" );

                                }

                               

                }

 

}

 

 

4      Javascript JSON관련 설정 예제

http://www.json.org/ 에서 JSON 자바스크립트 라이브러리(json2.js) 받아 페이지에 설정한다.

 

 

JSON.parse() , toJSONString()

 

var result = "{\"a\":0, \"b\":1000, \"c\":\"abc\"}";

var obj = JSON.parse(result);

console.log(obj.a + ", " + obj.b+ ", " + obj.c);    // returns "0, 100, abc"

console.log(obj.toJSONString());                         // returns {"a":0,"b":1000,"c":"abc"} 

 

 

 

JSON 설정 및 활용.docx

'Java Tools & Utils' 카테고리의 다른 글

POM J2EE 라이브러리 추가  (0) 2013.03.10
이클립스와 Maven 기반의 Spring 설정  (0) 2013.03.06
Unit Test with Easy Mock  (0) 2013.02.26
Posted by Steven J.S Min
,