java中json的使用方法是什么

这期内容当中小编将会给大家带来有关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.java
public 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字符串

  1. 通过Annotation注解来声明

  2. 支持自定义属性名称

  3. 支持包含或排除属性

  4. 支持自定义借口自己完成解析/生成过程

流程:

  1. 后端使用java编写json,

  2. 前端使用javascript直接对json字符串进行解析

  3. android客户端使用json类来解析

上述就是小编为大家分享的java中json的使用方法是什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/207031.html

(0)
上一篇 2021年12月3日
下一篇 2021年12月3日

相关推荐

发表回复

登录后才能评论