问题:myeclipse2014下ssh框架里用getHibernateTemplate().find()查询用户信息时出错(运行之后,输入用户名和密码,按登录,显示错误500)
下面是我的查询代码,因为没有真正的学习过,都是网上找的项目自己做,不清楚怎么解决
import java.util.List;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.model.User;
public class LoginDAOImpl extends HibernateDaoSupport implements LoginDAO{
public boolean login(String username, String password) {
List<User> user = this.getHibernateTemplate().find(
"from User where uname=? and upassword=?",
new String[] { username, password });
boolean flag = false;
if (user.size() > 0) {
flag = true;
}
return flag;
}
}
这里是我反向工程得出的User类
public class User extends AbstractUser implements java.io.Serializable {
// Constructors
/** default constructor */
public User() {
}
/** full constructor */
public User(Integer uid, String uname, String upassword) {
super(uid, uname, upassword);
}
}
debug的时候执行到getHibernateTemplate().find()的时候就出了问题
下边是applicationContext.xml里的一些bean
<bean id="logind" class="com.dao.LoginDAOImpl">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<bean id="logins" class="com.service.LoginServiceImpl">
<property name="logindao" ref="logind" />
</bean>
<bean id="loginAction" class="com.action.LoginAction"
scope="prototype">
<property name="loginservice" ref="logins" />
</bean>
http://blog.csdn.net/moon__stone888888/article/details/51779256
500是服务器段的错误,肯定是后台代码出现了异常,仔细阅读下异常信息。从你的代码分析,你查询的List结果可能为空,所以下面的代码
if (user.size() > 0)
可能出现空指针异常,改为if (user!=nulluser.size() > 0) else分支打印写调试信息如:查询结果为空。