关于2-7json转换问题

关于2-7json转换问题

在servlet的 JSON.toJSONString()方法,只是把java代码转换成了按照json对象显示的字符串形式,但是这个时候还不是JSON对象,对吧?这时候它让然是java字符串,只是显示的形式不一样了。

所以在HTML的js中。需要对这个以json形式显示的字符串,在通过JSON.parse 方法,转换成JSON对象,使JS对其可以进行使用?对吗?

引入了fastJson的包,是为了在java中,提供Java的java对象,也就是没有这个包,就是没有toJSONString,这个方法,对吧?不可以使其代码以JSON的形式表现出来的字符串。而JS的JSON是内置的,就是JSON对象。 

问题2:

  String json=JSON.toJSONString(employee); //转换成json形式的字符串,只能转换不为空的属性;

  System.out.println(json);

  //把json形式的字符串转成java对象,第一个属性是要转换的属性名称,第二个是要转换对应的类;

  Employee emp= JSON.parseObject(json,Employee.class);

  System.out.println(emp.getEname());

 


这个这个代码呢?  本身json就是JAVA的对象啊,只是变现形式是JSON的字符串,在转回JAVA形式的JAVA字符串吗?

问题3:

本次视频中的for循环:

     var html="";

         for( var i=0;i<json.length;i++){

         var news=json[i];  //去获取的信息进行赋值

         html="<h1>" + news.title+ "</h1>";

         html=html+"<h2>" + news.date+"&nbsp"+news.source+"&nbsp"+news.content+"</h2>";

         html=html+"<hr/>"

         }

为什么这样写只能输出一个html的信息呢?  第一个的html后面没有+html吧?下标=0,进行输出标题,然后赋值标题+内容,然后赋值标题+内容+分割线;然后下位=1,为什么就不可以执行了呢?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小脸 2021-03-22 15:12:48

同学你好,

1、

    1)这里JSON.toJSONString()方法是将对象转为json类型的数据,即JSON字符串

    2)是的,理解是正确的

    3)理解是正确的

    ​4)是的

2、JSON.parseObject()是将Json格式的字符串转换为Java对象

3、

    ​1)因为同学这里省略了如下html

    ​http://img1.sycdn.imooc.com//climg/6058434209221e8c07690098.jpg

这里的html是不能省略的,表示在之前html字符串的基础上连接后面的内容,再赋值给html这个变量。去掉后,html每次都是重新赋值,之前的数据就没有了。

    ​2)是需要加上的

    ​3)同 1)问

祝学习愉快~

  • 提问者 rock221 #1

    这里JSON.toJSONString()方法是将对象转为json类型的数据,即JSON字符串  ,老师视频中的说是这个本质上还是JAVA对象啊,只有js中的转换才是转成JSON对象阿,java中的这个是通过fastJSON,把代码改成了json格式的字符串,但不是json对象的字符串阿。 

    问题2:

    html不能省略是因为,进行第二次循环的时候,如果不把之前的显示出来,就被覆盖了。对吧?除非有多个变量。 

    2021-03-22 15:24:29
  • 好帮手慕小脸 回复 提问者 rock221 #2

    同学你好,

    1、课程中老师说的是JSON.toJSONString()方法可以将Java的对象或list进行JSON序列化,生成对应的字符串,而如下代码将list传入后返回的是Json类型的字符串

    http://img1.sycdn.imooc.com//climg/6058702509b7e7c404680033.jpg

    2、是的,重新赋值可以理解为覆盖,多条数据要展示时,省略了html,那么多个变量也没有意义哦,如果不是老师理解的意思,建议同学实践之后贴出代码

    祝学习愉快~

    2021-03-22 18:59:40
  • 提问者 rock221 回复 好帮手慕小脸 #3

    对象或list进行JSON序列化,这时候它不属于JSON对象把?,只是JSON的形式显示的字符串吧如果属于JSON对象,为什么在JS中又要进行转换成JSON对象呢?

    2021-03-22 22:07:08
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师