DTO объекта:несоответствие типов с помощью BeanUtils.copyProperties
public class DTOUser implements UserDetails {
/**
*
*/
private static final long serialVersionUID = -769714837633005963L;
private Long id;
private String account;
private String password;
private String statusStr;
private UserStatus status;
private int systemAdmin;
private long operator;
private String operateTime;
private String name;
private String company;
private String email;
private String telephone;
private List<DTOAuthority> dtoAuthorities = new ArrayList<DTOAuthority>();
private List<DTOAgreement> dtoAgreements = new ArrayList<DTOAgreement>();}
лицо:
@Entity
@Table(name="adt_user")
public class User {
private long id;
private String account;
private String password;
private String statusStr;
private UserStatus status;
private int systemAdmin;
private long operator;
private String operateTime;
private String name;
private String company;
private String email;
private String telephone;
private Set<Authority> authorities = new HashSet<Authority>();
private Set<Agreement> agreements = new HashSet<Agreement>();}
я использовать сильфон метод, чтобы скопировать значение объекта, но есть исключение:
java.lang.IllegalArgumentException: Cannot invoke com.hna.adt.orm.User.setAuthorities - argument type mismatch
что с этим?
BeanUtils.copyProperties(entity, value);
большое спасибо! – xuyaming
@xuyaming приветствую вас! – A4L
Вы также можете использовать что-то вроде [Moo] (http://github.com/geoffreywiseman/Moo) или Dozer, который может выполнять более сложный вид отображения с преобразованием. –