java - 使用 ModelMapper 转换实体
问题描述
源实体和目标实体在字段命名风格上有所不同(一个是下划线,另一个是驼峰式)。所以,来源:
public class User {
private String first_name;
}
目的地:
public class UserDto {
private String firstName;
}
我的任务是通过 ModelMapper 自动转换实体 - 无需处理字段映射(通过 getter-setter)。
为此,我尝试如下配置映射器:
ModelMapper modelMapper = new ModelMapper();
modelMapper.getConfiguration()
.setSourceNameTokenizer(NameTokenizers.UNDERSCORE);
但这不起作用
解决方案
默认情况下,字段匹配是禁用的,因此您必须在配置中更改标志。由于您的字段是私有的,您还必须将它们包含在您的设置中:
modelMapper.getConfiguration()
.setFieldMatchingEnabled(true)
.setFieldAccessLevel(AccessLevel.PRIVATE);
推荐阅读
- svelte - 如何处理苗条/工兵路线中的可选参数?
- flutter - Flutter 在执行异步等待任务时显示一个小部件
- php - 如何从 ACTIVE IT ZONE 中删除此 $.getScript("https://activeitzone.com/check/larashop.js")
- php - 如何将一个数组中的值合并到另一个数组中?
- python - 访问函数内部的变量进行计算
- log4j - 如何在不更改任何导入语句的情况下升级到 log4j 2.x
- windows - windows脚本创建一个可点击的Beyond Compare报告,但现在停止工作
- bash - 在 bash 中,有没有办法将输出重定向到打开以供读取的文件?
- php - PHP stripos() 只返回 false
- vb.net - VB.Net中的三元运算