Java对象转换Map(工具类)[通俗易懂]

Java对象转换Map(工具类)[通俗易懂]/***@Description//TODOMap工具类*@Date2020/5/79:54*@Authorhuangwb**/publicclassMapUtils{/***@returnvoid*@Authorhuangwb*@Description//TODO对象转换成map*…

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

/**
 * @Description //TODO Map工具类
 * @Date 2020/5/7 9:54
 * @Author huangwb
 **/
public class MapUtils {
    /**
     * @return void
     * @Author huangwb
     * @Description //TODO 对象转换成map
     * @Date 2020/5/7 9:56
     * @Param [t 对象,ignoreFields 忽略字段]
     **/
    public static <T> Map<String, Object> objectToMap(T t, String... ignoreFields) {
        Map<String, Object> map = new HashMap<>();
        Field[] declaredFields = t.getClass().getDeclaredFields();
        List<String> ignoreFieldList = Arrays.asList(ignoreFields);
        Arrays.stream(declaredFields).forEach(data -> {
            data.setAccessible(true);
            try {
                if (ignoreFieldList.isEmpty() || !ignoreFieldList.contains(data.getName())) {
                    map.put(data.getName(), data.get(t));
                }
            } catch (IllegalAccessException e) {
                e.printStackTrace();
            }
        });
        return map;
    }

    public static void main(String[] args) {
        TUserInfo tUserInfo = new TUserInfo();
        tUserInfo.setId("susisda");
        tUserInfo.setUserName("susisda");
        tUserInfo.setCreateTime(new Date());
        Map<String, Object> map = objectToMap(tUserInfo);
        System.out.println(JSON.toJSONString(map));
    }
}

 

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

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

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


相关推荐

  • 2022年流动式起重机司机考试题库模拟考试平台操作「建议收藏」

    2022年流动式起重机司机考试题库模拟考试平台操作「建议收藏」题库来源:安全生产模拟考试一点通公众号小程序2022年流动式起重机司机特种作业证考试题库系流动式起重机司机考题的多种练习模式!2022年流动式起重机司机考试题库模拟考试平台操作根据流动式起重机司机考前押题。流动式起重机司机全部考试题库通过安全生产模拟考试一点通上错题练习。1、【多选题】《中华人民共和国特种设备安全法》规定,特种设备生产、经营、使用单位()被查封、扣押的特种设备或者其主要部件的,责令改正,处五万元以上二十万元以下罚款;情节严重的,吊销生产许可证,注销特种设备使用登记证书。(A..

    2025年9月23日
    10
  • mysql binlog日志_事务日志

    mysql binlog日志_事务日志binlog就是binarylog,二进制日志文件,这个文件记录了mysql所有的dml操作。通过binlog日志我们可以做数据恢复,做主住复制和主从复制等等。对于开发者可能对binlog并不怎么关注,但是对于运维或者架构人员来讲是非常重要的。如何开启mysql的binlog日志呢?在my.inf主配置文件中直接添加三行log_bin=ONlog_bin_basenam

    2022年8月31日
    4
  • 无刷直流电机simulink模型(ansoft电机仿真教程)

    这段时间刚开始接触Matlab中的Simulink仿真,我就结合自己的专业,利用Simulink进行了无刷直流电机的仿真,因为Simulink工具箱里面有很多可用的模块,所以建模过程变得非常简单。在Matlab界面中new->model之后,找到SimulinkLibraryBrowser,这里面有系统自带的很多模块,接下来我们就需要找到自己所需要的模块了,了解无刷直流电机的工作原理以后…

    2022年4月11日
    59
  • Python 根据AIC准则定义向前逐步回归进行变量筛选(二)

    Python 根据AIC准则定义向前逐步回归进行变量筛选(二)Python根据AIC准则定义向前逐步回归进行变量筛选(二)AIC简介AIC即赤池值,是衡量模型拟合优良性和模型复杂性的一种标准,在建立多元线性回归模型时,变量过多,且有不显著的变量时,可以使用AIC准则结合逐步回归进行变量筛选。AICD数学表达式如下:AIC=2p+n(log(SSE/n))AIC=2p+n(log(SSE/n))AIC=2p+n(log(SSE/n))其中,ppp…

    2022年5月24日
    183
  • Jave运算符和MySQL运算符总结

    Jave运算符和MySQL运算符总结

    2021年7月10日
    91
  • pycharm自动调整代码格式,使之符合规范

    pycharm自动调整代码格式,使之符合规范哈哈哈 今天刚刚发现 Pycharm 可以自动调整格式 真的是太方便了 赶紧来记录一下和大家分享 当我们在 Pycharm 写 python 代码时 要边敲代码边符合规范真的有点不方便 但是不符合规范的代码又影响阅读 下面就说一下怎么用 Pycharm 自带的代码格式调整功能调整代码格式吧 方法一 打开 Pycharm gt 在上面的工具栏找到 Code gt 点击 ReformatCode 方法二 直接使用快捷键 Ctrl Alt L

    2025年6月8日
    4

发表回复

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

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