Я устанавливаю параметр непосредственно в DTO, вывод которого мы получаем из HQL
Ниже приведен HQL:
@Query(value = "SELECT new com.test.vos.CustomerDetails(firstname, lastName, address1, address2, address3, id, companyName, companyAddress, otherDetails) "
+ "FROM MstCustomer mc "
+ "INNER JOIN mc.mstAddress md "
+ "INNER JOIN mc.MstCompany mComapny "
+ "WHERE mc.mobileNo = :mobileNo ")
public List<CustomerDetails> getCustomerDetails(@Param("mobileNo") Integer mobileNo);
DTO:
public class CustomerDetails {
private String firstName;
private String lastName;
private String address1;
private String address2;
private String address3;
private String id;
private String companyName;
private String companyAddress;
privatr String otherDetails;
public CustomerDetails(String firstName, String lastName, String address1, String address2, String address3, String id, String companyName, String companyAddress, String otherDetails) {
super();
this.firstName = storeCode;
this.lastName = lastName;
this.address1 = address1;
this.address2 = address2;
this.address3 = address3;
this.id = id;
this.companyName = companyName;
this.companyAddress = companyAddress;
this.otherDetails = otherDetails;
}
// Getter and Setter
}
Прежде всего, код работает нормально, только проблема в том, что в его конструкторе 9 параметров, что превышает 7 авторизованных.
Как устранить это предупреждение?Какой будет наилучший подход?