分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

Hibernate-查询

发布时间:2023-09-06 01:21责任编辑:顾先生关键词:Hibernate
 ???????/** ????????* ?一、Session查询 ????????* ??get()在无主键的情况下返回null ????????* ??load()在无主键的情况下会产生异常 ????????**/
?????????HibernateSessionFactory.getSession().get(Member.class, "id-a"); ?????????HibernateSessionFactory.getSession().load(Member.class, "id-b");
 ????????二、Query查询 
????????//Member是pojo类的名称 ??????????String hql="from Member as a"; ?// 返回类型:List<Member> ?????????String hql="select a.mid from Member as a";//返回类型:List<String> ???????????????String hql="select a.mid,a.name,a.sex from Member as a";//返回类型:List<Object[]> ???????????????????//将查询后的结果转换为指定的vo类型,是根据查询返回列的名称自动匹配的 ?????????query.setResultTransformer(new AliasToBeanResultTransformer(Member.class)); ???????????????????????????/** ??????????* 限定查询 ??????????*/ ?????????String kw="hello"; ?????????String hql="from Member as a where a.age=? and a.mid like ?"; ?????????Query query = HibernateSessionFactory.getSession().createQuery(hql); ?????????//设值 (索引从0开始) ?????????query.setParameter(0, 10); ?????????query.setParameter(1, "%"+kw+"%"); ?????????List list = query.list(); ???????????????????/** ??????????* 统计查询 ??????????*/ ?????????String kw="hello"; ?????????String hql="select count(*) from Member as a where a.age=? and a.mid like ?"; ?????????Query query = HibernateSessionFactory.getSession().createQuery(hql); ?????????//设值 (索引从0开始) ?????????query.setParameter(0, 10); ?????????query.setParameter(1, "%"+kw+"%"); ?????????Object obj = query.uniqueResult(); ?????????????????????????/** ??????????* 分页查询 ??????????*/ ?????????int currentPage=1; ?????????int lineSize=2; ?????????String hql="from Member as a"; ?????????Query query = HibernateSessionFactory.getSession().createQuery(hql); ?????????query.setFirstResult((currentPage-1)*lineSize); ?????????query.setMaxResults(lineSize); ?????????List list = query.list(); ???????????????????/** ??????????* 分组查询 ??????????*/ ?????????String hql="select a.sex, count(*) from Member as a where a.age=? ?group by a.sex"; ?????????Query query = HibernateSessionFactory.getSession().createQuery(hql); ?????????//设值 (索引从0开始) ?????????query.setParameter(0, 10); ?????????List list = query.list();

Hibernate-查询

原文地址:http://www.cnblogs.com/yuefeng123/p/7763896.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved