这期内容当中小编将会给大家带来有关java中json的使用方法是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
josn: 一种数据传输格式,与开发语言无关,轻量级 一开始是javaScript的,但是后面比较流传,几乎所有语言都有相应的使用API |
Object---对象
使用花括号{}包含的键值对结构
Key必须是String类型,value为任何基本类型或者数据结构(对象,或者数组)
Array---数组
使用中括号[]来起始,并用逗号,来分隔元素
基本类型:
string number true false null
例如:
{ "name" :"王小二", "age": 22, "birthday" : "1990-12-1", 注意:json里没有Date这种时间的类型,所以用string;需要了解一下时间戳 "school" : "蓝翔", "major": ["理发","挖掘机"], "has_girlfriend":false, "car": null, "house": null, "commont": "这是一个注释"}注意:json中没有注释的写法,但是我们可以曲线救国
{ "id":"1", "author":{ "id":"1506200043", "name":"kylin", "gender":1 }, "major":["理发","挖掘机"]}
java对json有支持,在使用的时候需要引入以下包:
commons-beanutils.xxx.jar commons-collections.xxx.jar commons-lang.xxx.jar commons-logging.jar json-lib.xxx.jar ezmorph.xxx.jar
JSON字符串的常用生成方式:----------从后端发送给前端的数据
使用map来放key-value数据,然后转换成json对象--再转换成json字符串---再发送给前端
//map(javaObject)--->jsonObject---->jsonStr ----前端import net.sf.json.JSONObject;public void jsonStrByMap(){//构建map对象,并且把需要发送给前端的东西添加进入Mapparams=new HashMap<>();params.put("status","200");params.put("username","kylin");params.put("password","123456");params.put("sexy","male");params.put("userID","15062");//java对象变成json对象JSONObject jsonObject=JSONObject.fromObject(params);//json对象转换成json字符串String jsonStr=jsonObject.toString();System.out.println(jsonStr);}
使用javabean来构建json
User.javapublic class User { private String username; private String password;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}}//javabean---json对象---json字符串---->前端public void jsonStrByJavaBean(){//创建一个User对象User user=new User();user.setUsername("kylin");user.setPassword("123456");//java对象转换成json对象JSONObject jsonObject=JSONObject.fromObject(user);//json对象转换成json字符串String jsonStr=jsonObject.toString();System.out.println(jsonStr);}
从前端获取的数据------>转换成后端可以用的数据
json字符串转换成java对象
//前端传递过来的是json字符串,那么我们对这个字符串需要进行获取并且处理//json字符串-----json对象------java对象JSONObject jsonobject = JSONObject.fromObject(jsonStr);User user=(User)JSONObject.toBean(jsonobject,User.class);//然后就通过user对象来操作了String username=user.getUsername();String password=user.getPassword();
json字符串转换成map对象
JSONObject jsonobject = JSONObject.fromObject(jsonStr);Map params=(Map) jsonObject;//然后就可以通过map来操作了//判断是否有username字段和username字段if (params.containsKey("username")){ System.out.println(params.get("username"));}if (params.containsKey("password")){ System.out.println(params.get("password"));}
小结:
json是一种前后端的通信规范,上面介绍的是JSON(android SDK中的官方库);一般在移动客户端的时候使用,后续将会介绍GSON(谷歌的一个开源库),一般用于服务端后台的开发中,功能相对强大.
JSON库的总结:
功能:映射java对象和json字符串
通过Annotation注解来声明
支持自定义属性名称
支持包含或排除属性
支持自定义借口自己完成解析/生成过程
流程:
后端使用java编写json,
前端使用javascript直接对json字符串进行解析
android客户端使用json类来解析
上述就是小编为大家分享的java中json的使用方法是什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网行业资讯频道。