fastjson将java对象与json字符串相互转换
1、pom.xml文件添加依赖
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.62</version> </dependency>
2、将对象转为json格式的字符串
注意:JSONobject.toJSONString(object xx) 将对象转为json格式的字符串,使用fastjson序列化对象时,在序列化的时候,fastjson会先利用反射找到对象类的所有get方法,接下来去掉get前缀,然后首字母小写,作为json的每个key值,而get方法的返回值作为value。添加到json中。
所以我们需要设置对象的set get方法
错误代码:
package com.testdemo; import com.alibaba.fastjson.JSONObject; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; public class FastJson1 { public static void main(String[] args) { Teacher t2 =new Teacher(20,"李四"); //将对象转为json字符串 System.out.println(JSONObject.toJSONString(t2)); } } @AllArgsConstructor @NoArgsConstructor class Teacher{ //年龄+姓名 int age; String name; } ===结果=== {}
正确代码:
通过@Data注解自动实现set get方法
public class FastJson1 { public static void main(String[] args) { Teacher t2 =new Teacher(20,"李四"); System.out.println(JSONObject.toJSONString(t2)); } } @Data @AllArgsConstructor @NoArgsConstructor class Teacher{ //年龄+姓名 int age; String name; } ==结果=== {"age":20,"name":"李四"}
posted on 2021-05-24 20:49 jesse_zhao 阅读(2397) 评论(0) 编辑 收藏 举报