Hibernate是将数据库中的表映射为对象,查询出的结果集合先要转换成对象,才能转换成Java基本类型。
1、示例:String hql = “select cat.name, cat.age from Cat cat”;
List list = getHibernateTemplate().find(hql);
if(list != null && list.size() > 0) {
for(int i = 0 ; i < list.size(); i++) {
//查询结果返回的是一个包含对象数组的list。
Object[] obj = (Object[]) list.get(i);
String name = obj[0];
Integer age = (Integer) obj[1];
}
}
这样就取出list中的数值了。
返回包含对象数组的list不能通过Iterator循环取值。
2、示例:String hql = “select cat.name from Cat cat”;
List list = getHibernateTemplate().find(hql);
if(list != null && list.size() > 0) {
for(int i = 0 ; i < list.size(); i++) {
//查询结果返回的不是对象数组list,可以直接转换为Java基本类型。
String name = (String) list.get(i);
}
}
这样就取出list中的数值了。
分享到:
相关推荐
总结起来,Hibernate的本地SQL查询功能为我们提供了一种灵活的方式来执行复杂的数据库操作,同时通过`addEntity()`、`addScalar()`和`Transformers.aliasToBean()`等方法,我们可以方便地将查询结果封装成Java对象,...
在使用Hibernate进行数据库操作时,有时会遇到一个常见的问题,即当从数据库中查询Date类型的数据并由Hibernate返回时,发现结果中的时分秒部分不正确。这个问题通常源于多个因素,包括日期时间的序列化与反序列化...
本文将深入探讨JQuery的启发,以及如何利用这些思想来优化对这两个框架的查询结果集进行二次处理。 首先,让我们了解JQuery的基本理念。JQuery是一个强大的JavaScript库,它提供了简洁的API来操作DOM(文档对象模型...
如果查询结果包含多个字段,并且希望将这些字段封装成一个对象,则可以使用Hibernate的投影列表功能,或者手动创建一个新的类来存储查询结果。 ### 总结 本文主要介绍了Hibernate中的连表查询方法及其在实际开发中...
如果查询结果是多对一或一对多的关系,那么返回的对象可能会包含关联的对象集合。 而当查询涉及两个以上字段时,情况就变得更加复杂。这可能是为了执行更复杂的筛选,例如查找年龄大于30且工资高于5000的员工。这种...
- 结果集转换:`addEntity()`方法用于指定查询结果应被映射到哪个实体类,`list()`或`scroll()`方法执行查询并返回结果集,这些结果集将自动封装为对应的Java对象。 5. 示例: 假设我们有一个`User`实体类,对应...
这个方法接受实体类、查询条件、排序方式、当前页和每页大小作为参数,返回分页结果。这种方法可以降低代码冗余,提升开发效率。 总结来说,Hibernate通过Criteria、HQL和Query API提供了丰富的查询机制,满足了...
* select 子句:选择将对象的属性返回到查询结果集中。 * where 子句:允许你将返回的对象的实例列表的范围缩小。 HQL 的应用示例: * 使用 HQL 检索对象:User user = (User) session.createQuery("from User ...
无论哪种查询方式,最后都会返回一个结果列表,你可以遍历这个列表来获取并处理查询到的`username`字段的值。 总结,Hibernate提供多种方式查询数据表中的字段,包括HQL、Criteria API和DetachedCriteria,选择合适...
通过以上两种方式,我们不仅能够灵活地进行多表联合查询,还可以有效地将查询结果映射到Java对象中。这对于提高代码的可读性和维护性非常有帮助。 总之,Hibernate提供了一系列强大的工具和技术,可以帮助开发者...
- 将查询结果保存到请求或会话作用域中,以便在JSP页面中使用。 ```java public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) ...
使用本地sql语句查询后,无需再使用Object对查询结果进行强制转换,而是直接将查询结果放到实体Bean里了。 PS: 其实只有一版,这里只所以叫最终版是因为该附件我上传了好几天传不上去,到最后报告说‘资源已经存在...
接下来,通过Hibernate的Session对象,执行这个动态生成的SQL,获取结果集。整个过程包括:加载模板文件、设置模型变量、解析模板生成SQL、执行SQL并返回结果。 七、示例代码 ```java // 创建Freemarker配置 ...
将查询结果缓存起来,避免重复计算。可以使用二阶缓存(如 Ehcache 或 Infinispan)来存储整个节点树,当数据更新时,再进行刷新。 5. **注意事项** 递归查询可能导致无限循环,所以在设计递归查询时必须设置好...
此查询只返回那些在`Employee`表中有对应的部门记录的结果。如果某个员工没有部门编号,则不会被包含在结果集中。 2. **左连接**: ```hql select employee.ID as id1, employee.Name as name1, department.ID ...
HQL(Hibernate Query Language)是Hibernate提供的面向对象的查询语言,类似于SQL但更面向对象。这份文档可能详细解释了HQL的语法、查询方式以及如何执行复杂的关联查询、聚合函数和子查询。了解HQL能帮助开发者更...
Hibernate分页查询小结
利用MYSQL数据库提供的样例数据库world建立的查询小例子。已经建立好了数据库对应的...本项目主要是为了练习使用Hibernate查询数据库。如果有什么问题可以发站内信或者邮件asddf14@hotmail.com。我会尽量解答一下~~~
例如,`select new User(usr.name, usr.age) from User usr where usr.age > 20`将创建一个新的User对象,其中包含查询结果的name和age属性。这要求User类有一个接受两个参数的构造函数。请注意,如果查询结果不包括...
还可以通过Projections获取特定的查询结果,如sum()、count()等。Order类用于排序,而Criteria还支持分页查询,通过setFirstResult()和setMaxResults()设置。 2. HQL(Hibernate Query Language): HQL是Hibernate...