Map与JavaBean相互转换的工具类怎么使用
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,今天小编给大家分享一下Map与JavaBean相互转换的工具类怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所
千家信息网最后更新 2026年11月02日Map与JavaBean相互转换的工具类怎么使用
今天小编给大家分享一下Map与JavaBean相互转换的工具类怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
使用范围:JavaBean类对象的属性不能是数组、List、Set、Map
public class MapBeanUtil { /** * JavaBean转Map * @param obj * @return */ public static Map bean2Map(Object obj) { Map map = new LinkedHashMap<>(); Class> clazz = obj.getClass(); for (Field field : clazz.getDeclaredFields()) { field.setAccessible(true); String fieldName = field.getName(); Object value = null; try { value = field.get(obj); } catch (IllegalAccessException e) { e.printStackTrace(); } if (value == null){ value = ""; } map.put(fieldName, value); } return map; } /** * Map转JavaBean * @param clazz * @param map * @param * @return */ public static T map2Bean(final Class clazz, final Map map) { if (map == null) { return null; } T res = null; try { res = clazz.getDeclaredConstructor().newInstance(); //获取到所有属性,不包括继承的属性 Field[] fields = clazz.getDeclaredFields(); for (Field field : fields) { //获取字段的修饰符 int mod = field.getModifiers(); if (Modifier.isStatic(mod) || Modifier.isFinal(mod)) { continue; } //设置对象的访问权限 field.setAccessible(true); //根据属性名称去map获取value if(map.containsKey(field.getName())) { //给对象赋值 field.set(res, map.get(field.getName())); } } } catch (Exception e) { e.printStackTrace(); } return res; } public static void main(String[] args) throws Exception { HashMap map = new HashMap<>(); map.put("id", 1001); map.put("username", "zhangsan"); map.put("password", "123456"); map.put("nickname", "张三"); map.put("email", "369950806@qq.com"); map.put("gender", true); map.put("birth", LocalDate.now()); map.put("avatar", "/aa/bb/ab.jpg"); map.put("role", "VIP"); map.put("status", (byte) 1); map.put("salt", "ldfkasjghweoiq324"); map.put("createTime", LocalDateTime.now()); map.put("updateTime", LocalDateTime.now()); User user = map2Bean(User.class, map); System.out.println(user); Map res = bean2Map(user); System.out.println(map); }} User类的代码:
public class User { private Integer id; private String username; private String password; private String nickname; private String email; private Boolean gender; private LocalDate birth; private String avatar; private String role; private Byte status; private String salt; private LocalDateTime createTime; private LocalDateTime updateTime;}以上就是"Map与JavaBean相互转换的工具类怎么使用"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。
属性
知识
篇文章
对象
工具
内容
不同
很大
代码
名称
大部分
字段
就是
数组
更多
权限
知识点
范围
行业
资讯
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
上海挚品互联网科技有限公司
工业互联网科技新基建
麻工互联网科技
北京互联网科技公司
平安科技 互联网
融势互联网科技
顺玮阁互联网科技
互联网科技股有哪些
宁夏科技产业互联网案例
米聚互联网科技南京有限公司排面
河南住房之家互联网科技
佛山市翊博互联网络科技有限公司
黑科技 体验场景 互联网大会
江苏互联网智能科技软件
下一代互联网重大应用科技园
工业互联网科技创业
互联网科技平台产品运营
陕西彩京云互联网科技有限公司
互联网科技自媒体灵感
科技美学互联网 艺术
以房互联网科技
苏州互联网科技贷款公司
海南购全球互联网科技
华服互联网科技官网
互联网科技有哪些公司
杭州壁岐互联网科技有限公司
青海科技产业互联网发展
下一代互联网重大应用科技园
半导体行业属于互联网高科技类吗
好易买互联网科技