Hibernate查询时 new对象
程序员文章站
2024-03-12 15:45:38
...
一直以来我们需要查询几张表数据时用的都是在数据库中新建视图来完成,最近在项目中遇到了同样的问题;于是突发奇想,能不能在查询中返回个map,这样岂不是不用新建视图了;皇天不负有心人,经过在网上查询,终于查到了在HQL中可以new对象。
写此博客是为了记录,避免以后忘记
- hql代码如下
public List<ArticleInfo> getArticlePage(int start, int limit,
List<FilterBean> filterList) {
String hql = "select new ArticleInfo(article, column.name) "
+ "from ArticleInfo article, ColumnInfo column where 1 = 1 "
+ "and article.columnId = column.id ";
hql = super.setFilterBean(filterList, hql);
hql = super.orderBy(hql, "article.createDate desc");
Query query = super.createQuery(filterList, hql);
query.setFirstResult(start);
query.setMaxResults(limit);
return query.list();
}
- 实体类Entity代码
注:
实体类必须要有一个空的构造函数,如图片中标注;
否则会报如下错误:
2018-03-24 20:58:59,384 [org.hibernate.event.internal.DefaultLoadEventListener] INFO HHH000327: Error performing load command : org.hibernate.InstantiationException: No default constructor for entity: com.dxr.cms.entity.ArticleInfo
上一篇: JBPM4中的任务回退、补签、*流程实现
推荐阅读
-
Hibernate查询时 new对象
-
用超类对象接收new出来的子类对象时,数据会不会丢失
-
使用QueryRunner对象的query方法进行查询时,int类型的字段查询结果为0
-
Hibernate查询语句得到一个对象 博客分类: JAVA常用框架 HibernateJava
-
Hibernate查询语句得到一个对象 博客分类: JAVA常用框架 HibernateJava
-
探索new 实例化对象时帮我们做了哪些工作
-
Hibernate中防止在查询是类中对象级联时的死循环
-
Atitit.Hibernate中Criteria使用总结and关联查询and按照子对象查
-
Hibernate通过SQL查询常量时只返回第一个字符问题的解决方法
-
hibernate使用HibernateCallback回调的方法查询SQL时couldnotexecutequery--作怪的别名