【发布时间】:2020-08-19 13:16:32
【问题描述】:
我在结果输出中不需要 id(主键),但在查询和结果集中排除 id 后得到 error.org.postgresql.util.PSQLException:在此 ResultSet 中找不到列名 id。 jpa 所以需要帮助格式化这个实体类。
注意:假设应该像下面的方法调用一样进行 entityManager.createNamedQuery("getPublisherInfoList",PublisherInfoResponseEntity.class).getResultList();
@NamedNativeQueries(value = {
@NamedNativeQuery(
name = "getPublisherInfoList",
query = "SELECT publisher.publisher_name,publisher.contact_name,publisher.contact_email,publisher.contact_phone,publisher.managed_services,\n" +
"annual.customers,annual.employees,annual.revenue,"
"FROM publisher_portal.publisher_informations publisher JOIN publisher_portal.publisher_annual annual\n" +
"ON publisher.publisher_name=annual.publisher_name",
resultSetMapping = "PublisherInfoResponseMappings"
),
@NamedNativeQuery(
name = "getPublisherByName",
query = "SELECT publisher.publisher_name,publisher.contact_name,publisher.contact_email,publisher.contact_phone,\n" +
"publisher.managed_services,annual.customers,annual.employees,annual.revenue,\n" +
"FROM publisher_portal.publisher_informations publisher JOIN publisher_portal.publisher_annual annual\n" +
"ON publisher.publisher_name=annual.publisher_name where publisher.publisher_name= :publisherName",
resultSetMapping = "PublisherInfoResponseMappings"
)
})
@SqlResultSetMapping(name = "PublisherInfoResponseMappings", entities = {
@EntityResult(entityClass = PublisherInfoResponseEntity.class, fields = {
@FieldResult(name = "publisher_name", column = "publisher_name"),
@FieldResult(name = "contact_name", column = "contact_name"),
@FieldResult(name = "contact_phone", column = "contact_phone"),
@FieldResult(name = "contact_email", column = "contact_email"),
@FieldResult(name = "managed_services", column = "managed_services"),
})
})
@Entity
@Table(name="publisher_informations",schema="publisher_portal")
public class PublisherInfoResponseEntity {
@Id
private Long id;
private String publisher_name;
private String contact_name;
private String contact_phone;
private String contact_email;
private String managed_services;
//setters and getters
}
【问题讨论】:
标签: java postgresql spring-boot spring-data-jpa