fastjsonの一般的な方法
4200 ワード
fastjsonで最もよく使われるのは
注:変換中に使用されるオブジェクトには、get/setメソッドとパラメトリックなし関数が必要です.
この方法を使用して、任意のオブジェクトをjson文字列に変換できます.
なお、上記の例では、
したがって
使用例:
JSON
クラスとJSONObject
クラスで、以下は1.2.35バージョンを例に、その簡単な使用を説明します.注:変換中に使用されるオブジェクトには、get/setメソッドとパラメトリックなし関数が必要です.
JSONクラス
JSON
のメソッドは基本的に静的メソッドであり、直接呼び出すことができる.そのすべての方法は2つの大きなクラスに分けることができます:1.オブジェクトをjson文字列に変換します.2.json文字列をオブジェクトに変換します.オブジェクト回転json文字列
public static String toJSONString(Object object)
この方法を使用して、任意のオブジェクトをjson文字列に変換できます.
User user = new User(" ","admin");
String json = JSON.toJSONString(user); // {"password":"admin","userName":" "}
Map map = new HashMap();
map.put("userName"," ");
map.put("password","admin");
String json = JSON.toJSONString(map);// {"password":"admin","userName":" "}
List userList = new ArrayList();
userList.add(new User(" ","admin"));
userList.add(new User(" 1","admin1"));
json = JSON.toJSONString(userList); //[{"password":"admin","userName":" "},{"password":"admin1","userName":" 1"}]
toJSONString
メソッドでは、日付をタイムスタンプに変換します.日付を指定したフォーマットの文字列に変換するには、toJSONStringWithDateFormat
を使用します.User user = new User(" ","admin",new Date());
json = JSON.toJSONStringWithDateFormat(user, "yyyy-MM-dd HH:mm:ss");
// {"birthday":"2017-08-11 11:13:19","password":"admin","userName":" "}
JSON
の中にはDEFFAULT_DATE_FORMAT
:public static String DEFFAULT_DATE_FORMAT = "yyyy-MM-dd HH:mm:ss";
があり、直接使用できます.JSON.toJSONStringWithDateFormat(user, JSON.DEFFAULT_DATE_FORMAT);
jsonオブジェクトシリアルオブジェクト
public static T parseObject(String text, Class clazz)
public static JSONObject parseObject(String text)
String json = JSON.toJSONString(new User(" ","admin")); // json
User user = JSON.parseObject(json, User.class);
System.out.println(user); //User{userName=' ', password='admin', birthday=null}
// Map map = JSON.parseObject(json,Map.class);
Map map = JSON.parseObject(json);
System.out.println(map); // {password=admin, userName= }
なお、上記の例では、
Map
に移行すると、2番目のパラメータをデフォルトで設定することができる.parseObject(String text)
はjson文字列をJSONObject
に変換し、JSONObject
はMap
を実現するので、Map
に直接変換することができる.JSOnObject類
JSON
を継承し、Map
:public class JSONObject extends JSON implements Map
を実現しました.したがって
JSON
の中のすべてのメソッドを呼び出すことができ、Mapのように使用することもできます.JSONObject
クラスはMap
オブジェクトを作成し、JSONObject
を操作すると、実際にはMap
のメソッドが呼び出される.public JSONObject(int initialCapacity, boolean ordered){
if (ordered) {
map = new LinkedHashMap(initialCapacity); //
} else {
map = new HashMap(initialCapacity); //
}
}
使用例:
JSONObject jsonObject = new JSONObject();
jsonObject.put("userName"," ");
jsonObject.put("password","admin");
System.out.println(jsonObject.toJSONString()); //{"password":"admin","userName":" "}
jsonObject = new JSONObject(true); // JSONObject
jsonObject.put("userName"," ");
jsonObject.put("password","admin");
System.out.println(jsonObject.toJSONString()); //{"userName":" ","password":"admin"}
User user = jsonObject.toJavaObject(User.class);
System.out.println(user); //User{userName=' ', password='admin', birthday=null}