|
Json-lib ¤ÏJava¤ÇJSON·Á¼°¤ò¼è¤ê°·¤¦¤¿¤á¤Î¥é¥¤¥Ö¥é¥ê¤Ç¤¹¡£Java¥ª¥Ö¥¸¥§¥¯¥È<->JSON·Á¼°¤Îɽ¸½¤ÎÁê¸ßÊÑ´¹¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤¤Þ¤¹¡£ ¥¤¥ó¥¹¥È¡¼¥ë †https://sourceforge.net/project/showfiles.php?group_id=171425¤è¤ê¥Ð¥¤¥Ê¥ê¤ò¥À¥¦¥ó¥í¡¼¥É¤Ç¤¤Þ¤¹¡£¤Þ¤¿°Í¸¥é¥¤¥Ö¥é¥ê¤Ïhttp://json-lib.sourceforge.net/dependencies.html ¤Ë¤¢¤ë¤È¤ª¤ê
¤Ê¤É¤Ç¤¹¡£ ¤¤¤í¤¤¤í¤ÊJava¥ª¥Ö¥¸¥§¥¯¥È¤òJSON·Á¼°¤Ç½ÐÎϤ·¤Æ¤ß¤ë †Json-lib¤ò»È¤Ã¤Æ¤¤¤í¤¤¤í¤ÊJava¥ª¥Ö¥¸¥§¥¯¥È¤òJSON·Á¼°¤Ç½ÐÎϤ·¤Æ¤ß¤Þ¤·¤¿¡£ ÇÛÎó¤ò½ÐÎϤ·¤Æ¤ß¤ë †boolean[] boolArray = new boolean[] { true, false, true };
JSONArray jsonArray = JSONArray.fromObject(boolArray);
System.out.println(jsonArray);
·ë²Ì [true,false,true] ¥¡¼¤ò»ý¤¿¤Ê¤¤ÇÛÎó¤Ï¤³¤Î¤è¤¦¤Ëµ½Ò¤¹¤ë¤ó¤Ç¤¹¤Í¡£ ¥ê¥¹¥È¤ò½ÐÎϤ·¤Æ¤ß¤ë † List list = new ArrayList();
list.add("first");
list.add("second");
JSONArray jsonArray = JSONArray.fromObject(list);
System.out.println(jsonArray);
·ë²Ì ["first","second"] ÇÛÎó¤ÈƱ¤¸¤Ç¤¹¤Í¡£Åö¤¿¤êÁ°¤Ç¤¹¤¬¡£ Map¤ò½ÐÎϤ·¤Æ¤ß¤ë †Map map = new HashMap();
map.put("name", "json");
map.put("bool", Boolean.TRUE);
map.put("int", new Integer(1));
map.put("arr", new String[] { "a", "b" });
map.put("chars", new char[] { 'a', 'b' });
·ë²Ì {"chars":["a","b"],"arr":["a","b"],"int":1,"name":"json","bool":true}
µ½Ò¤¬¥Í¥¹¥È²½¤µ¤ì¤Æ¤¤¤Þ¤Æ¡¢¤µ¤é¤Ë{"key":"value"}¤È¤¤¤¦¹½Â¤¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¤À¤ó¤À¤óJava¤Î¥ª¥Ö¥¸¥§¥¯¥Èɽ¸½¤Ë¶á¤¯¤Ê¤Ã¤Æ¤¤Þ¤·¤¿¡£ Java¥ª¥Ö¥¸¥§¥¯¥È¤ò½ÐÎϤ·¤Æ¤ß¤ë †ÂоݤÎJava¤Î¥â¥Ç¥ë¤ÏUser,Customer¤È¤¤¤¦Hibernate/¥Þ¥Ã¥Ô¥ó¥°ÄêµÁ¤Ë¤Ä¤¤¤Æ¤Ç½ñ¤¤¤¿¥â¥Ç¥ë¤ò»ÈÍѤ·¤Þ¤¹¡£ User user = new User();
user.setName("¥æ¡¼¥¶£±");
user.setAddress("ÅìµþÅÔ¹¾Åì¶è");
Customer c1 = new Customer();
c1.setName("¸ÜµÒ£±");
Customer c2 = new Customer();
c2.setName("¸ÜµÒ£²");
Set<Customer> set = new HashSet<Customer>();
set.add(c1);
set.add(c2);
user.setCustomers(set);
JSONObject jsonObject = JSONObject.fromObject(user);
System.out.println(jsonObject);
·ë²Ì { "customers":[
{"user":null,"name":"¸ÜµÒ£±","id":0},
{"user":null,"name":"¸ÜµÒ£²","id":0}
],
"address":"ÅìµþÅÔ¹¾Åì¶è",
"name":"¥æ¡¼¥¶£±",
"id":0
} (À°·Á¤·¤Æ¤Þ¤¹)
Set¤ò»È¤Ã¤¿¥â¥Ç¥ëÆâ¤Î¥â¥Ç¥ëSet¤â¡¢¥Í¥¹¥È¹½Â¤¤òÍѤ¤¤Æ¤¦¤Þ¤¯É½¸½¤µ¤ì¤Æ¤¤¤Þ¤¹¤Í¡£ JSON·Á¼°¤Îʸ»úÎ󤫤éJSON¥ª¥Ö¥¸¥§¥¯¥È¤òÀ¸À®¤¹¤ë †¤¤¤Þ¤Þ¤Ç¤ÏJava¥ª¥Ö¥¸¥§¥¯¥È¤«¤éJSONObject¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òºîÀ®¤·¤Þ¤·¤¿¡£¤â¤Á¤í¤óJSON·Á¼°¤Îʸ»úÎ󤫤éJSONObject¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òºîÀ®¤¹¤ë¤³¤È¤â¤Ç¤¤Þ¤¹¡£ jsonObject = JSONObject
.fromString("{\"customers\":[{\"user\":null,\"name\":\"¸ÜµÒ£±\",\"id\":0},
{\"user\":null,\"name\":\"¸ÜµÒ£²\",\"id\":0}],
\"address\":\"ÅìµþÅÔ¹¾Åì¶è\",\"name\":
\"¥æ¡¼¥¶£±\",\"id\":0}"); //¤³¤³¤Ï°ì¹Ô¤Ç¡£
System.out.println(jsonObject);
·ë²Ì { "customers":[
{"user":null,"name":"¸ÜµÒ£±","id":0},
{"user":null,"name":"¸ÜµÒ£²","id":0}
],
"address":"ÅìµþÅÔ¹¾Åì¶è",
"name":"¥æ¡¼¥¶£±",
"id":0
} (À°·Á¤·¤Æ¤Þ¤¹)
¡ï¤Ç¥¨¥¹¥±¡¼¥×¤·¤Æ¤ë¤Î¤Ç¤ï¤«¤ê¤Ë¤¯¤¤¤Ç¤¹¤¬¤µ¤Ã¤¤ÎJava¥â¥Ç¥ë¤ÎJSON·Á¼°¤ò°ú¿ô¤ËÅϤ·¤Æ¡¢JSONObject¥¤¥ó¥¹¥¿¥ó¥¹¤òºîÀ®¤·¤Æ¤¤¤Þ¤¹¡£ 2009/03/18Äɵ †µ×¤·¤Ö¤ê¤Ë¿¨¤Ã¤Æ¤ß¤¿¤é¡¢¥â¥¸¥å¡¼¥ë¤¬¿§¡¹¥Ð¡¼¥¸¥ç¥ó¥¢¥Ã¥×¤·¤Æ¤ë¤ß¤¿¤¤¤Ç¤¹¤Í¡£º£¿¨¤Ã¤Æ¤ë¤Î¤Ï¡¢2.2.3¤Ê¤Î¤Ç¤¹¤¬¡¢JSONObject#fromString ¤Ï¤Ê¤¯¤Ê¤Ã¤Æ¤ë¤è¤¦¤Ç¡¢ JSONObject jsonObject = JSONObject.fromObject(json); ¤ò»ÈÍѤ¹¤ë¤è¤¦¤Ç¤¹¡£ JSON·Á¼°¤Î¥ª¥Ö¥¸¥§¥¯¥È¤«¤é¡¢Java¥ª¥Ö¥¸¥§¥¯¥È¤òÉü¸µ¤¹¤ë †Java¥ª¥Ö¥¸¥§¥¯¥È¤«¤éJSON·Á¼°¤ËÊÑ´¹¤¹¤ë¤³¤È¤Ï¤Ç¤¤Þ¤·¤¿¤¬¡¢µÕ¤ËJSON·Á¼°¤Îʸ»úÎ󤫤éJava¥ª¥Ö¥¸¥§¥¯¥È¤òÉü¸µ¤¹¤ë¤³¤È¤â¤Ç¤¤Þ¤¹¡£ÂоݤΥâ¥Ç¥ë¤ò public class BeanA {
private boolean bool;
private int integer;
private String str;
public boolean isBool() { return bool; }
public int getInteger() { return integer; }
public String getString() { return str; }
public void setBool(boolean bool) { this.bool = bool; }
public void setInteger(int integer) { this.integer = integer; }
public void setString(String str){ this.str=str; }
}
¤È¤·¤Þ¤¹¡£¤³¤Î¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òJSON·Á¼°¤Îʸ»úÎ󤫤é¼èÆÀ¤¹¤ë¤Ë¤Ï°Ê²¼¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£ String json = "{bool:true,integer:1,string:\"json\"}";<-JSON·Á¼°¤Îʸ»úÎó
JSONObject jsonObject = JSONObject.fromString(json);
System.out.println(jsonObject);
BeanA bean = (BeanA) JSONObject.toBean(jsonObject, BeanA.class); <-¤³¤ì
System.out.println(bean.getInteger());
System.out.println(bean.getString());
System.out.println(bean.isBool());
·ë²Ì {"string":"json","integer":1,"bool":true}
1
json
true
¤³¤Î¤è¤¦¤Ë JSONObject.toBean([JSONObject¤Î¥¤¥ó¥¹¥¿¥ó¥¹], [Éü¸µ¤·¤¿¤¤¥ª¥Ö¥¸¥§¥¯¥È].class); ¥á¥½¥Ã¥É¤Ç¥¤¥ó¥¹¥¿¥ó¥¹¤ò¼èÆÀ¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£ ¥³¥ó¥Æ¥ó¥Ä°ìÍ÷ †
¤³¤Îµ»ö¤Ï
¸½ºß¤Î¥¢¥¯¥»¥¹:42510 |