Map与JavaBean相互转换的工具类怎么使用
发表于:2025-11-13 作者:千家信息网编辑
千家信息网最后更新 2025年11月13日,今天小编给大家分享一下Map与JavaBean相互转换的工具类怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所
千家信息网最后更新 2025年11月13日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安全错误
数据库的锁怎样保障安全
网络安全员五险一金
数据库中字段名是列还是行
数据库mdf文件如何打开
中学网络安全主题班会心得
网络安全和网络意识形态关系
代理服务器地址 日本
软件开发资质需要什么
数据库单机连接数有限制吗
农业资源信息大数据库有哪些公司
网络安全法关于网络谣言条款
智能制造网络安全方案
杭州魅狐网络技术有限公司
郑州金水区软件开发
河北省信用信息基础数据库
区块链服务器安全架构
网络安全风险忧患意识
医疗行业软件开发怎么样
服务器安全组的作用
建数据库用什么软件
镇江免备案服务器
护苗网络安全英语阅读答案
服务器管理员密码不正确
hp2000服务器
零基础学计算机软件开发怎么样
软件开发外包合同模板pdf下载
第三互联网科技
整数网络技术
上海山楂互联网科技
集采系统数据库设计
小学生画的手抄报网络安全