
Hibernate
Howinfun
不断深造
展开
-
Hibernate的CRUD的操作
保存记录:* session.save(customer); 例子://不用设置id,因为配置了主键的生成策略Customer customer = new Customer();customer.setName("啊白");customer.setAge(3);session.save(customer);根据主键进行查询:*原创 2017-12-26 17:02:27 · 404 阅读 · 0 评论 -
Hibernate的抓取策略
1.1 Hibernate的抓取策略1.1.1 区分延迟和立即检索:立即检索:* 当执行某行代码的时候,马上发出SQL语句进行查询.* get()延迟检索:* 当执行某行代码的时候,不会马上发出SQL语句进行查询.当真正使用这个对象的时候才会发送SQL语句.* load(); 类级别检索和关联级别检索:* 类级别的检索:*原创 2018-01-09 14:20:14 · 361 阅读 · 0 评论 -
Hibernate的检索方式
1.1 Hibernate的检索方式:1.1.1 Hibernate的检索方式:检索方式:查询的方式:导航对象图检索方式: 根据已经加载的对象导航到其他对象* Customer customer = (Customer)session.get(Customer.class,1);* customer.getOrders();// 获得到客户的订单OID 检索方式:原创 2018-01-09 10:27:54 · 413 阅读 · 0 评论 -
Hibernate关联关系的映射
1.1 Hibernate关联关系的映射:1.1.1 实体之间的关系:实体之间有三种关系:* 一对多:* 一个用户,生成多个订单,每一个订单只能属于一个用户.* 建表原则:* 在多的一方创建一个字段,作为外键,指向一的一方的主键.* 多对多:* 一个学生可以选择多门课程,一个课程可以被多个学生选择.* 建表原则:* 创建第三张原创 2018-01-08 17:36:08 · 453 阅读 · 0 评论 -
Hibernate的二级缓存
1.1 Hibernate的二级缓存:Hibernate缓存分类:一、Session缓存(又称作事务缓存):Hibernate内置的,不能卸除。缓存范围:缓存只能被当前Session对象访问。缓存的生命周期依赖于Session的生命周期,当Session被关闭后,缓存也就结束生命周期。二、SessionFactory缓存(又称作应用缓存):使用第三方插件,可插拔。缓存范围:缓存原创 2018-01-16 13:21:18 · 411 阅读 · 0 评论 -
Hibernate操作持久化对象的方法
操作持久化对象的方法:save():保存一条记录:将瞬时态对象转成持久态对象.update()更新一条记录:将脱管态对象转成持久态对象.在标签上设置select-before-update="true"在更新之前先去查询saveOrUpdate():根据对象状态的不同执行不同的save或update方法.* 如果对象是一个瞬时态对象:执行save操作.*原创 2017-12-27 09:36:31 · 828 阅读 · 0 评论 -
Hibernate的一级缓存
Hibernate的一级缓存:(重要)Hibernate的一级缓存:什么是缓存:* 缓存将数据库/硬盘上文件中数据,放入到缓存中(就是内存中一块空间).当再次使用的使用,可以直接从内存中获取. 缓存的好处:* 提升程序运行的效率.缓存技术是Hibernate的一个优化的手段. Hibernate分成两个基本的缓存:* 一级缓存:Session级别的缓原创 2017-12-27 09:29:48 · 442 阅读 · 0 评论 -
Hibernate三种持久化对象的状态
三种持久化对象的状态:Transient瞬时态:特点:持久化对象没有唯一标识OID.没有纳入Session的管理. Persistent持久态:特点:持久化对象有唯一标识OID.已经纳入到Session的管理. ***** 结论:持久化持久态对象有自动更新数据库的能力.Detached脱管态:特点:持久化对象有唯一标识OID,没有纳入到Session管理.原创 2017-12-27 09:18:18 · 1040 阅读 · 0 评论 -
Hibernate中的持久化类
1.1 Hibernate中的持久化类:持久化类:实体类 + 映射文件. 持久化类是有编写规范:* 提供一个无参数public访问控制符的构造器:用到反射.* 提供一个标识属性,映射数据表主键字段 :* java区分两个对象是否是同一个使用 地址.* 数据库区分两条记录是否一致:使用 主键.* Hibernate中区分持原创 2017-12-26 17:54:26 · 348 阅读 · 0 评论 -
Hibernate的日志记录
1.Hibernate的日志记录:日志:程序开发中的一些信息. 常用信息输出:System.out.println(“”);* 这种方式不好:* 如果输出内容比较多,项目已经开发完毕,不想使用输出.需要打开每个类,将输出的代码注释. 日志:Hibernate中使用slf4j技术.slf4j:SLF4J,即简单日志门面(Simple Logging Facad原创 2017-12-26 13:22:27 · 630 阅读 · 0 评论 -
Hibernate的核心API
Hibernate的核心API:Configuration:负责管理 Hibernate 的配置信息1.加载核心配置文件:核心配置有两种:* hibernate.properties:* 加载:* Configuration configuration = new Configuration();* hibernate.cfg.xml:*原创 2017-12-26 17:46:20 · 422 阅读 · 0 评论 -
Spring Boot 参数校验(@Validated和@Valid的区别、自定义校验、如何使用嵌套校验)
在后端开发中,参数校验是非常普遍的,但是我觉得应该很多同学都是大概了解怎么去使用Spring Validator或者Hibernate Validator去校验,其中使用Hibernate Validator的同学应该占绝大多数,毕竟它拥有分组的概念,对于校验来说绝对是神器。但是呢,如果我们要使用嵌套校验,这时候就必须得使用@Valid注解来配合了。下面的文章是我今早在地铁上看到的,写得非...转载 2019-05-17 09:38:21 · 10448 阅读 · 0 评论