报错: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0

描述:使用Hibernate登陆验证时故意输入没有的用户名,所产生的错误。

错误代码:

/* 
	 * 根据客户的用户名查找客户信息
	 */
	@Override
	public User getUserByUserName(String userName) {
		String hql="from User where userName=?";
		Session session=HibernateUtil.getSession();
		Transaction tx=session.beginTransaction();
		Query query=session.createQuery(hql);
		query.setString(0,userName);
		List<User> user=query.list();
		tx.commit();
		return user.get(0);
	}

  

 1 /* 
 2      * 根据客户的用户名查找客户信息
 3      */
 4     @Override
 5     public User getUserByUserName(String userName) {
 6         String hql="from User where userName=?";
 7         Session session=HibernateUtil.getSession();
 8         Transaction tx=session.beginTransaction();
 9         Query query=session.createQuery(hql);
10         query.setString(0,userName);
11         List<User> user=query.list();
12         tx.commit();
13                 //===区别===
14         if(user.size()==0)
15             return null;
16         return user.get(0);
17     }
View Code

 

 

posted @ 2014-05-03 21:33  SeatonYexd  阅读(2628)  评论(0编辑  收藏  举报