我有个User 实体类 里面很多栏位 、 通过hibernate注解生成的表、
而我每次查询的时候会查询全部的栏位、
所以我建立了一个UserDTO 里面就三个栏位 id 帐号 密码
在DAO查询的时候使用了 Transformers
- Java code
Query query = session.createQuery("select id ,account ,password from User").setResultTransformer(Transformers.aliasToBean(UserDTO.class));
结果就出来异常
org.hibernate.PropertyNotFoundException: Could not find setter for 0 on class cn.local.projects.domain.UserDTO
照官方例子弄的、
http://swik.net/Hibernate/Hibernate+GroupBlog/Hibernate+3.2:+Transformers+for+HQL+and+SQL/cmxs
网上总结的这个异常说是mapping.xml配置有问题。可我没用到hibernate写xml方式
用spring集成hibernateTemplate。
请教解决办法。
------解决方案--------------------
首先请到数据库查询工具中检查下“select id ,account ,password from User”这条sql是否执行的通,其次检查下User类里的字段注解,最好调试下看看报错的具体语句。