Java rg.hibernate.hql.internal.ast.QuerySyntaxException:未映射bse_clientcontact
org.hibernate.hql.internal.ast.QuerySyntaxException:bse_clientcontact未映射[从bse_clientcontact cc中选择cc,其中cc.clientId=:id] 1.示范班Java rg.hibernate.hql.internal.ast.QuerySyntaxException:未映射bse_clientcontact,java,spring,hibernate,Java,Spring,Hibernate,org.hibernate.hql.internal.ast.QuerySyntaxException:bse_clientcontact未映射[从bse_clientcontact cc中选择cc,其中cc.clientId=:id] 1.示范班 package com.si.bse.model; @Entity @Table(name = "BSE_CLIENTCONTACT", uniqueConstraints = { @UniqueConstraint(columnNam
package com.si.bse.model;
@Entity
@Table(name = "BSE_CLIENTCONTACT", uniqueConstraints =
{
@UniqueConstraint(columnNames = "ID")})
public class ClientContact
{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="ID", unique=true, nullable=false)
@NotNull
private long clientContactId;
@Column(name = "CLIENTCONTACTNAME", nullable = false)
@NotNull @NotEmpty
private String clientContactName;
@Column(name = "CLIENTCONTACTNUMBER", nullable = false)
@NotEmpty
@Size(min = 10, max = 10)
private String clientContactNumber;
@ManyToOne
@JoinColumn(name="client_Id")
private Client client;
public ClientContact(){}
public long getClientContactId() {
return clientContactId;
}
public void setClientContactId(long clientContactId) {
this.clientContactId = clientContactId;
}
public String getClientContactName() {
return clientContactName;
}
public void setClientContactName(String clientContactName) {
this.clientContactName = clientContactName;
}
public String getClientContactNumber() {
return clientContactNumber;
}
public void setClientContactNumber(String clientContactNumber) {
this.clientContactNumber = clientContactNumber;
}
public Client getClient() {
return client;
}
public void setClient(Client client) {
this.client = client;
}
}
2.dao暗示
@SuppressWarnings("unchecked")
@Transactional
@Override
public Client getClientListDetail(long id) {
//Session session = sessionFactory.openSession();
Client clientList = (Client) getCurrentSession().load(Client.class, id);
return clientList;
}
@Override
@Transactional
public ClientContact getClientContact(long id) {
//Session session = sessionFactory.openSession();
ClientContact clientContactList = (ClientContact) getCurrentSession().createQuery("select cc from bse_clientcontact cc where cc.clientId=:id").setParameter("id", id).uniqueResult();
return clientContactList;
}
3.控制器
@RequestMapping(value = "singleView.do")
public String navigateToProductView( Map<String,Object>map)
{
/* if(result.hasErrors()){
ModelAndView model1=new ModelAndView("ADD");
return model1;
}*/
int clientId=13;// Integer.parseInt(id);
System.out.println("it is controller..single view");
Client clientList = searchServices.getClientListDetail(clientId);
ClientContact clientContact = searchServices.getClientContact(clientId);
// ClientImage clientImage = searchServices.getClientImage(clientId);
//ClientVideo clientVideo = searchServices.getClientVideo(clientId);
ClientCategory clientCategory = searchServices.getClientCategory(clientId);
//System.out.println(clientList.getClientId());
//System.out.println(clientList.getClientName());
map.put("clientList", clientList);
map.put("clientContact", clientContact);
// map.put("clientImage", clientImage);
//map.put("clientVideo", clientVideo);
map.put("clientCategory", clientCategory);
System.out.println("single view.....");
System.out.println("id----:"+clientId);
map.put("popularSearchList", popularSearchServices.getPopularSearchList());
return "singleProductView";
}
这就是错误所在
严重:路径为[/bse]的上下文中Servlet[appServlet]的Servlet.service引发异常[请求处理失败;嵌套异常为org.hibernate.hql.internal.ast.QuerySyntaxException:bse\U clientcontact未映射[从bse\U clientcontact cc中选择cc,其中cc.clientId=:id]]根本原因
org.hibernate.hql.internal.ast.QuerySyntaxException:未映射bse_clientcontact
位于org.hibernate.hql.internal.ast.util.SessionFactoryHelper.requireClassPersisterSessionFactoryHelper.java:189
位于org.hibernate.hql.internal.ast.tree.FromElementFactory.addFromElementFromElementFactory.java:109
位于org.hibernate.hql.internal.ast.tree.FromClause.addFromElementFromClause.java:95
位于org.hibernate.hql.internal.ast.HqlSqlWalker.createFromElementHqlSqlWalker.java:331
位于org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromElementHqlSqlBaseWalker.java:3633
位于org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromementlisthqlsqlbasewalker.java:3522
位于org.hibernate.hql.internal.antlr.hqlsbasewalker.fromClausehqlsbasewalker.java:706
位于org.hibernate.hql.internal.antlr.hqlsbasewalker.queryhqlsbasewalker.java:562
位于org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.selectStatementHqlSqlBaseWalker.java:299
位于org.hibernate.hql.internal.antlr.hqlsbasewalker.statementhqlsbasewalker.java:247
位于org.hibernate.hql.internal.ast.QueryTranslatorImpl.analyzeQueryTranslatorImpl.java:278
位于org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompileQueryTranslatorImpl.java:206
位于org.hibernate.hql.internal.ast.QueryTranslatorImpl.compileQueryTranslatorImpl.java:158
位于org.hibernate.engine.query.spi.HQLQueryPlan.HQLQueryPlan.java:126
位于org.hibernate.engine.query.spi.HQLQueryPlan.HQLQueryPlan.java:88
位于org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlanQueryPlanCache.java:190
位于org.hibernate.internal.AbstractSessionImpl.getHQLQueryPlanAbstractSessionImpl.java:301
位于org.hibernate.internal.AbstractSessionImpl.createQueryAbstractSessionImpl.java:236
位于org.hibernate.internal.SessionImpl.createQuerySessionImpl.java:1800
位于com.si.bse.dao.impl.SearchDaoImpl.getClientContactSearchDaoImpl.java:123
位于com.si.bse.services.impl.SearchServiceSiml.GetClientContactSearchServiceSiml.java:44
位于com.si.bse.controller.Searchcontroller.navigateToProductViewSearchcontroller.java:110
在sun.reflect.NativeMethodAccessorImpl.invoke0Native方法中
位于sun.reflect.NativeMethodAccessorImpl.invokeUnknown源
在sun.reflect.DelegatingMethodAccessorImpl.invokeUnknown源
在java.lang.reflect.Method.invokeUnknown Source上尝试以下操作
SELECT cc
FROM CLIENTCONTACT cc
WHERE cc.clientContactId= :Id
请注意,当您使用JPQL或HQL时,您处理的是实体,而不是表,因此,您应该从CLIENTCONTACT实体中进行选择,而不是从映射它的表BSE_CLIENTCONTACT中进行选择。先生,我仍然收到了错误CLIENTCONTACT未映射..:问题出在哪里?先生,我使用了表名,因此收到了错误。谢谢您的回答。显然是的,但是我想知道我提供的查询有什么问题没有解决您的问题。我已经在上面写了这篇文章,它可以…从ClientContact cc那里工作,cc.id=:id