hibernate的QBC
什么是QBc:
QBC(Query By Criteria)按条件查询,通过Criteria构造查询条件,即通过调用Criteria的api实现各种查询。
通过Criteria对象拼装 查询条件,调用Criteria的add方法拼接查询条件,最终hibernate通过criteria对象自动生成sql语句。
package com.zking.crm.dao.impl;import java.util.List;import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.criterion.DetachedCriteria;
import org.hibernate.criterion.Projections;import com.zking.crm.dao.CstCustomerDao;
import com.zking.crm.domain.CstCustomer;
import com.zking.crm.uilt.hibernateUtli;public class CstCustomerDaoImpl implements CstCustomerDao {// @Override// public void insert(CstCustomer cstCustomer) {// // TODO Auto-generated method stub// Session session = hibernateUtli.openSession();// 创建一个session// Transaction beginTransaction = session.beginTransaction();// try {// session.save(cstCustomer);// beginTransaction.commit();// 提交事务// } catch (Exception e) {// // TODO: handle exception// e.printStackTrace();// beginTransaction.rollback();// 会滚事务//// } finally {// session.close();// }// }// 优化以后的增加基本客户信息@Overridepublic void insert(CstCustomer cstCustomer) {Session session = hibernateUtli.getCurrentSession();// 获取与当前线程绑定的sessionsession.save(cstCustomer);}@Overridepublic Long findCustomerCount(DetachedCriteria detachedCriteria) {// TODO Auto-generated method stubSession session = hibernateUtli.openSession();Criteria criteria = detachedCriteria.getExecutableCriteria(session);// 转成可执行的对象criteria.setProjection(Projections.rowCount());// select Count(*) from 表名Long totla = (Long) criteria.uniqueResult();// 反回return totla;}@Overridepublic List<CstCustomer> findCustomerList(DetachedCriteria detachedCriteria, int firstResult, int maxResults) {// TODO Auto-generated method stubSession session = hibernateUtli.openSession();Criteria criteria = detachedCriteria.getExecutableCriteria(session);// 转成可执行的对象criteria.setFirstResult(firstResult);// 设置其实记录criteria.setMaxResults(maxResults);// 设置每页显示多少条return criteria.list();}}
hibernate的QBC相关推荐
- hibernate EJBQL QBC QBE
在功能方面是本地SQL>HQL>EJBQL>QBC>QBE 假想一个BBS. 板块: package com.bjsxt.hibernate; import javax.per ...
- Hibernate 学习笔记(二)—— Hibernate HQL查询和 QBC 查询
目录 一.Hibernate 的 HQL 查询 1.1.查询所有数据 1.2.条件查询 1.3.排序查询 1.4.统计查询 1.5.分页查询 1.6.投影查询 二.Hibernate 的 QBC 查询 ...
- 【Java中级】8.5 SSH之Hibernate框架(五)——关于Criteria(QBC)过时的补充
1.0 5.2版本之后过时 Criteria类涉及Hibernate中QBC查询语句的使用. 以下内容是官方API文档关于Criteria方面的中文翻译. 详细参考文章:Hibernate5.2之后Q ...
- Hibernate学习之路(十三):Hibernate中的QBC查询和本地sql操作
什么是hibernate的QBC查询 QBC 查询就是通过使用 Hibernate 提供的 Query By Criteria API 来查询对象,这种 API 封装了 SQL 语句的动态拼装,对查询 ...
- QBC(Query By Criteria) QBE (Query By Example)
QBC 参考:(Hibernate的QBC查询) //is empty and is not empty @Testpublic void testQBC(){Session session = s ...
- Hibernate从0开始,入门到放弃,一文上手
索引 背景 Hibernate介绍 环境搭建 第一个程序 单例模式解决频繁创建.关闭SessionFactory 继续CRUD:根据id查询 继续CRUD:修改 继续CRUD:删除 继续CRUD:sa ...
- MyBatis和ORM的区别以及Mybatis和Hibernate的区别
ORM: 即Object Relation Mapping,即对象关联映射.所以ORM就是将Java中的对象和数据库中的表关联对应起来. 思考一下Mybatis,Mybatis相当于将mapper中的 ...
- 框架-Hibernate
Hibernate第一天 1. 搭建Hibernate环境 搭建Hibernate开发环境 数据库: DROP TABLE IF EXISTS `cst_customer`; CREATE TABLE ...
- java web dao_JavaWeb项目,DAO应该怎么写?
有一张字段足够多的表,要对它进行各种各样的查询: 根据字段A根据字段B,或者根据字段A和B,或者再加上字段C,然后可能还要加上分页,排序等等的逻辑. 现在的项目的DAO层为了满足上面这些需要出现了很多 ...
最新文章
- 【camera】自动泊车-基于深度学习的视觉车位检测项目(课程设计--训练代码、测试代码、部署demo)(2)
- html5--6-59 其他常用CSS属性
- 送给产品经理的一段代码 (!(~+[]) + {})[--[~+][+[]] * [~+[]] + ~~!+[]] + ({} + [])[[~!+[]] ...
- 看TensorFlow如何玩转深度学习
- 写给工程师的10条精进原则
- Python | 使用matplotlib.pyplot创建线图
- 九宫格抽奖V1.3.26正版
- 人工智能将是人类最后的需要 | 大咖来了
- java网络编程,HttpClient 应用~
- vs2010报错:转换到 COFF 期间失败: 文件无效或损坏 解决方法
- 光猫修改html灰色选项,电信光猫怎么设置(修改)wifi密码?
- 计算机多媒体技术的主要特征是什么,计算机多媒体技术主要特征
- 编写程序 - 打印购物小票.
- Echarts快速入门
- 尤雨溪:先学算法,再学源码!
- 案例:可视化分析 + 预测模型,锁定影响产品良率的根因!
- win10如何停止自动更新
- OpenCV开发笔记(四十四):红胖子8分钟带你深入了解霍夫圆变换(图文并茂+浅显易懂+程序源码)
- python correlate_关于numpy互相关函数np.correlate的一点疑问
- Python | datetime与time模块
热门文章
- 【产业互联网周报】财报季:阿里云上半年营收245.6亿,市场份额连续四个季度增长,还将全面服务北京城市大脑建设...
- 微信公众平台开发(23) 聊天机器人功能开发
- 原根的存在性 相关定理 (一)
- 生成视频的活动要求在edius里如何设置
- Java中集合的基本使用
- 时间序列绘制ACF与PACF图像
- cu3ox软件去除水印的方法
- springside showcase mysql_搭建SpringSide示例showcase的eclipse运行环境
- Python中 redis StrictRedis对象操作string类型
- 【人工智能】人工智能资料汇总(百度云盘)