Java 使用BeanUtils在bean之间复制具有不同名称的属性
我想用BeanUtils将属性值从类A复制到类B,BeanUtils具有相同的字段,但名称不同。是否可以提供物业名称到不同名称、年龄到不同阶段等的映射,并实现复制?我很想知道这是否可以通过任何方式仅使用ApacheCommons实用程序(而不是任何其他工具)实现Java 使用BeanUtils在bean之间复制具有不同名称的属性,java,javabeans,apache-commons-beanutils,Java,Javabeans,Apache Commons Beanutils,我想用BeanUtils将属性值从类A复制到类B,BeanUtils具有相同的字段,但名称不同。是否可以提供物业名称到不同名称、年龄到不同阶段等的映射,并实现复制?我很想知道这是否可以通过任何方式仅使用ApacheCommons实用程序(而不是任何其他工具)实现 ApacheCommonsBeanutils有一个方法,该方法接受一个映射,用键值对填充Bean 注意:我刚刚看到了ApacheCommons的局限性,但它对其他人可能仍然有用,就我而言,更好的解决方案可能会有用 当名称匹配时使用,它将
ApacheCommonsBeanutils有一个方法,该方法接受一个映射,用键值对填充Bean 注意:我刚刚看到了ApacheCommons的局限性,但它对其他人可能仍然有用,就我而言,更好的解决方案可能会有用
当名称匹配时使用,它将自动复制值。或者与您的情况一样,您可以在xml映射文件中指定源成员和目标成员。但填充仍需要相同的字段名。如何将“age”属性映射到“differentitage”属性?正如您在链接的API中所读到的:“properties-映射由属性名称设置的键,并设置相应的(String或String[])值”。关键必须是“差异”和值20或任何时候。。。您必须以这种方式或使用Dozer和xml映射将值映射到某个位置。不客气,您发布问题已经很久了:)
class ClassA{
private String name;
private Integer age;
... // Setter and Getter methods
}
class ClassB{
private String differentName;
private Integer differentAge;
... // Setter and Getter methods for the private fields
}