实体转jsonobject(如何实现实体与json的转化)

本文目录
- 如何实现实体与json的转化
- 从mysql获取的日期:yyyy-mm-dd(实体类设为Date类型)转化成json对象后,显示的是[Object Object]
- java实体类中包含set集合 用JSonOcject转换为什么不行 java.lang.StackOverflowError 堆栈溢出
- 包含set集合的对象如何转为json
- java中一个实体中包含另一个实体 如何将这个实体转化为json格式
- C# 中Json转object,含有数组json转为 实体对象
如何实现实体与json的转化
在开发的过程中,会遇到实体与json格式转化以便符合微信接口需要的json格式以及请求接口获取的json转化为实体。我把一些公用的方法总结如下(特别说明:解析是用的flexJson):
import java.util.ArrayList;
import java.util.List;
import flexjson.JSONDeserializer;
import flexjson.JSONSerializer;
public class JsonUtil {
/**
* 对象转化为字符串
* @param obj 要转化为json字符串的实体
*/
public static String getJsonStrFromObj(Object obj) {
JSONSerializer serializer = new JSONSerializer();
return serializer.serialize(obj);
}
/**
* 对象转化为json字符串
* @param obj 实体
* @param inParams 包含的字段数组
* @param exparams 不需要包含的字段
*/
public static String getJsonStrFromObj(Object obj, String exParams) {
JSONSerializer serializer = new JSONSerializer();
serializer = serializer.include(inParams).exclude(exParams);
return serializer.serialize(obj);
}
/**
* 将对象转化为json字符串
* @param obj 实体
* @param exParams 不要包括的字段
*/
public static String getJsonStrFromObj(Object obj,String exParams) {
JSONSerializer serializer = new JSONSerializer();
serializer = serializer.exclude(exParams);
return serializer.serialize(obj);
}
/**
* 将List转化为json字符串
* @param objs list对象
* @return
*/
public static String getJsonStrFromList(List《Object》 objs){
return new JSONSerializer().exclude("class").serialize(objs);
}
/**
* 将List转化为json字符串
* @param objs list对象
* @param rootName 根名
* @param params 包括的字段
* @return
*/
public static String getJsonStrFromList(List《Object》 objs, String rootName,
String params) {
JSONSerializer serializer = new JSONSerializer();
serializer = serializer.include(params).exclude("class");
serializer.rootName(rootName);
return serializer.serialize(objs);
}
/**
* 将List转化为json字符串
* @param objs list对象
* @param rootName 根名
* @param params 包括的字段
* @return
*/
public static String getJsonStrFromList(List《Object》 objs, String rootName) {
JSONSerializer serializer = new JSONSerializer();
// serializer = serializer.exclude("class");
serializer.rootName(rootName);
return serializer.serialize(objs);
}
/**
* 将List转化为json字符串
* @param objs list对象
* @param rootName 根名
* @param params 包括的字段
* @return
*/
public static String getJsonStrFromList(List《Object》 objs, String params) {
JSONSerializer serializer = new JSONSerializer();
serializer = serializer.include(params).exclude("class");
return serializer.serialize(objs);
}
/**
* 将List转化为json字符串
* @param objs list对象
* @param rootName 根名
* @param params 包括的字段
* @return
*/
public static String getJsonStrFromList(List《Object》 objs, String exParams) {
JSONSerializer serializer = new JSONSerializer();
serializer = serializer.include(inParams).exclude("class").exclude(exParams);
return serializer.serialize(objs);
}
/**
* 将字符串转化为实体
* @param 《T》 实体
* @param source 要解析的字符串
* @param bean 要转化为的对象
* @return
*/
public static 《T》 T getObjFromJsonStr(String source, Class《T》 bean) {
return new JSONDeserializer《T》().deserialize(source, bean);
}
/**
* 将json中包含的class属性去除
* @param json 要转化的json
* @return
*/
public static String changeJson(String json){
int i = json.indexOf("\"class\":");
if(i!=-1){
int j = json.indexOf(",", i+1);
char c = json.charAt(j);
String subString="";
if((c+"").equals(",")){//第一个属性或者中间的属性出现
subString = json.substring(i, j+1);
}else if((c+"").equals("}")) {//在结尾的属性出现
subString = json.substring(i-1, j);
}
return json.replaceAll(subString, "");
}
return json;
}
}
从mysql获取的日期:yyyy-mm-dd(实体类设为Date类型)转化成json对象后,显示的是[Object Object]
var date = new Date();
var str = date.getYear() + ’-’ + (date.getMonth() + 1) + ’-’ + date.getDate();
这样就可以了
java实体类中包含set集合 用JSonOcject转换为什么不行 java.lang.StackOverflowError 堆栈溢出
1.普通javabean
javabean jb=new javabean();
JSONObject jsonobject=JSONObject.fromObject(jb);
2.map
Map map=new HashMap();
JSONObject jsonobject=JSONObject.fromObject(map);
3.list
List list=new ArrayList();
JSONArray jsonoarray=JSONArray.fromArray(list);
包含set集合的对象如何转为json
用Gson这个类库可以帮你解决,但是带泛型的集合必须要指定你的javaBean,(指定实体类)
String json = json字符串;
Set《你的实体类》 set = new Gson().fromJson(json,new TypeToken《List《你的实体类》》() {}.getType());
记得导入jar包
java中一个实体中包含另一个实体 如何将这个实体转化为json格式
先把user对象转换成字符串比如:
tring jsonStr = "{\"age\":23,\"id\":123,\"name\":\"tt_2009\"," +
"\"province\":\"上海\",\"sex\":\"男\"}";
然后用JSONobject对象的fromobject方法封装一下;
C# 中Json转object,含有数组json转为 实体对象
楼上说的对,是你属性名字弄错了,应该是timers才对
这里我不明白了,直接JsonConvert.DeserializeObject《T》(json)不就行了?
中间写的代码什么意思?
还有,序列化不用JsonConvert.SerializeObject吗?为什么又用JavaScriptSerializer呢?
Json的module不必手动输入,你用→选择性粘贴→将JSON粘贴为类
这样还可以保证你的对象正确,不会有null的问题
具体可以看我之前的回答:c#如何获得返回json数组中的数组

更多文章:
sumproduct多条件排名不重复(Excel 求助,如何多条件统计不重复个数)
2026年10月11日 23:10
gcc编译器参数(深度linux的arm-linux-gnueabihf-gcc编译参数如何配)
2026年10月11日 19:30
asp是什么检查项目(医院血液检验项目RPR、TPPA、HIV-Ab各是什么意思)
2026年10月11日 10:20
汇编输出指令(用汇编语言循环指令在屏幕中间输出红底白字的“hello I am 720“)
2026年10月11日 07:20
本地搭建springboot项目(使用eclipse构建springboot项目)
2026年10月11日 06:20
java入门神器好用吗(java 7入门经典适合初学者自学用吗)
2026年10月11日 02:40





