对象转换 json 字符串和 json转换对象的几种方式
生活随笔
收集整理的這篇文章主要介紹了
对象转换 json 字符串和 json转换对象的几种方式
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
參考網(wǎng)上的文章,做了一個(gè)關(guān)于json的總結(jié),進(jìn)行留存幫助以后閱讀,希望可以幫助到大家。
1、使用阿里巴巴的fastjson方式處理。
測試實(shí)體類
public class User {// 用戶編號private String userNo;// 用戶名字private String name;public String getUserNo() {return userNo;}public void setUserNo(String userNo) {this.userNo = userNo;}public String getName() {return name;}public void setName(String name) {this.name = name;}}pom文件
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.56</version></dependency>測試方法?
public static void main(String[] args) throws JSONException {User user = new User();user.setUserNo("1");user.setName("小明");// 對象轉(zhuǎn)成json字符串String jsonStr = JSON.toJSONString(user);System.out.println(jsonStr);//json字符串轉(zhuǎn)成對象User user1 = JSON.parseObject(jsonStr,User.class);System.out.println(user1.getName()); }2、使用org.json包對象轉(zhuǎn)換json字符串
<dependency><groupId>org.json</groupId><artifactId>org.json</artifactId><version>chargebee-1.0</version> </dependency>測試方法
public static void main(String[] args) throws JSONException {User user = new User();user.setUserNo("1");user.setName("小明");String json = new JSONObject(user).toString();System.out.println(json);// json字符串轉(zhuǎn)成對象JSONObject jsonObject = new JSONObject(json);String name = jsonObject.getString("name");String userNo = jsonObject.getString("userNo");User user1 = new User();user1.setName(name);user1.setUserNo(userNo);System.out.println(user1.getName()); }3、使用gson方式處理json字符串
<dependency><groupId>com.google.code.gson</groupId><artifactId>gson</artifactId><version>2.2.4</version> </dependency>測試方法
public static void main(String[] args) {User user = new User();user.setUserNo("1");user.setName("小明");Gson gson = new Gson();// 對象轉(zhuǎn)換json字符串String json = gson.toJson(user);System.out.println(json);//json字符串轉(zhuǎn)成對象User user1 = gson.fromJson(json,User.class);System.out.println(user1.getName()); }測試結(jié)果
{"userNo":"1","name":"小明"}4、Jackson
pom文件
<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.9.0</version></dependency>測試方法
?
public static void main(String[] args) {User user = new User();user.setUserNo("1");user.setName("小明");ObjectMapper mapper = new ObjectMapper();try {// 對象轉(zhuǎn)成json字符串String json = mapper.writeValueAsString(user);System.out.println(json);//json字符串轉(zhuǎn)成對象User user1 = mapper.readValue(json,User.class);System.out.println(user1.getName());} catch (JsonProcessingException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();} }5、Json-Lib
pom文件
<dependency><groupId>net.sf.json-lib</groupId><artifactId>json-lib</artifactId><version>2.4</version><classifier>jdk15</classifier></dependency>測試方法
public static void main(String[] args) throws JSONException {User user = new User();user.setUserNo("1");user.setName("小明");// 轉(zhuǎn)成json字符串JSONObject jsonObject = JSONObject.fromObject(user);String json = jsonObject.toString();System.out.println(json);// json字符串轉(zhuǎn)成對象JSONObject jsonObject1 = JSONObject.fromObject(json);User user1 = (User) JSONObject.toBean(jsonObject1, User.class);System.out.println(user1.getName());}?
總結(jié)
以上是生活随笔為你收集整理的对象转换 json 字符串和 json转换对象的几种方式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络流-SAP算法模板
- 下一篇: json字符串与json对象之间的转换