¤³¤Î¥Ú¡¼¥¸¤òdel.icio.us¤ËÄɲà ¤³¤Î¥Ú¡¼¥¸¤ò¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ËÄɲ䳤Υڡ¼¥¸¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯ ¤³¤Î¥Ú¡¼¥¸¤òlivedoor ¥¯¥ê¥Ã¥×¤ËÄɲà ¤³¤Î¥Ú¡¼¥¸¤òYahoo!¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ËÄɲ䳤Υڡ¼¥¸¤ò´Þ¤àYahoo!¥Ö¥Ã¥¯¥Þ¡¼¥¯
Top / JSON / Json-lib¤ò»È¤¦

Json-lib ¤ÏJava¤ÇJSON·Á¼°¤ò¼è¤ê°·¤¦¤¿¤á¤Î¥é¥¤¥Ö¥é¥ê¤Ç¤¹¡£Java¥ª¥Ö¥¸¥§¥¯¥È<->JSON·Á¼°¤Îɽ¸½¤ÎÁê¸ßÊÑ´¹¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¥¤¥ó¥¹¥È¡¼¥ë

https://sourceforge.net/project/showfiles.php?group_id=171425¤è¤ê¥Ð¥¤¥Ê¥ê¤ò¥À¥¦¥ó¥í¡¼¥É¤Ç¤­¤Þ¤¹¡£¤Þ¤¿°Í¸¥é¥¤¥Ö¥é¥ê¤Ïhttp://json-lib.sourceforge.net/dependencies.html ¤Ë¤¢¤ë¤È¤ª¤ê

  • commons-beanutils 1.7.0
  • commons-lang 2.2
  • ezmorph 0.9.2
  • xom 1.1
  • junit 3.8.1(¥ª¥×¥·¥ç¥ó)
  • oro 2.0.8(¥ª¥×¥·¥ç¥ó)

¤Ê¤É¤Ç¤¹¡£

¤¤¤í¤¤¤í¤Ê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);

¥á¥½¥Ã¥É¤Ç¥¤¥ó¥¹¥¿¥ó¥¹¤ò¼èÆÀ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¥³¥ó¥Æ¥ó¥Ä°ìÍ÷


¤³¤Îµ­»ö¤Ï

ÁªÂò»è Åêɼ
¤ª¤â¤·¤í¤«¤Ã¤¿ 48  
¤½¤¦¤Ç¤â¤Ê¤¤ 13  
  • ¤Ï¤¸¤á char[]¤ÇÎã³°¤È¤Ê¤ê¡¢¥×¥ê¥ß¥Æ¥£¥Ö¤ÎÇÛÎó¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Ê¤¤¡©¤È»×¤Ã¤¿¤Î¤Ç¤¹¤¬¡¢¥À¥¦¥ó¥í¡¼¥É¤·¤¿commons-lang¤¬¸Å¤¤¤À¤±¤Ç¤·¤¿¡£ºÇ¿·ÈǤÏOK¤Ç¤·¤¿¤Í -- ¤­¤Î? 2006-12-30 18:36:36 (ÅÚ)

¤³¤Î¥Ú¡¼¥¸¤òdel.icio.us¤ËÄɲà ¤³¤Î¥Ú¡¼¥¸¤ò¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ËÄɲ䳤Υڡ¼¥¸¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯ ¤³¤Î¥Ú¡¼¥¸¤òlivedoor ¥¯¥ê¥Ã¥×¤ËÄɲà ¤³¤Î¥Ú¡¼¥¸¤òYahoo!¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ËÄɲ䳤Υڡ¼¥¸¤ò´Þ¤àYahoo!¥Ö¥Ã¥¯¥Þ¡¼¥¯
Top / JSON / Json-lib¤ò»È¤¦

¸½ºß¤Î¥¢¥¯¥»¥¹:42510


¥È¥Ã¥×   ÊÔ½¸ Åà·ë º¹Ê¬ ¥Ð¥Ã¥¯¥¢¥Ã¥× źÉÕ Ê£À½ ̾Á°Êѹ¹ ¥ê¥í¡¼¥É   ¿·µ¬ °ìÍ÷ ñ¸ì¸¡º÷ ºÇ½ª¹¹¿·   ¥Ø¥ë¥×   ºÇ½ª¹¹¿·¤ÎRSS
Last-modified: 2012-03-26 (·î) 09:57:28 (54d)