public User getUserByLoginidAndPasswd(String loginid, String passwd) {
String hql = "select user from User user where user.loginid=? and user.passwd=?";
List<User> list = getHibernateTemplate().find(hql,new Object[]{loginid,passwd});
}不执行 报的错误是 2009-05-25 15:35:54,406 ERROR [org.hibernate.util.JDBCExceptionReporter] - <No value specified for parameter 3>
2009-5-25 15:35:54 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet default threw exception
org.springframework.jdbc.BadSqlGrammarException: Hibernate operation: could not execute query; bad SQL grammar [select user0_.ID as ID7_, user0_.loginid as loginid7_, user0_.NAME as NAME7_, user0_.password as password7_, user0_.registerId as registerId7_, user0_.address as address7_, user0_.linkman as linkman7_, user0_.postCode as postCode7_, user0_.tel as tel7_, user0_.GPRSPHONEID as GPRSPHO10_7_, user0_.LastUpdateDate as LastUpd11_7_, user0_.branchID as branchID7_, user0_.ROLE_ID as ROLE13_7_, user0_.DESCN as DESCN7_, user0_.branchFlag as branchFlag7_, user0_.comeFlag as comeFlag7_ from t_user user0_ where user0_.loginid=? and user0_.password=?]; nested exception is java.sql.SQLException: No value specified for parameter 3
Caused by: java.sql.SQLException: No value specified for parameter 3
at com.mysql.jdbc.PreparedStatement.fillSendPacket(PreparedStatement.java:2296)但是 把 ? 号 换成利用 + 号连接就能正常执行!!!!!!! 我希望不该变?号的写法 找错程序的错误!!!!!!! 谁来告诉我以下 谢谢 !!!!!!!!!
#############hibernate
hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
#hibernate.dialect=org.hibernate.dialect.OracleDialect
hibernate.cache.use_query_cache=true
hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider
String hql = "select user from User user where user.loginid=? and user.passwd=?";
List<User> list = getHibernateTemplate().find(hql,new Object[]{loginid,passwd});
}不执行 报的错误是 2009-05-25 15:35:54,406 ERROR [org.hibernate.util.JDBCExceptionReporter] - <No value specified for parameter 3>
2009-5-25 15:35:54 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet default threw exception
org.springframework.jdbc.BadSqlGrammarException: Hibernate operation: could not execute query; bad SQL grammar [select user0_.ID as ID7_, user0_.loginid as loginid7_, user0_.NAME as NAME7_, user0_.password as password7_, user0_.registerId as registerId7_, user0_.address as address7_, user0_.linkman as linkman7_, user0_.postCode as postCode7_, user0_.tel as tel7_, user0_.GPRSPHONEID as GPRSPHO10_7_, user0_.LastUpdateDate as LastUpd11_7_, user0_.branchID as branchID7_, user0_.ROLE_ID as ROLE13_7_, user0_.DESCN as DESCN7_, user0_.branchFlag as branchFlag7_, user0_.comeFlag as comeFlag7_ from t_user user0_ where user0_.loginid=? and user0_.password=?]; nested exception is java.sql.SQLException: No value specified for parameter 3
Caused by: java.sql.SQLException: No value specified for parameter 3
at com.mysql.jdbc.PreparedStatement.fillSendPacket(PreparedStatement.java:2296)但是 把 ? 号 换成利用 + 号连接就能正常执行!!!!!!! 我希望不该变?号的写法 找错程序的错误!!!!!!! 谁来告诉我以下 谢谢 !!!!!!!!!
#############hibernate
hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
#hibernate.dialect=org.hibernate.dialect.OracleDialect
hibernate.cache.use_query_cache=true
hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider
No value specified for parameter 3
你指定了3个参数,而你hql有2个问号参数。