默认情况下,映射关系是双向的。如果仅仅希望做单项的拷贝,使用者可以设置@Mapping(oneway=true)表示此配置为单向配置。
@Mapping(oneway=true)
单向配置表示在映射字段到本字段时正常拷贝,反向拷贝会忽略本字段。
class Foo { String name; } class FooDto { @Mapping(oneway=true) String name; } Foo foo = new Foo(); foo.setName("foo"); FooDto fooDto = BeanUtils.copyProperties(foo, FooDto.class); Foo foo2 = BeanUtils.copyProperties(fooDto, Foo.class); System.out.println(fooDto.getName()); // "foo" System.out.println(foo2.getName()); // null
Last updated 6 years ago