json动态生成java类(json动态生成bean)

  • 1、如何根据json格式生成java bean对象
  • 2、有没有将json直接转换生成Java类的工具软件
  • 3、怎样把JSON对象快速的转成java对象
  • 4、如何从JSON数据创建Java类

1利用:json-lib-2.2.3-jdk13.jar2使用方法举例:JSONObject.fromObject(bean).toString()–返回{“aa”:”xx”,”bb”:”xxx”}(bean为java对象,有aa和bb两个字段,值分别为xx和xxx)JSONObject.fromObject(map).toString()–返回{“aa”:”xx”

使用Jackson可以将json转为Java对象,同样也可以将java对象转为json字符串,并且Spring框架内部也是使用的此jar。

实例:将json转为java对象

/*

    下面的id,name,age同是User实体类的属性

*/

// 将json转为Java对象

String json = “{\”id\”:1,\”name\”:\”张三\”,\”age\”:18}”;

ObjectMapper mapper = new ObjectMapper();

User user = mapper.readValue(json, User.class);、

// 将json转为Java数组对象

String json = “[{\”id\”:1,\”name\”:\”张三\”,\”age\”:18},{\”id\”:2,\”name\”:\”李四\”,\”age\”:18},{\”id\”:3,\”name\”:\”王五\”,\”age\”:18}]”;

ObjectMapper mapper = new ObjectMapper();

User[] users = mapper.readValue(json, User[].class);

推荐用google的gson库

example

json:

{ “x”: 2333, “y”: 3444 }

java code:

class Vector {    

    double x, y;

    public Vector(double _x, double _y) {

        x = _x;

        y = _y;

    }

    

    @Override

    public String toString() {

        return “(” + x + “,” + y + “)”;

    }

}

deserialization code:

String json = …;

Gson gson = new GsonBuilder().create(); //创建一个gson对象

Vector res = gson.fromJson(json, Vector.class);

System.out.println(res);

 (2333, 3444)

Gson是一个很强大的json库。除了直接对对象进行序列化和反序列化以外,你也可以通过它的stream API进行更高速的读写,通过自定义TypeAdapter指定序列化的格式等。

更多的参考:

如果聊天数据的结构是固定的或变化不大的。

就直接“编排”json字符串。

为要输出的对象增加一个String toJSON()方法

StringBuilder b=new StringBuilder();

b.append(“{ name:\””);

b.append(username);

b.append(“\”}”);

依次类推

return b.toString();

原创文章,作者:OASBL,如若转载,请注明出处:https://www.506064.com/n/127300.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
OASBL的头像OASBL
上一篇 2024-10-03 23:13
下一篇 2024-10-03 23:13

相关推荐

发表回复

登录后才能评论