hibernate查询返回list无法转换对象

有这样一段代码,返回的list无法转换成User对象

public List<User> getStoreList(final int pageNo,final int pageSize,final String role,final String check) {
//type is cpUser 商品type
String hql="";
if(check.equals("通过")){
hql = "from User user inner join user.roles as role where role.name='" + role + "' and user.extAttributes.attr3='通过' order by user.id desc";
}else{
//未通过,扩展可直接扩展终态hql
hql = "from User user inner join user.roles as role where role.name='" + role + "' and user.enabled=false and user.extAttributes.attr3='未审核' order by user.id desc";
}
final String query = hql;
List list = (List)this.getHibernateTemplate().execute(new HibernateCallback() {
public Object doInHibernate(Session session) throws HibernateException, SQLException {
return session.createQuery(query)
.setFirstResult((pageNo-1)*pageSize)
.setMaxResults(pageSize)
.list();
}
});
return list;
}

弄了弄,才发现!原来是hql这个出了问题,断点加上看看list的值明明就是user对象,但就是无法转换,这是因为hibernate在表连接之后,让所有的连接表一起组成了一个对象,这个hql其实是返回了2个对象
hql = "select user"这样就搞定了,给他指定一个查询结果,不然他太勤快了都给你查询出来了,呵呵
SSH:使用hibernate框架查询出来的数据不能转换成实体类,ClassCastException Hibernate框架的使用直接上代码! 直接上代码! -Exception occurred during processing request: [Ljava.lang.Object; cannot be cast to com.property.operation.domain.TUserEmail java.lang.ClassCastException: 类转换异常 无图言D,这是我的异... 阅读详情

相关推荐

三相SVPWM逆变器双闭环PI解耦控制:从dq坐标系到参数整定实战

本文深入解析了三相SVPWM逆变器的双闭环PI解耦控制技术。通过引入dq坐标系,将交流量转换为直流量,并结合前馈补偿实现电流环的解耦控制。文章详细阐述了从数学模型推导、控制器设计到参数整定与SVPWM实现的完整流程,为工程师提供了从理论到实战的系统性指导。

weixin_28292761的博客 365

jdbc或者hibernate查询返回的数据为bigdecimal类型,转为short或String类型,强转异常

List statuslist = super.jdbcQuery("select ***********");            if(statuslist!=null &amp;&amp; statuslist.size()&gt;0){                                Map m = (Map) statuslist.get(0);//map中查出的demo...

万里飞鹏的博客 3164

Multisim 14.0 实战:手把手教你仿真一个9MHz高频小信号放大器(附完整电路文件)

本文详细介绍了如何使用Multisim 14.0仿真一个9MHz高频小信号谐振放大器,从环境准备、电路设计到仿真参数设置与调试,手把手教你掌握射频电路仿真的核心技巧。适合电子工程师和学生快速上手高频电路设计,附完整电路文件供参考。

weixin_30335575的博客 87

python中continue语句_Python中continue语句使用方法

当前位置:主页 > 编程脚本 > Python > 正文Python中continue语句使用方法时间:2020-10-18 来源:未知 投稿:admin 点击:次文章来源:超级云continue语句一般会结合if语句进行搭配使用,表示在某种条件下,跳过当前循环的剩余语句,然后继续进行下一轮循环。如果使用嵌套循环,continue语句将只跳过最内层循环中的剩余语句。在whil...

weixin_39873356的博客 689

hibernate查询出来的字段并不能自动转换为bean对象的解决方法

解决思路一(采用hql查询): String sql = "select a from DocCatalogInfo a where a.catCode like '"+catCode+"%'"; List catNameList =getHibernateTemplate().find(sql); return catNameList ; ok,测试一下发现没问题,看来还是因为用原生s...

weixin_30628077的博客 333

hibernate SQLQuery.list()方法返回结果无法转换

最近用hibernate原生API查询与保存数据。 其中有问题,如下: java.lang.Object; cannot be cast to com.fyc.entity.Person 使用SQLQuery.list()返回的结果报不能进行类型转换的异常。 使用Query.list()返回的结果却可以正常转换。 使用Criteria.list()返回的结果却可以正常转换。 代码如下: ...

1889

java 如何从hibernate查询返回List类型结果中

问题描述:希望从数据库中查询一条数据并获各字段值。但是hibernate自动生成的代码UserDAO.java文件中查询返回的是一个List类型,我怎么也不出这里面的字段值。   使用Eclipse导入hibernate并生成的UserDAO.java文件部分代码如下:        public List findByProperty(String propertyNam

谢彬のCSDN专栏 1万+

java list 查找find_java 如何从hibernate查询返回List类型结果中值 | 学步园

问题描述:希望从数据库中查询一条数据并获各字段值。但是hibernate自动生成的代码UserDAO.java文件中查询返回的是一个List类型,我怎么也不出这里面的字段值。使用Eclipse导入hibernate并生成的UserDAO.java文件部分代码如下:public List findByProperty(String propertyName, Object value) {lo...

weixin_30768979的博客 449

hibernate执行的SQL语句返回list集合用Object[]接收遍历

做项目的时候遇到这样的问题,hibernate执行SQL语句返回来的list集合调试断点的时候检查list集合有值,但是返回action遍历的时候在list.get(i);这句话时报异常,调试结果是list集合为空,查找到的结果就是用SQL语句不能自动转换成bean对象,所以要转换成数组形式在进行遍历,这时返回list集合里的值就可以遍历出来了. 偷个懒把别人的代码粘过来了,还有...

程序员一代码搬运工 122

java 将一串字符串 转换成_看似简单,在JAVA中如何将一个Object转换成Array

照例应该先说一下这个问题的来源,因为有需要我才解决他 (需要结果的请直接看最后)那么这个问题的来源是这样的在某个不知名的小屁项目中,使用了Hibernate,在查询的时候,使用hql查询,设置查询条件的时候使用 in 方式 ,比如: select username from user where id in (:id) 然后设置参数的时候,hibernate要求这个参数为Array(Object[...

weixin_30213477的博客 261

Hibernate查询对象无法转换问题

有这样一段代码,返回list无法转换成User对象 public List<User> getStoreList(final int pageNo,final int pageSize,final String role,final String check) { //type is cpUser 商品type String ...

dazunqu2481的博客 240

Hibernate 返回结果list对象

hibernate中,用hql语句查询实体类,采用list方法的返回结果为一个List,该List中封装的对象分为以下三种情况: 1.查询全部字段的情况下,如"from 实体类",list中封装的对象为实体类本身,各属性都将得到填充。 2.只查询一个字段,默认情况下,list中封装的是Object对象。 3.查询两个或两个以上的字段,默认情况下,list中封装的是Object[],长度与所

q5545q的专栏 4815

Hibernate 查询多个字段返回list如何转为自定义对象,以及转换异常

SELECT cdjg.XMDM,cdjg.CDDM FROM CMRIGHT,cdjg where CMRIGHT.TRANCODE = cdjg.JYDM 这样子的语句,通过hibernate List qList = query.list();的查询出来时list中包含对象,这样的object对象不方便,如何转为自定义对象,通过在查询结果中加转换对象new Cdjg(cdj

HI,我是小瑞! 5536

hibernate 通过sql返回list遍历

在做一个查询业务时,我需要写入查询语句,返回list 我要list中的object的两数据如:测试数据、外包客服内容通过上网查找到hql的情况:**在hibernate中,用hql语句查询实体类,采用list方法的返回结果为一个List,该List中封装的对象分为以下三种情况: 1.查询全部字段的情况下,如”from 实体类”,list中封装的对象为实体类本身,各属性都将得到填充。 2

人生所向,皆是美好 5743

querylist在linux证书错误,hibernate SQLQuery.list()方法返回结果无法转换问题

最近用hibernate原生API查询与保存数据。 其中有问题,如下:java.lang.Object; cannot be cast to com.fyc.entity.Person使用SQLQuery.list()返回的结果报不能进行类型转换的异常。使用Query.list()返回的结果却可以正常转换。使用Criteria.list()返回的结果却可以正常转换。代码如下://返回的集合对象pu...

weixin_28740399的博客 164

hibernate执行的SQL语句返回list集合中的内容是Object[]对象,而不是entity对象

现状:在entity类中存在数据库表不存在的字段,这些字段只是做展示,不做在数据库表中进行保存。但是在sql语句查询的时候,出现了:返回list集合中的内容是Object[]对象,而不是entity对象 代码:pojo代码: // 主键 private String id; // 正确数量 private Integer rightnum; // 酒吧id priv...

javashareauthor的博客 2111

Hibernate Native SQL查询常用的2种方法及对返回结果处理

本文使用Hibernate3.2 cr21.直接返回List结果集,不包括列名信息List ls = session.createSQLQuery(querySql).list();如果当前查询SQL里包括多列,则List里每行存放的是Object数组,如果直接查询的是一列,则每行存放的则直接就是查询的哪一列的数据。也可以在返回的结果数据里指定每一列的类型List ls2 = session.cr

xplazy的专栏 2264

springboot hibernate jpa createNativeQuery使用原生sql查询转换为pojo的model对象,方便好用

先把entityManager.createNativeQuery生成的jpa接口的Query 强转为hibernateQuery 的query 然后就可以调用hibernate的方法,设置属性,返回list结果就是Map<String,Object>的有列名称columnName的对象 然后用jackson的ObjectMapper().convertValue把map转换为po...

老专家的博客 4209

hibernate分组查询

<br />private static final String LIST_COUNT = "select f.type as t,count(f.type) as c from Fetch as f group by type";<br />public void testCount(){  <br />  <br />   Query query = createQuery(LIST_COUNT);<br />  <br />   List list = query.list();  <br />  

技术交流 7177

关于hql查询返回结果的list数组的问题

好记忆不如敲键盘! 听说hibernate有两大查询方式hql(hibernate query language)和QBC(query by Criteria),据说前者相对来说更加灵活与强大。于是小白的我开始了踩雷之旅.我使用的是hibernate5.3 问题: 写好了查询的hql语句后,用list<其他类型> datalist = currentSession.creatQuery...

LYSCR7的博客 1847
上一篇: 1.web.xml文件的配置
下一篇: 生命周期(类变量和方法变量)
zcw_java
博客等级 码龄16年 0粉丝 130原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值