hibernate查询

hibernate查询指定的 字段返回的是一个Object数组,如果查的是一 个字段的话就返回Object对象,因为无法直接转换成实体类的对象,所以只能一个个去循环了,,现在有一种比较好的办法是在hql中使用select new 类名(属性1,属性 2……) from 实体类,同时在实体类中添加带参的构造方法,参数的个数和顺序与(属性1,属性 2……) 保持一致

下面看个示例代码:
User对象
/**
* 
*/
package com.sh3.model;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
* @author Administrator
* 
*/
@Entity
@Table(name = "users")
public class User implements java.io.Serializable {
        /**
         * 
         */
        private static final long serialVersionUID = 1L;
        private Integer id;
        private String name;
        private String password;
        private Integer age;
        private Date birthday;

        public User() {
        };
//要查哪几个字段,就写哪几个字段的构造方法,注意这里的顺序要和后面dao里面的查询顺序要一样
        public User(Integer id, String name, Integer age, Date birthday) {
                super();
                this.id = id;
                this.name = name;
                this.age = age;
                this.birthday = birthday;
        }

        //省略get/set方法

}


UserDao

 

        @Override
        public List<User> findAll() {
//                String queryString = "from User";
                String queryString = "select new User(id,name,age,birthday) from User";
                return super.find(queryString);
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值