热门关键字:
jquery > jquery教程 > jquery教程 > 要构建一个User对应的对象,应该怎么做?

要构建一个User对应的对象,应该怎么做?

422
作者:管理员
发布时间:2021/5/18 17:31:43
评论数:0
转载请自觉注明原文:http://www.jq-school.com/Show.aspx?id=4734
  现在Json的主要用途是用来存储和交换信息的语法。用大白话来说,就是存储数据,数据存储好了之后可以用来传输。Json相比Xml占用的空间会更小,在网络上传输相同的数据,速度会更快。所以说,我们现阶段基于Http请求的开发,Json是非常常用的。


  数据在名称/值对重,也就是数据由键值对构成。键必须在引号中,在标准的Json语法中,键必须在双引号中。但是在javascript代码中编写json的时候,这个引号可以不加,也可以是单引号。多个键值对用英文逗号分开。花括号保存对象,使用{}来定义Json格式。如果是数组,那么保存在[]中。


  数字字符串(在双引号中)逻辑值,true/false数组,在方括号中["java","php","golang","javascript",…]对象(在花括号中),比如{"address":{"province":"四川", "city":"成都"}}


  我们可以通过三种放来获取Json对象中的数据:


  json对象。键名 : 这个是最常用的方式json对象["键名"]如果json对象是一个数组,那么可以通过[index]的方式来获取。


  为什么要把Json和JavaBean相互转换?其实,我们使用Json就是Json作为数据载体,在网络上传输。既然要传输,那肯定就涉及到我们把Json传给服务器端,而我们的服务器端的程序使用Java来写的。然后服务器端的数据载体是JavaBean,所以我们需要把Json转化为JavaBean。我们服务器端生成的数据也涉及到响应给客户端,这个也需要我们把JavaBean转成Json。


  我们再做JavaBean和Json相互转换的时候,我们可以自己写代码来判断JavaBean有哪些属性,然后,我们自己拼接字符串,这个是没有问题的。不过这种方式真的是很麻烦。现在常用的方式是我们使用Json解析器来做解析。不过我们要自己来写一个Json解析器也不是不可以,但是技术瓶颈还是比较高的。一般情况下我们不会自己写Json解析器,我们直接就用别人写好了的开源的Json解析器。


  一般情况下,常用的Json解析器有如下几种:


  JsonLib:官方的Json接口的一个实现类


  Gson:谷歌提供的高效率的Json解析器


  Fastjson:阿里巴巴为我们提供的高性能的Json解析器


  Jackson:Spring mvc框架内置的一个Json解析器,我们今天就学习它。


  案例:我们编写一个User的JavaBean然后转化成为Json


  1,通过maven引入对应的Jar包:


  2,编写我们的User类:


  3,构建User类的一个实例对象,并且转换


  上面我们通过writeValueAsString实现了把JavaBean转化成为Json对象。其实Jackson还给我们提供了三个方法,让我们可以把转换之后的对象输出到指定的位置。


  writeValue(File file, Object o):将对象转化成为Json之后,输出到对应的本地文件上。writeValue(Writer writer, Object o):将对象转化成了Json字符串之后,写入到一个字符输出流中。wirteValue(OutputStream out, Object o):将对象转化成了Json字符串之后,写入到一个字节输出流中。


  这里我们重点给大家介绍一下两个注解:


  1,@JsonIgnore:排除属性。就是我们把JavaBean转化成Json的时候


  2,@JsonFormat:属性值的格式化


  1,我们实现json转User对象:


  如果我们的json是一个数组,我们要转化成List<user>,怎么办?


  如果我们是Json转Map怎么办?


  jsp页面通过发送请求服务器端,通过用户名获取一个用户,然后再页面上展示。全程Json交互。


  1,编写一个Servlet可以通过用户名来获取一个用户:


  2,编写交互的jsp页面:




如果您觉得本文的内容对您的学习有所帮助:支付鼓励



关键字:jquery
友荐云推荐