java利用反射将pojo转为json对象
最近做以太坊钱包项目需要与前台进行json交互,写一个工具类,经普通javaBean转为json对象
package util; import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.List; import org.web3j.protocol.core.methods.response.Transaction; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; public class JSONUtil { /**
* 获取Transaction相应的JSON对象
* @param trans
* @return
*/
public static JSONObject getTransJSON(Transaction trans) {
JSONObject data = getJSON(Transaction.class, trans);
return data;
} /**
* 获取交易信息列表
* @param transList
* @return
*/
public static JSONArray getTransListJSON(List<Transaction> transList) {
JSONArray data = new JSONArray();
for(Transaction trans : transList) {
JSONObject transJson = getTransJSON(trans);
data.add(transJson);
}
return data;
} /**
* 获取json对象
* @param cls
* @param obj
* @return
*/
public static JSONObject getJSON(Class<?> cls, Object obj) {
JSONObject json = new JSONObject();
Field[] fieldArray = cls.getDeclaredFields();
for(Field field : fieldArray) {
String fieldName = field.getName();
String methodName = "get" + fieldName.substring(0, 1).toUpperCase() + fieldName.substring(1);
try {
Method method = cls.getMethod(methodName);
Object fieldObject = method.invoke(obj, new Object[0]);
String fieldValue = null;
if(fieldObject != null) {
fieldValue = fieldObject.toString();
}
json.put(fieldName, fieldValue);
} catch (Exception e) {
e.printStackTrace();
}
}
return json;
} }
java利用反射将pojo转为json对象的更多相关文章
- JAVA中如何将一个json形式的字符串转为json对象或对象列表
import java.util.*; import java.text.SimpleDateFormat; import org.json.JSONObject; import org.json.J ...
- java利用反射机制判断对象的属性是否为空以及获取和设置该属性的值
1.java利用反射机制判断对象的属性是否为空: Map<String,String> validateMap = new LinkedHashMap<String, String& ...
- 【转】Java利用反射机制访问私有化构造器
Java利用反射机制访问私有化构造器 博客分类: java 我们都知道,当一个类的构造方法被设为私有的时候(private),在其他类中是无法用new来实例化一个对象的. 但是有一种方法可以把带有 ...
- 利用反射和泛型把Model对象按行储存进数据库以及按行取出然后转换成Model 类实例 MVC网站通用配置项管理
利用反射和泛型把Model对象按行储存进数据库以及按行取出然后转换成Model 类实例 MVC网站通用配置项管理 2018-3-10 15:18 | 发布:Admin | 分类:代码库 | 评论: ...
- java利用反射调用类的某个方法
java利用反射机制 可以动态调用某个类的某个方法,在 扩展系统功能或提供对外接口时经常用的到. 代码如下: 打印类Print.java package com.test.reflct; /** * ...
- java利用反射获取类的属性及类型
java利用反射获取类的属性及类型. import java.lang.reflect.Field; import java.math.BigDecimal; import java.util.Map ...
- 利用反射创建User类的对象
package com.bjpowernode; public class User { private int age; public String name; public void m1() { ...
- 【js操作url参数】获取指定url参数值、取指定url参数并转为json对象
获取指定url参数值 /* 获取某url中的某参数值 调用:GetUrlQueryString("[url地址]","[参数名]"); */ function ...
- 将url参数转为json对象
/** * 将url参数转为json对象 * * @param str * @returns {{}} */ function parseQueryString(str){ arr = [], len ...
随机推荐
- load data导入数据之csv的用法
今天总结一下:csv格式文件导入的方法. 1.准备数据表:CSV
- Apache:怎样利用.htaccess文件对PHP站点或文件进行伪静态处理
来源:http://www.ido321.com/1123.html 今天get了一招:利用.htaccess文件对PHP站点或文件进行伪静态处理. 一.检查server是否支持伪静态处理: 必需要空 ...
- c/c++基本数据类型大小
各个类型的变量长度由编译器来决定(实际上与操作系统位数和编译器都有关)使用时可用sizeof()得到,当前主流编译器一般是32位或64位. 类型 32位 64位 char 1 1 short int ...
- ios --跳转到支付宝
//跳转到支付宝 - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request nav ...
- python3基础知识学习记录
学习地址:http://www.runoob.com/python3/python3-tutorial.html ------------------------------ 为什么要学python: ...
- go生成xml
package main import ( "encoding/xml" "fmt" // "os" ) type Servers stru ...
- 《数据结构(C#语言描述)》
本文转载自abatei,数据结构学了很多次,但是只是知道硬性的概念,现在专攻C#语言,对编程语言也有了更深的认识, 买一本C#的数据结构来看看,再一次加深对数据结构的学习,真是一件让人高兴的事. 当当 ...
- CAS 源码编译
准备 :gradle idea 第一次用Idea 还是有点不熟悉呀,还是eclipse 顺手! 哈哈 下载源码 :我的是4.2.7 解压 导入idea 重点: 调试时候在写 .没时间
- OC中nil、Nil、NULL、NSNull的区别
nil:指向OC中对象的空指针 e.g.: NSString *string = nil; Nil:指向OC中类的空指针 e.g.:Class class = Nil; NULL:指向其他类型的 ...
- Python菜鸟之路:Django 中间件
前言 在正式说Django中间件之前需要先了解Django一个完整的request的处理流程.我从其他网站扒了几张图过来. 图片一: 文字流程说明:如图所示,一个 HTTP 请求,首先被转化成一个 H ...