休眠-线程“主”中的异常java.lang.IndexOutOfBoundsException:索引:0,大小:0

时间:2019-03-21 06:00:09

标签: java hibernate

我在执行此代码时获取索引超出范围的异常。谁能帮我解决这个问题。

Session session = new Configuration().configure().buildSessionFactory().openSession();
String sql = "select name from chapter_product where name = 'sample'";
SQLQuery query = session.createSQLQuery(sql);
List results = query.list();
if(results .get(0)!=null) {
System.out.println("value:"+results.get(0));
}else {
System.out.println("no values");
}

4 个答案:

答案 0 :(得分:1)

错误可能在这里引发:

List results = query.list();

这意味着,数据库中没有此类数据,并且结果列表为空,因此您无法获取该数据的第一个元素。

答案 1 :(得分:1)

您正在尝试访问此行中的空列表第一个元素。

您需要检查是否为空,然后您需要访问对象

示例代码

       if(!results.isEmpty()){

System.out.println("value:"+results.get(0));
}
else{
System.out.println("no values");

}

答案 2 :(得分:0)

您遇到的问题是,您正在尝试从一个空列表访问第0个元素。

您的支票应该是:

if (results == null || results.isEmpty()) {
    System.out.println("no values");
} else {
    // Do your stuff
}

答案 3 :(得分:0)

console.log