本文目录一览:
- 1、java如何创建Json文件?
- 2、如何使用java创建json对象
- 3、java后台如何生成.json文件
- 4、Java如何快速构造JSON字符串
- 5、怎么用java编写json文件
- 6、如何构建json串,并将map转为jsonObject对象的三种方式(scala)
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创建json对象
//将数据转换为Json
public static String createJsonString(String key, Object value) {
JSONObject jsonObject = new JSONObject();
jsonObject.put(key, value);
return jsonObject.toString();
}
java后台如何生成.json文件
先生成map 然后用alibaba的fastjson,附件中的这个包,里头有你意想不到的API
例如:
Map map = ......;
map的结构和要生成的字符串结构一致就行,你的optionset在map里头的结构就是一个list
list optionset= new ArrayList();
Map temp = new HashMap();temp.put('set',xxx);temp.put('value',xxx);
list.add(temp);
....有多少个就添加多少,
然后把list添加到最外层的Map对象中;
map.put('optionset',list); key就是json字符中对应的key
拼装好了map然后就是下一句就搞定了
String josnStr = JSONObject.toJSONString(map);
Java如何快速构造JSON字符串
Google Gson来构造的JSON字符串里面,保留了传递参数key/value的顺序;
FastJson没有保留顺序(这个是符合JSON国际标准的,本身没有错误。是SugarCRM REST API有bug,要求传递过来的参数是按照它的顺序要求的)。
Google Gson代码片段:
import com.google.gson.Gson;
...
LinkedHashMap map = new LinkedHashMap();
map.put(f1,xxx);
map.put(f2,xxxx);
map.put(f3,xxxxx);
Gson gson = new Gson();
String json = gson.toJson(map);,,
Alibaba FastJson代码片段:
import com.alibaba.fastjson.JSONObject;
JSONObject jsonObject = new JSONObject();
jsonObject.put(f1, xxx);
jsonObject.put(f2, xxx);
String json = jsonObject.toJSONString();
怎么用java编写json文件
先生成map 然后用alibaba的fastjson,附件中的这个包,里头有你意想不到的API
例如:
Map map = ......;
map的结构和要生成的字符串结构一致就行,你的optionset在map里头的结构就是一个list
list optionset= new ArrayList();
Map temp = new HashMap();temp.put('set',xxx);temp.put('value',xxx);
list.add(temp);
....有多少个就添加多少,
然后把list添加到最外层的Map对象中;
map.put('optionset',list); key就是json字符中对应的key
拼装好了map然后就是下一句就搞定了
String josnStr = JSONObject.toJSONString(map);
如何构建json串,并将map转为jsonObject对象的三种方式(scala)
众所周知,kafka中存储的数据是经过BASE64加密后的jsonObject,因此从kafka中读取的数据经过base64解码,得到的是json串,利用JSONObect的方法可以对json串进行解析,拿到对应的数据。那么要如何将scala对象或者java对象转换为JsonObject对象或JSONObject对象呢?(注意:JsonObject对象和JSONObject对象不同,调用的API也不一样)
三种转换方式依赖的包源码都是用JAVA编写,所以构建Map对象时完全使用java对象,不会发生错误。构建过程如下:
三种将java对象转换为jsonObject对象的开源包有:
1、google提供的Genson是一个完全的Java和JSON转换的类库,提供了全面的数据绑定、流操作等。基于Apache 2.0协议发布。转换结果为
JsonObject对象。
使用需要先导入Jar包:import com.google.gson.{Gson, JsonParser}
引入依赖:这里选用版本为:2.2.4,具体版本可以根据业务需求选择。
dependency
groupIdcom.google.code.gson/groupId
artifactIdgson/artifactId
version2.2.4/version
/dependency
2、Fastjson 是一个 Java 库,可以将 Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象。
导入jar包:import com.alibaba.fastjson.JSON
引入依赖:
dependency
groupIdcom.alibaba/groupId
artifactIdfastjson/artifactId
version1.2.8/version
/dependency
3、net.sf.json-lib方式
导入jar包:import net.sf.json.JSONObject
引入依赖:
dependency
groupIdnet.sf.json-lib/groupId
artifactIdjson-lib-ext-spring/artifactId
version1.0.2/version
/dependency