在前后端交互的过程中,常常会使用 JSON 字符串来进行数据传输。而在后端代码中,想要使用这些数据,就需要将其转换成实体对象。下面是一些转换 JSON 字符串的代码示例:
import com.fasterxml.jackson.databind.ObjectMapper; ObjectMapper objectMapper = new ObjectMapper(); // 创建 ObjectMapper 对象 String jsonStr = "{\"name\":\"张三\",\"age\":18}"; // 假设这是一个 JSON 字符串 try { // 将 JSON 字符串转换成实体对象 Student student = objectMapper.readValue(jsonStr,Student.class); System.out.println(student.getName()); // 输出“张三” System.out.println(student.getAge()); // 输出“18” } catch (IOException e) { e.printstacktrace(); }
以上代码展示了如何使用 Jackson 库将 JSON 字符串转换成实体对象。直接调用 ObjectMapper 的 readValue 方法,传入待转换的 JSON 字符串和实体对象的类型即可完成转换。
如果 JSON 字符串中含有嵌套的对象,也可以使用 Jackson 库来进行转换。以下代码示例中,假设 Student 类中还有一个地址对象,其包含省、市和街道信息:
public class Address { private String province; private String city; private String street; // 省略 getter 和 setter 方法 } public class Student { private String name; private int age; private Address address; // 省略 getter 和 setter 方法 } String jsonStr = "{\"name\":\"张三\",\"age\":18,\"address\":{\"province\":\"广东省\",\"city\":\"深圳市\",\"street\":\"XX街道\"}}"; try { Student student = objectMapper.readValue(jsonStr,Student.class); System.out.println(student.getAddress().getProvince()); // 输出“广东省” System.out.println(student.getAddress().getCity()); // 输出“深圳市” System.out.println(student.getAddress().getStreet()); // 输出“XX街道” } catch (IOException e) { e.printstacktrace(); }
可以看到,在 JSON 字符串中使用“{ }”来表示一个对象。而当某个属性值为对象时,只需要在“{ }”中再嵌套一个“{ }”即可表示嵌套对象。在转换时,Jackson 库会递归地将 JSON 字符串转换成实体对象,并在需要时创建实体对象的嵌套对象。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。