欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

MyObjectUtil对象工具类

发布时间:2024/1/23 编程问答 51 豆豆
生活随笔 收集整理的这篇文章主要介绍了 MyObjectUtil对象工具类 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
package com.sunrise.jop.common.util;import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.HashMap; import java.util.Map;/*** 对象工具类* */ public class MyObjectUtil {/*** 将对象转为map* Student{* private int age ;* private String name;* * }* Student student = new Student("zhangsan",13)* Map map = MyObjectUtil.objectToMap(student);* map格式为{age=13,name="zhangsan"}* */public static Map<String,Object> objectToMap(Object obj){if(obj==null) return null;Class<?> cls = null;try {String className = obj.getClass().getName();cls = Class.forName(className);} catch (ClassNotFoundException e) {e.printStackTrace();} if(cls==null) return null ;Map<String,Object> map = new HashMap<String,Object>();Field fields[] = cls.getDeclaredFields(); for(int i = 0 ; i < fields.length ; i++){ String methodName = fields[i].getName();String handleMethodName = "get" +firstCharacterToUpperCase(methodName);try {Method getNameMethod = cls.getMethod(handleMethodName);Object value = getNameMethod.invoke(obj);map.put(methodName, value);} catch (Exception e) {e.printStackTrace();}} return map;}/*** 首字母大写* */public static String firstCharacterToUpperCase(String str){if(str==null) return null;StringBuffer sb = new StringBuffer(str);sb.setCharAt(0, Character.toUpperCase(sb.charAt(0)));str = sb.toString();return str;}}

总结

以上是生活随笔为你收集整理的MyObjectUtil对象工具类的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。