求解:java.lang.IndexOutOfBoundsException: Index: 1, Size: 1

乳臭未干 2011-07-26 09:42:09
我用Hibernate查询:
hql = "select u.email, u.password from ApplicantPO as u where u.username=?";
query = sessionH.createQuery(hql);
query.setString(0, Username);

list.clear();
list = query.list();
System.out.println("list.size() = " + list.size());

if(list.size()>0){
this.setEmail(list.get(0).toString().trim()); //给email赋值
System.out.println("查到的email为:"+list.get(0).toString().trim());
this.setUserPassword(list.get(1).toString().trim()); //给userPassword赋值
}
HibernateServiceProvider.closeSession();

得到的是这样的结果:
list.size() = 1
查到的email为:[Ljava.lang.Object;@13cebda
2011-7-26 21:32:36 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet default threw exception
java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
at java.util.ArrayList.RangeCheck(ArrayList.java:547)
at java.util.ArrayList.get(ArrayList.java:322)
at rims.action.GetPasswordAction.checkUser(GetPasswordAction.java:133)
at rims.action.GetPasswordAction.validate(GetPasswordAction.java:153)
at com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:200)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)

麻烦大家指点一二~
...全文
1010 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
乳臭未干 2011-07-26
  • 打赏
  • 举报
回复
唉~自己解决了:
if(list.size()>0){
ApplicantPO apo = (ApplicantPO)list.get(0);
System.out.println("查到的email为:"+apo.getEmail());
System.out.println("查到的password为:"+apo.getPassword());
}

需要返回一个对象~下面的 应该懂了吧~
乳臭未干 2011-07-26
  • 打赏
  • 举报
回复
这句我有写啊~~
[Quote=引用 1 楼 ticmy 的回复:]

list.get(0).toString().trim()
[/Quote]
贪睡的兔子 2011-07-26
  • 打赏
  • 举报
回复
数组越界吧
龙四 2011-07-26
  • 打赏
  • 举报
回复
list.get(0).toString().trim()

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧