
Hibernate框架学习笔记
{[("青椒盖饭")]}
这个作者很懒,什么都没留下…
展开
-
spring简单封装hibernate-validator进行参数检验
在实际的开发中,当进行向数据库中插入或更新数据的操作的时候,常常会需要对数据是否合法进行必要的判断,例如判断一个电话号码格式是否合法,身份证号码是否合法,邮箱地址是否合法等等.如果这些操作都需要用java代码一个一个进行判断的话,不仅代码重复率特别高,而且也容易出错.因此,如果有一个简单可复用的方式来进行这些操作,那么会使程序变得更加完美.java中自带了一套参数检验的api,但是随着jav...原创 2020-01-16 10:27:50 · 459 阅读 · 0 评论 -
Hibernate---HQL查询---分页查询
分页检索setFirstResult(int firstResult): 设定从哪一个对象开始检索, 参数 firstResult 表示这个对象在查询结果中的索引位置, 索引位置的起始值为 0. 默认情况下, Query 从查询结果中的第一个对象开始检索setMaxResults(int maxResults): 设定一次最多检索出的对象的数目. 在默认情况下, Query 和 Crite...转载 2019-03-03 09:55:18 · 680 阅读 · 0 评论 -
Hibernate---Session管理和进行批处理
发现问题如果集合Hibernate来编写DAO类,那么会遇到这样一个问题,那就是:Hibernate的Session操作对象需要在哪里实例化完成?如果由Service层(也许是业务层)调用DAO方法的时候传入Session对象,这就需要业务层于Hibernate紧密耦合,但不希望业务层在调用方法的时候,知道底层是如何实现的,所以不应该由业务层实例化Session对象 public ...转载 2019-02-28 11:26:07 · 259 阅读 · 0 评论 -
Hibernate---二级缓存
观察问题:进行两次次查询操作,查询的都是同一个对象,打印两次查询出的对象 @Test public void testCache(){ Employee employee = (Employee) this.session.get(Employee.class,310); Employee employee2 = (Employee) t...转载 2019-02-27 23:49:42 · 183 阅读 · 0 评论 -
Hibernate---QBC和本地sql检索
QBC 查询就是通过使用 Hibernate 提供的 Query By Criteria API 来查询对象,这种 API 封装了 SQL 语句的动态拼装,对查询提供了更加面向对象的功能接口本地SQL查询来完善HQL不能涵盖所有的查询特性QBC检索方式大致步骤如下使用Session对象创建Criteria类对象使用Restrictions类的静态方法添加查询条件使用Crit...转载 2019-02-27 17:36:59 · 177 阅读 · 0 评论 -
Hibernate---报表查询
报表查询用于对数据分组和统计, 与 SQL 一样, HQL 利用 GROUP BY 关键字对数据分组, 用 HAVING 关键字对分组数据设定约束条件.在 HQL 查询语句中可以调用以下聚集函数count():同级数据个数min():求最小数max():求最大数sum():求和avg():求平均数统计每个部门的人数 @Test public void ...原创 2019-02-27 15:22:40 · 366 阅读 · 0 评论 -
Hibernate---左外链接和内连接
1. 迫切左外链接在关系型数据库之中,数据表和数据表之间是可以存在关系的,因此不但可以查询数据表内的数据还可以通过数据表和数据表之间的关系来查询关联数据表中的数据.例如:一个Employee表描述一个雇员的信息,其中有一个"id"字段描述雇员的编号,还有一个Department表描述一个部门的信息.每个雇员属于一个部门.那么每一个雇员中包含一个"did"字段该于部门表中的部门id字段是有关...转载 2019-02-27 13:30:47 · 523 阅读 · 0 评论 -
Hibernate---HQL查询
Hibernate 提供了以下几种检索对象的方式导航对象图检索方式: 根据已经加载的对象导航到其他对象OID 检索方式: 按照对象的 OID 来检索对象HQL 检索方式: 使用面向对象的 HQL 查询语言QBC 检索方式: 使用 QBC(Query By Criteria) API 来检索对象. 这种 API 封装了基> 于字符串形式的查询语句, 提供了更加面向对象...转载 2019-02-26 22:36:40 · 191 阅读 · 0 评论 -
hibernate---继承关系映射
在java之中类与类之间可以存在有继承的关系,如果将两个具有继承关系的java类,在数据库中用数据表描述,该如何描述?例如:有一个java类"Person",该类具有以下的属性现在他有一个子类"Student"继承自Person,并扩展了自己的属性Hibernate支持三种继承映射策略使用 subclass 进行映射:将域模型中的每一个实体对象映射到一个独立的表中,也就是说...原创 2019-02-26 12:32:30 · 188 阅读 · 0 评论 -
Hibernate---数据表于java类映射
单项多对一映射使用many-to-one的标签来映射多对一的关联关系测试多对一的增删改查方法保存如果先保存 n de一段,在插入1的一段会多执行一些update语句,这是因为如果先插入 多的一段的时候,无法确定1的一段的外键值,所以只有当1的一段插入之后才能够获取到一的一端的id值,然后才能够更新n的一端的id值查询如果查询多的一端的一个对象,默...转载 2019-02-25 23:14:19 · 225 阅读 · 0 评论 -
Hibernate---hibernate配置文件
hibernate.cfg.xml配置文件Hibernate 配置文件主要用于配置数据库连接和 Hibernate 运行时所需的各种属性每个 Hibernate 配置文件对应一个 Configuration 对象Hibernate配置文件可以有两种格式:hibernate.propertieshibernate.cfg.xml推荐使用第二种方式JDBC 连接属性...转载 2019-02-24 19:50:38 · 330 阅读 · 0 评论 -
Hibernate---Session讲解
Session概述Session 接口是 Hibernate 向应用程序提供的操纵数据库的最主要的接口, 它提供了基本的保存, 更新, 删除和加载 Java 对象的方法.Session 具有一个缓存, 位于缓存中的对象称为持久化对象, 它和数据库中的相关记录对应. Session 能够在某些时间点, 按照缓存中对象的变化来执行相关的 SQL 语句, 来同步更新数据库, 这一过程被称为刷新缓...转载 2019-02-24 12:53:41 · 560 阅读 · 0 评论 -
Hibernate4---尚硅谷学习笔记
认识HibernateHibernate是一个java领域的框架,对JDBC的操作进行封装.如果使用原生的JDBC操作需要进行以下几步骤针对不同数据库厂商使用Connection类进行数据库的链接,实例化vo类对象使用PreparedStatement操作接口编写SQL语句执行PreparedStatement的sql语句如果是使用Hibernate进行操作,以上的步骤框架都...原创 2019-02-23 17:10:39 · 552 阅读 · 0 评论