大家好,又见面了,我是你们的朋友全栈君。
需求总是千奇百怪,对象转成map,看似没必要,但就是有这个需求,所以记录下来
首先是bean
package tools;
import lombok.data;
/**
* 车辆实体类
*/
@data
public class car {
private string id;
private string model;//型号
private string color;//颜色
private string volume;//排量
private int year;//年份
}
然后是主要方法和测试类
package tools;
import java.lang.reflect.field;
import java.util.hashmap;
import java.util.map;
public class maptools {
public static void main(string[] args) throws exception{
car car = new car();
car.setid(“00000”);
car.setcolor(“black”);
car.setmodel(“bmw x5”);
car.setvolume(“3.0l”);
car.setyear(2018);
system.out.println(objecttomap(car));
}
/**
* 将object对象里面的属性和值转化成map对象
*
* @param obj
* @return
* @throws illegalaccessexception
*/
public static map objecttomap(object obj) throws illegalaccessexception {
map map = new hashmap();
class> clazz = obj.getclass();
for (field field : clazz.getdeclaredfields()) {
field.setaccessible(true);
string fieldname = field.getname();
object value = stringutils.nvl(field.get(obj));
map.put(fieldname, value);
}
return map;
}
}
输出
{volume=3.0l, color=black, year=2018, model=bmw x5, id=00000}
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/142950.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...