Java之——将 jsonObject 转换成 对象
来源:互联网 发布:线性优化模型 编辑:程序博客网 时间:2024/06/05 07:41
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/50853962
不多说,直接上代码了
@SuppressWarnings({ "deprecation", "unused", "unchecked" }) private Object fromJsonToJava(JSONObject json,Class pojo) throws Exception{ // 首先得到pojo所定义的字段 Field [] fields = pojo.getDeclaredFields(); // 根据传入的Class动态生成pojo对象 Object obj = pojo.newInstance(); for(Field field: fields){ // 设置字段可访问(必须,否则报错) field.setAccessible(true); // 得到字段的属性名 String name = field.getName(); // 这一段的作用是如果字段在JSONObject中不存在会抛出异常,如果出异常,则跳过。 try{ json.get(name); }catch(Exception ex){ continue; } if(json.get(name) != null && !"".equals(json.getString(name))){ // 根据字段的类型将值转化为相应的类型,并设置到生成的对象中。 if(field.getType().equals(Long.class) || field.getType().equals(long.class)){ field.set(obj, Long.parseLong(json.getString(name))); }else if(field.getType().equals(String.class)){ field.set(obj, json.getString(name)); } else if(field.getType().equals(Double.class) || field.getType().equals(double.class)){ field.set(obj, Double.parseDouble(json.getString(name))); } else if(field.getType().equals(Integer.class) || field.getType().equals(int.class)){ field.set(obj, Integer.parseInt(json.getString(name))); } else if(field.getType().equals(java.util.Date.class)){ field.set(obj, Date.parse(json.getString(name))); }else{ continue; } } } return obj; }
1 0
- Java之——将 jsonObject 转换成 对象
- Gson:将Java对象转换为JsonObject
- 如何通过Java代码将JSONObject转换为对象
- JSON解析之JSONObject对象---js对象转换成java对象
- JSON解析之JSONObject对象---js对象转换成java对象
- org.json.JSONObject将对象转换成json
- JSONObject转换为java对象
- 将JsonObject转换成HashMap
- 将JsonObject转换成HashMap
- 使用json-lib jsonObject 把json 转换成 java对象
- json对象、json格式字符串、java对象【使用此net.sf.json.JSONObject将java对象[比如数组集合Map、Map扩展]转换成json格式字符串】
- org.json源码分析及增强(一)——JSONObject对象与Java对象相互转换
- 将Java对象转换成JSON对象
- 利用Java反射实现普通对象到JSONObject的转换
- 将JAVA对象转换成JSON字符串
- 将JAVA对象转换成JSON字符串
- 将java对象转换成json字符串
- 将java对象(bean)转换成json
- iOS面试题五
- windows资源管理(内核对象/GDI对象/user对象)
- [HDU 2926]I Speak Whales[递归][划分]
- 第八章 通知的使用
- c++第1次实验-2
- Java之——将 jsonObject 转换成 对象
- iOS面试题六
- Android事件处理之基于监听的事件处理
- 重整晋商雄风,再现汇通天下 -------《晋商》阅读笔记第5-6章
- 追根溯源---length、length()和size()
- MTK问题总结-----工作中遇到的
- iOS面试题八
- 安卓按home键之后,再次点击程序图标避免再次重新启动程序解决办法
- 对js运算符“||”和“&&”的总结