- 博客(10)
- 收藏
- 关注
原创 AOP同一切面的不同方法间调用问题
例如有一个打印日志的Around切面,切点有接口A中的methodA、接口B中的methodB,当在接口A的实现类Aimpl对应的methodA方法中调用B.methodB时,在执行methodA之前会进入Around切面中,执行B.methodB时又会进入Around中,如果能够使B调用的时候不进入此切面呢?
2023-04-06 21:55:17
296
原创 hibernate中的关系映射05自关联(树状关联)
一、模型设计1、实体类package com.**.hibernate.pojo.tree; public class Category { private Integer id; private String name; //父类别 private Category parentCategory; //当前类型在树中的级别 private I...
2018-07-05 22:21:16
447
原创 hibernate优化策略02一级缓存和快照
一、什么是Hibernate的一级缓存session将一个对象加入自己的管理范围内,其实也就是把该对象放入自己的一级缓存中。Hibernate的一级缓存是指Session级别的缓存,它是一块内存空间,由Hibernate管理,无需干预。有了一级缓存,应用程序可以减少访问数据库的次数,提高性能。查询时:首先会使用对象属性的OID值(对应表中的主键)在Hibernate的一级缓存进行查找:如果找到,则...
2018-07-05 22:10:01
219
原创 hibernate优化策略01对象的三种状态
一、性能优化策略一级缓存和快照延迟加载策略抓取策略使用连接池二级缓存要掌握这些性能优化策略,必须首先了解对象的三种状态二、对象的三种状态在 Hibernate 程序运行过程中,一个对象会存在以下的三种状态,分别为:瞬时态: 没有对象 OID 值,没有被 session 管理持久态:有对象 OID 值,已经被 session 管理脱管态:有对象 OID 值,已经脱离 session 管理处于持久态的...
2018-06-30 12:15:08
227
原创 Mybatis中的延迟加载
延迟加载又叫懒加载,也叫按需加载。也就是说先加载主信息,在需要的时候,再去加载从信息。在mybatis中,resultMap标签 的association标签和collection标签具有延迟加载的功能。1、拷贝jar包延迟加载中查询出来的是一个代理对象,不是真正的对象本身,可参考hibernate中的load方法,利用log4j将日志信息打印在控制台可以很明确的看到,所以在使用延迟加载时,需要用...
2018-06-23 20:36:01
514
原创 hibernate中的关系映射04一对一映射
唯一外键映射一、模型设计1、创建Person实体类package com.**.hibernate.pojo.one2one_fk;public class Person{ private Integer id; private String name; //关联身份证 private Card card;2、创建实体类package com.**.hibernat...
2018-06-23 19:47:21
191
原创 hibernate中的关系映射03多对多映射
需求:用户与角色是多对多的关系一、模型设计1、设计表(用hibernate自动生成表)用户表角色表用户角色表2、创建User实体类package com.**.hibernate.pojo.many2many;import java.util.HashSet;import java.util.Set;/** * 用户(多方) */public class User{ private Inte...
2018-06-23 09:28:25
181
原创 hibernate中的关系映射02级联设置和关系权反转
如果要了解多对多的映射,首先需要学习级联设置和关系权反转一、级联保存1、测试级联保存测试:复制前面的例子,只保存Customer数据,不保存Order数据,会报告错误/** * 保存操作 - 级联保存 */ @Test public void testCascadeSave(){ //准备数据 ... //建立一对多双向关系 ... //保存数据 ...
2018-06-22 09:39:17
309
原创 hibernate中的关系映射01一对多映射
要了解的概念:关系一对多多对一多对多一对一单项关联双向关联级联操作需求:客户与订单的关系是一对多准备项目2(1)创建项目hibernate02relation(2)引入jar,同前一个项目(3)复制实体、映射、配置、工具类1、订单表(也可以后面自动创建)Create TableCREATE TABLE `t_order` ( `id` bigint(20) NOT NULL AUTO_INCR...
2018-06-21 17:06:37
223
原创 hibernate的抓取策略和JPA的抓取策略
所谓“抓取策略”,总要涉及两个问:何时抓取(是否延迟加载)以及如果抓取。这两点在Hibernate提供的注解上体现的非常明显。Hibernate提供两套注解分别用来描述“何时抓取”和“如何抓取”。这样看起来非常条理和清晰。但是JPA没有这么做。它只提供了fetch=FeatchType.LAZY or FetchType.EAGER.但是我们必须明白这两种选项对应的实际抓取策略是什么。测试用例:@...
2018-06-21 16:53:06
551
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人