您的位置:

java创建jsonnode,Java创建对象

java创建jsonnode,Java创建对象

更新:

本文目录一览:

java中json对象是如何创建或者转换出来的

JSONObject在JAVA中其实就相当于Map, 可以通过key取到值;

而JAVA对象,一般是JAVA中的model或者domain 模型对象, 这种对象代表的是一个业务的模型,是有明确的意义的, 包括里面的属性类型都是明确定义;

转换成对象之后,操作其中的值就可以用getter,setter方法明确指定,

一般其他人使用的时候也能知道里面有什么,而如果只有一个JSONObject, 使用的时候除了先在控制台输入里面的内容是不知道里面有什么的,

并不适合在JAVA方法中的数据传递使用

在 java web开发中怎么使用json?

一、JSON建构有两种结构:

json简单说就是javascript中的对象和数组,所以这两种结构就是对象和数组2种结构,通过这两种结构可以表示各种复杂的结构

1、对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,...}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。在Java中就是一种Map结构。

2、数组:数组在js中是中括号“[]”扩起来的内容,数据结构为 ["java","javascript","vb",...],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。在Java中是一种list结构。

经过对象、数组2种结构就可以组合成复杂的数据结构了。

二、Json in Javascript

使用Json语法创建对象

var people = {"name":"jack","sex":"mail"};

可以通过这种语法创建json对象,用“{}”括起来,用“,”隔开key:value

使用Json语法创建数组

var arr =[value1,value2...];

一个包含多个people的数组 peoples = [{"name":"jack","sex":"mail"},

"name":"lily","sex":"femail"};

Json数组可以通过这种语法创建,用"[]"括起来,数组元素之间用“,”分隔开,下面是这种语法的示意图:

在使用Json格式字符串与服务器交互时候,可以利用Json扩展的方法将字符串转换成一个JavaScript对象,或者将一个对象转换成Json格式字符串。不过先要登录下载Json2.js文件。引入该包后,js对象直接用toJSONString()装换为字符串格式,字符串可以用parseJSON()转换成js对象。

访问数据

只需用点号表示法来表示数组元素。所以,要想访问 上面peoples列表的第一个条目的名字,只需在 JavaScript 中使用下面这样的代码:

peoples[0].name

利用这样的语法,可以处理任何 JSON 格式的数据,而不需要使用任何额外的 JavaScript 工具包或 API。

修改数据

正如可以用点号和方括号访问数据,也可以按照同样的方式轻松地修改数据:

peoples[0].name = "Rachmaninov";

在将字符串转换为 JavaScript 对象之后,就可以像这样修改变量中的数据。

java如何创建Json文件?

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

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

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

StringBuilder b=new StringBuilder();

b.append("{ name:\"");

b.append(username);

b.append("\"}");

依次类推

return b.toString();

适合绝大多数情况。

补充:json是做交换格式,查询效率非常低,如果做存储的检索格式就误用了。

就是说“聊天信息的保存用json应该可以吧”还不如你之前的mysql数据库。

json用在客户端往服务端发送的通讯交换数据的格式上。服务端收到后转为数据库中或内存中存放。

如何用java递归生成带children的json串

先递归出一个

node对象,再将node对象转换成json串。直接进行字符串的json操作不建议。

class

Node{

private

String

id;

private

String

parentId;

private

ListNode

children;

public

void

addChildren(Node

child){

getChildren().add(child);

}

public

ListNode

getChildren();

public

String

transformTojson(Node

node

,StringBuffer

jsonStr){

//递归

if(jsonStr

==null){

StringBuffer

jsonStr=new

();

}

if(node.id!=null){

//拼接父节点json串

jsonStr.append(id:node.id,children:#children);

}

List

childNodeList

=

node.getChildren();

StringBuffer

childrenSB

=

new();

for(

Node

node

:childNodeList){

childrenSB=transformTojson(node);

}

sonStr.replaceFirst("#children",childrenSB);

return

jsonStr;

}

}

伪代码大概这样。

transformTojson方法可以不自己写,直接使用第三方工具jar包的json转化方法,比如gjson。