spring+hibernate报错:could not locate named parameter [orderNum]
运用框架Spring+hibernate写的java程序,运行的时候,出现了这么一个错:执行程序时这样的:
//注:验证过了,这两个参数的值是:paramNames[i]=orderNum
public List<OrderPO> findByProperty(List<String>listProperty ,Object[] values) {
String[] paramNames=new String[listProperty.size()];
for(int i=0;i<listProperty.size();i++){
paramNames[i]=listProperty.get(i);
}
//String queryString="from OrderPO where orderNum="+values[0];
String queryString="from OrderPO";
try{
return this.getHibernateTemplate().findByNamedParam(queryString,paramNames, values);
}catch(Exception e){
e.printStackTrace();
return null;
}
}
org.springframework.orm.hibernate3.HibernateQueryException: could not locate named parameter [orderNum]; nested exception is org.hibernate.QueryParameterException: could not locate named parameter [orderNum]
at org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:656)
at org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)
at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:411)
at org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)
at org.springframework.orm.hibernate3.HibernateTemplate.findByNamedParam(HibernateTemplate.java:938)
at wteam.dao.ordManageDAO.OrderDAO.findByProperty(OrderDAO.java:38)
at wteam.service.ordManageService.OrderService.deleteOrder(OrderService.java:90)
at wteam.action.ordManageAction.OrderAction.deleteOrder(OrderAction.java:111)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
奇怪的是参数:orderNum我是已经写的了:
@Column(name = "ORDERNUM",unique = true,nullable = false)
private String orderNum; //订单编号
get()和set()方法也都写好了:
public String getOrderNum() {
return orderNum;
}
public void setOrderNum(String orderNum) {
this.orderNum = orderNum;
}
不知道为何还会报这个错? Spring Hibernate 异常 Java
补充:Java , Java EE