你查询到的结果返回的是DataTable或者是DataSet将其进行循环,将其中的行(Row)添加到List泛型集合中即可
比如说你查询返回的是DataTabale dt
如果你添加到的是一个类,那就用List不是就用ArrayList
定义一个List<entity> list=new List<entity>();
if(dtRowcount>0)
{
foreach(DataRow in dtrows)
{
entity =new entity();//entity为实体类
entitya=row[""];//将数据赋值给实体的属性a,依次类推
listadd(entity);
}
return list;
}
return null;
可以将查询返回一个DynaBean比如
List<DynaBean> list=statementexecuteSQLQuery("select aaa,bbb from a,b");
for(DynaBean db:list){
String a1 = (String)dbget("aa"), db);
String b1= (String)dbget("bb"), db);
}
如果你的id,name属性都查询得出来
但是集合查询不出来说明你的映射关系有问题,。
推荐的方法是把Hibernate的hbm2dll参数设置成update
他会自动根据你的hbm文件映射成数据库表
一般多对多你要测试CRUD的。
可以用子查询:
hql语句
"from User where age=(select max(age) from User) "
相应的sql语句是
SELECT FROM USER WHERE AGE=(SELECT MAX(AGE) FROM USER);
Hibernate简介:Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来 *** 纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
以上就是关于hibernate中怎么把数据库中数据全部查出来存到list集合中全部的内容,包括:hibernate中怎么把数据库中数据全部查出来存到list集合中、hibernate进行多表查询每个表中各取几个字段,也就是说查询出来的结果集没有一个实体类与之对应如何解决、hibernate 多对多查询,sql,已经发出,得不到集合中的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)