Java 获取表示类未与命名查询映射的错误
我使用的是spring数据Jpa,我想将一个名为Client的表映射到名为ClientList的类中,并得到一个错误,即在命名查询中没有映射客户端[SELECT c FROM Client c] 这是我的实体类和获取错误代码 HH000177:命名查询中出错:GetAllClient org.hibernate.hql.internal.ast.QuerySyntaxException:未映射客户端[从客户端c中选择c]Java 获取表示类未与命名查询映射的错误,java,hibernate,spring-boot,import,spring-data-jpa,Java,Hibernate,Spring Boot,Import,Spring Data Jpa,我使用的是spring数据Jpa,我想将一个名为Client的表映射到名为ClientList的类中,并得到一个错误,即在命名查询中没有映射客户端[SELECT c FROM Client c] 这是我的实体类和获取错误代码 HH000177:命名查询中出错:GetAllClient org.hibernate.hql.internal.ast.QuerySyntaxException:未映射客户端[从客户端c中选择c] 由于没有将NamedQuery定义为本机查询,因此需要使用java类定义的
由于没有将NamedQuery定义为本机查询,因此需要使用java类定义的名称[表和列的名称],而不是JPA注释定义的名称
在您的示例中,在命名查询定义中使用“ClientList”作为表名。您的实体名称是
ClientList
,因此您的查询应该是从ClientList c
中选择c来编写命名的HQL或JPQL查询,而不是SQL查询。这里client
是表名。使用@namedNAVIQUERY
进行命名SQL查询。好的,谢谢。我会检查谢谢@satytnv正在工作
package com.abc.entity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
@NamedQueries({
@NamedQuery( name="getAllClients" , query="SELECT c FROM client c")
})
@Entity
@Table(name="client")
public class ClientList {
@Id
@Column(name="ClientName")
String clientName;
@Column(name="ClientId")
String clientId;
@Column(name="ImplementationCode")
String implementationCode;
@Column(name="createddate")
String cretedDate;
public String getClientName() {
return clientName;
}
public void setClientName(String clientName) {
this.clientName = clientName;
}
public String getClientId() {
return clientId;
}
public void setClientId(String clientId) {
this.clientId = clientId;
}
public String getImplementationCode() {
return implementationCode;
}
public void setImplementationCode(String implementationCode) {
this.implementationCode = implementationCode;
}
public String getCretedDate() {
return cretedDate;
}
public void setCretedDate(String cretedDate) {
this.cretedDate = cretedDate;
}
@Override
public String toString() {
return "ClientDetails [clientName=" + clientName + ", clientId=" + clientId + ", implementationCode="
+ implementationCode + ", cretedDate=" + cretedDate + "]";
}
public ClientList(String clientName, String clientId, String implementationCode, String cretedDate) {
super();
this.clientName = clientName;
this.clientId = clientId;
this.implementationCode = implementationCode;
this.cretedDate = cretedDate;
}
@Id
@Column(name="ClientName")
String clientName;
@Column(name="ClientId")
String clientId;
@Column(name="ImplementationCode")
String implementationCode;
@Column(name="createddate")
String cretedDate;
public String getClientName() {
return clientName;
}
public void setClientName(String clientName) {
this.clientName = clientName;
}
public String getClientId() {
return clientId;
}
public void setClientId(String clientId) {
this.clientId = clientId;
}
public String getImplementationCode() {
return implementationCode;
}
public void setImplementationCode(String implementationCode) {
this.implementationCode = implementationCode;
}
public String getCretedDate() {
return cretedDate;
}
public void setCretedDate(String cretedDate) {
this.cretedDate = cretedDate;
}
@Override
public String toString() {
return "ClientDetails [clientName=" + clientName + ", clientId=" + clientId + ", implementationCode="
+ implementationCode + ", cretedDate=" + cretedDate + "]";
}
public ClientList(String clientName, String clientId, String implementationCode, String cretedDate) {
super();
this.clientName = clientName;
this.clientId = clientId;
this.implementationCode = implementationCode;
this.cretedDate = cretedDate;
}
@Id
@Column(name="ClientName")
String clientName;
@Column(name="ClientId")
String clientId;
@Column(name="ImplementationCode")
String implementationCode;
@Column(name="createddate")
String cretedDate;
public String getClientName() {
return clientName;
}
public void setClientName(String clientName) {
this.clientName = clientName;
}
public String getClientId() {
return clientId;
}
public void setClientId(String clientId) {
this.clientId = clientId;
}
public String getImplementationCode() {
return implementationCode;
}
public void setImplementationCode(String implementationCode) {
this.implementationCode = implementationCode;
}
public String getCretedDate() {
return cretedDate;
}
public void setCretedDate(String cretedDate) {
this.cretedDate = cretedDate;
}
@Override
public String toString() {
return "ClientDetails [clientName=" + clientName + ", clientId=" + clientId + ", implementationCode="
+ implementationCode + ", cretedDate=" + cretedDate + "]";
}
public ClientList(String clientName, String clientId, String implementationCode, String cretedDate) {
super();
this.clientName = clientName;
this.clientId = clientId;
this.implementationCode = implementationCode;
this.cretedDate = cretedDate;
}
}