广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州Java普通对象和Json字符串如何互转?_北大青鸟IT学校

作者:邓华发布时间:2021-06-10分类:Java技术浏览:1286


导读:Java是现在非常主流的编程语言之一,很多人想转行学习IT,首选Java语言。那么,Java普通对象和Json字符串如何互转?下面就让我们一起来看看惠州北大青鸟老师是怎么回答的。

Java是现在非常主流的编程语言之一,很多人想转行学习IT,首选Java语言。那么,Java普通对象和Json字符串如何互转?下面就让我们一起来看看惠州北大青鸟老师是怎么回答的。

java对象--》》字符串

java普通对象指的是java中的一个java bean,即一个实体类,如,

  1. package com.cn.study.day3;

  2. public class Student {

  3. //姓名

  4. private String name;

  5. //年龄

  6. private String age;

  7. //住址

  8. private String address;

  9. public String getName() {

  10. return name;

  11. }

  12. public void setName(String name) {

  13. this.name = name;

  14. }

  15. public String getAge() {

  16. return age;

  17. }

  18. public void setAge(String age) {

  19. this.age = age;

  20. }

  21. public String getAddress() {

  22. return address;

  23. }

  24. public void setAddress(String address) {

  25. this.address = address;

  26. }

  27. @Override

  28. public String toString() {

  29. return "Student [name=" + name + ", age=" + age + ", address="

  30. + address + "]";

  31. }

  32. }

上面是我的一个普通的java实体类,看json-lib如何把它转化为字符串形式,

  1. public static void convertObject() {

  2. Student stu=new Student();

  3. stu.setName("JSON");

  4. stu.setAge("23");

  5. stu.setAddress("北京市西城区");

  6. //1、使用JSONObject

  7. JSONObject json = JSONObject.fromObject(stu);

  8. //2、使用JSONArray

  9. JSONArray array=JSONArray.fromObject(stu);

  10. String strJson=json.toString();

  11. String strArray=array.toString();

  12. System.out.println("strJson:"+strJson);

  13. System.out.println("strArray:"+strArray);

  14. }

我定义了一个Student的实体类,然后分别使用了JSONObject和JSONArray两种方式转化为JSON字符串,下面看打印的结果,

strJson:{"address":"北京市西城区","age":"23","name":"JSON"} strArray:[{"address":"北京市西城区","age":"23","name":"JSON"}]

从结果中可以看出两种方法都可以把java对象转化为JSON字符串,只是转化后的结构不同。

JSON字符串--》》java对象

上面说明了如何把java对象转化为JSON字符串,下面看如何把JSON字符串格式转化为java对象,

首先需要定义两种不同格式的字符串,需要使用\对双引号进行转义,

  1. public static void jsonStrToJava(){

  2. //定义两种不同格式的字符串

  3. String objectStr="{\"name\":\"JSON\",\"age\":\"24\",\"address\":\"北京市西城区\"}";

  4. String arrayStr="[{\"name\":\"JSON\",\"age\":\"24\",\"address\":\"北京市西城区\"}]";

  5. //1、使用JSONObject

  6. JSONObject jsonObject=JSONObject.fromObject(objectStr);

  7. Student stu=(Student)JSONObject.toBean(jsonObject, Student.class);

  8. //2、使用JSONArray

  9. JSONArray jsonArray=JSONArray.fromObject(arrayStr);

  10. //获得jsonArray的第一个元素

  11. Object o=jsonArray.get(0);

  12. JSONObject jsonObject2=JSONObject.fromObject(o);

  13. Student stu2=(Student)JSONObject.toBean(jsonObject2, Student.class);

  14. System.out.println("stu:"+stu);

  15. System.out.println("stu2:"+stu2);

  16. }

打印结果为:

stu:Student [name=JSON, age=24, address=北京市西城区] stu2:Student [name=JSON, age=24, address=北京市西城区]

从上面的代码中可以看出,使用JSONObject可以轻松的把JSON格式的字符串转化为java对象,但是使用JSONArray就没那么容易了,因为它有“[]”符号,所以我们这里在获得了JSONArray的对象之后,取其第一个元素即我们需要的一个student的变形,然后使用JSONObject轻松获得。

想了解更多关于Java的资讯,可以来惠州北大青鸟新方舟校区了解一下。

Java14.png

Java

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表