如果字段具有不同的名称,如何将POJO映射到DTO

Pan*_*mar 3 java mapping pojo dto apache-commons-beanutils

问题描述:

我有一个POJO对象,它从数据库映射.哪个属性(列)与数据库表中的名称相同.但它需要一些改变,我将不得不使用DTO.但问题是DTO具有数据库表中定义的不同名称的属性,(因为我将数据库表映射到POJO然后POJO映射到DTO)所以在映射时我必须使用字段和字段映射(一个字段) POJO和DTO对象的一个​​字段),这将需要50行代码(数据库表有50列).有没有解决方案直接映射到我的POJO与DTO?或者,如果数据库表和POJO/DTO具有不同的列名,是否有办法将数据库表映射到POJO/DTO?

例如

public class EmployeePOJO {

    String EMP_ID;
    String EMP_NAME;
    String EMP_SALERY;
    String EMP_DOB;
    String EMP_CONTACT_NO;
    String EMP_ADDRESS;
    String EMP_BLOOD_GROUP;
    String ASSIGNED_PROJECT;
    String PROJECT_MANAGER;
    String ROLE;

    //Getters and setters
}



public class EmployeeDTO {

    //String EMP_ID;
    //String EMP_NAME;
    String salery;            //EMP_SALERY;
    //String EMP_DOB;
    String phoneNumber;       //EMP_CONTACT_NO;
    String address;           //EMP_ADDRESS;
    //String EMP_BLOOD_GROUP;
    String currentProject;    //ASSIGNED_PROJECT;
    String projectManager;    //PROJECT_MANAGER;
    String role;              //ROLE;

    //getters and setters
}
Run Code Online (Sandbox Code Playgroud)

Cri*_*ris 5

http://sourceforge.net/projects/dozer/develop?(不确定它是否映射了您的需求,但请查看) http://dozer.sourceforge.net/