如何在JavaSpring引导应用程序中合并两个对象?
我需要在JavaSpring引导应用程序中合并对象(ProductDTO和Product)
ProductDTO不包含Product中的所有字段,我只想映射两个对象中相同的字段,同时保留目标对象中的其他值
我来自C#世界,所以我不知道在Java中实现相同行为的最佳方法是什么。在C#中,我会这样做:
var project = new Project
{
Name = "Project 1",
Description = "Description"
};
var projectDto = new ProjectDTO
{
Name = "Project 1 (changed)"
};
Mapper.Map(projectDto, project);
执行Map方法后,项目对象仍然包含Description字段的原始值
在JavaSpring中实现这一点的最佳方法是什么
# 1 楼答案
在SpringBeans库中有一个BeanUtils类
只要类包含相同的属性名,就会在目标中调用相应的setter。它将忽略目标中不存在的任何属性
# 2 楼答案
对于您的情况,您可以使用Apache或Springbean UTIL来完成
在这两种情况下,参数的位置是不同的