控制器POJO与方法级别POJO

时间:2018-02-14 15:59:46

标签: java spring spring-rest

在控制器级别或方法级别创建POJO的最佳解决方案是什么。 例如,我有EmployeeController,其中包含以下方法。

getAllEmployees()
addEmployee(AddEmployeeRequest employee)
updateEmployee(UpdateEmployeeRequest employee)
removeEmployee(RemoveEmployeeRequest employee)

//Method level classes

public class AddEmployeeRequest
{
    private String name;
    private Date dateOfBirth;
    private String Address;
}

public class UpdateEmployeeRequest
{
    private long id;
    private String Address;
}

public class RemoveEmployeeRequest
{
    private long id;
}

getAllEmployees()
addEmployee(EmployeeRequest employee)
updateEmployee(EmployeeRequest employee)
removeEmployee(EmployeeRequest employee)

//Controller level class
public class EmployeeRequest
{
    private long id;
    private String name;
    private Date dateOfBirth;
    private String Address;
}

如果我有方法级别模型,那么我是否还必须创建相应的服务级别DTO模型?

1 个答案:

答案 0 :(得分:0)

事实上,如果你使用spring,则需要使用单个POJO,因为spring使用反射来访问ClassName,DeclaredFields等。使用多个POJO会让Spring烦恼。

请在此处查看有关反射的更多详细信息:https://crunchify.com/create-simple-pojo-and-multiple-java-reflection-examples/