java 把对象转成map_Java对象转换成Map[通俗易懂]

java 把对象转成map_Java对象转换成Map[通俗易懂]需求总是千奇百怪,对象转成map,看似没必要,但就是有这个需求,所以记录下来首先是beanpackagetools;importlombok.data;/***车辆实体类*/@datapublicclasscar{privatestringid;privatestringmodel;//型号privatestringcolor;//颜色privatestringvolu…

大家好,又见面了,我是你们的朋友全栈君。

需求总是千奇百怪,对象转成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}

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142950.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • php面试题目2020_php算法面试题及答案

    php面试题目2020_php算法面试题及答案2019最新整理PHP面试题附答案1、什么事面向对象?主要特征是什么?面向对象是程序的一种设计方式,它利于提高程序的重用性,使程序结构更加清晰。主要特征:封装、继承、多态。2、SESSION与COOKIE的区别是什么,请从协议,产生的原因与作用说明?A、http无状态协议,不能区分用户是否是从同一个网站上来的,同一个用户请求不同的页面不能看做是同一个用户。B、SESSION存储在服…

    2022年8月26日
  • LDR命令

    LDR命令  LDR指令用于从内存中将一个32位的字读取到指令中的目标寄存器中,如果目标寄存器为PC,则可以实现“长”跳转。主要有一下3种方式使用:ldrr0,_startldrr0,=_startldrpc,_start  逐条分析:一、ldrr0,_start  从内存地址_start的地方,把其对应的命令执行对应的“执行码”读入到r0中。二、ldrr0,=_start  …

    2022年6月28日
  • 2021版idea激活码99年-激活码分享

    (2021版idea激活码99年)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月28日
  • http请求415错误Unsupported Media Type

    http请求415错误Unsupported Media Type王子乔每一个认真生活的人,都值得被认真对待王子乔每一个认真生活的人,都值得被认真对待王子乔每一个认真生活的人,都值得被认真对待http请求415错误UnsupportedMediaTy

    2022年7月1日
  • springboot afterproperties(管理方法)

    在看用redis实现异步消息队列时,遇到了注册Event,其中看到了afterPropertiesSet。然后查博客,记录下。一、简单介绍1、init-method方法,初始化bean的时候执行,可以针对某个具体的bean进行配置。init-method需要在applicationContext.xml配置文档中bean的定义里头写明。例如:这样,当TestBean在初

    2022年4月18日
  • phpstrom激活码(JetBrains全家桶)

    (phpstrom激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月30日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号