- 博客(12)
- 收藏
- 关注
原创 AspectJ基于注解的实现
基本注解 Advice的类型 @Before @AfterReturning @Around @AfterThrowing @After 表达式 execution(expression) expression(?)) execution(public * *(..)) 匹配所有的public方法 execution(* com.ywkj.*(..)) 匹配指定包下的所有
2016-09-23 21:14:34
404
原创 Spring AOP的自动代理
一般情况下的代理针对每一个对象的只能增强都需要新建一个bean标签,当有很多类的时候就显得比较繁琐,这时Spring为我们提供了自动代理 情况1:BeanNameAutoProxyCreator 根据Bean的名称来创建代理 配置:修改一般情况下的代理类ProxyFactoryBean为BeanNameAutoProxyCreator <bean class="org.
2016-09-23 20:07:47
304
原创 Spring Aop增强
Spring AOP是纯JAVA代码实现的,不需要专门的编译过程和类加载器,在运行期间通过代理方式向目标类织入增强代码,扩展JAVA语言 AOP的底层原理:JDK的动态代理和CGLIB的动态代理 通知:是指拦截到JoinPoint之后所要做的事 AOP通知的类型 前置通知: MethodBeforeAdvice 后置通知: AfterReturningAdvice 环绕
2016-09-23 19:38:41
228
原创 Spring的DI使用XML方式
DI:为使用IOC创建的对象设定相关的属性,即先有IOC,然后才有DI 使用XML方式的DI 方式一:使用构造函数的形式 一般用的不多,忽略 方式二:使用setter方法 在applicationContext.xml文件中配置 a.使用property标签 1.普通类型,直接使用value书写 2.引用类型,使用ref,值就是上面定义的Ca
2016-09-23 19:21:13
232
原创 Spring的IOC
IOC:Inverse of Control,就是将原本程序中手动创建的对象的过程交给Spring去创建 Spring的IOC 第一步:引入Spring的jar包 context,bean,expression和core 第二步:编写类,假设叫做Book.java 第三步:编写applicatonContext.xml文件 配置该文件,有三种方式 1. 使用构造函数(Book需要提
2016-09-23 18:53:25
158
原创 Hibernate查询缓存
HiberNate的查询缓存1. 是什么 查询缓存是二级缓存的增强版,二级缓存不能缓存对象的属性,但是查询换粗是可以的 2. 怎么办 查询缓存依赖二级缓存,在Hibernate.cfg.xml文件中必须要先配置好二级缓存,才能配置使用查询缓存 1. 在Hibernate.cfg.xml文件中开启查询缓存 <property nam
2016-09-21 11:37:32
710
原创 Hibernate的二级缓存
是什么 Hibernate的一级缓存是session级别的缓存,这是远远不够的,因此Hibernate提供了二级缓存机制,它是SessionFactory级别的缓存,也就是说当session关闭的时候,下次再查询相关的数据是会从二级缓存读取的,而不是再次发送SQL请求 怎么办 默认的情况下,Hibernate不会启动二级缓存,需要手动配置 1. 在Hibernate.xfg.xml
2016-09-21 10:30:19
183
原创 Hibernate的离线条件查询
为什么 在多条件查询的时候,需要在Web层封装相应的参数到Criteria,而在Dao层才真正的去执行查询数据库的操作,所以需要在Web层创建Criteria并将其传递到Dao层,这个时候就不能在Web层使用session.createCriteria来创建Criteria 怎么办 使用离线条件查询 1.使用反射创建Criteria对象 //从Web层获取数据封装到crite
2016-09-20 20:08:53
4337
1
原创 Hibernate中同一个线程获取相同session
为什么 在Hibernate中事物是与session相关的,一般情况下session会在Service层创建, Service中 Session session = HibernateUtils.openSession() tx = session.beginTransaction(); dao.save(); dao.xxx(); tx.commit(); 在Dao中就需
2016-09-20 19:53:54
1272
原创 Hibernate的事物机制
事物的性质 原子性:一个事物里的操作要么都执行,要么都不执行 一致性:事物执行的前后,数据保持完整性 隔离性:一个事物对数据的操作不受别的事物的影响 持久性:一个事物对数据的操作在事物提交后,其对数据的修改时永久的 隔离性带来的问题: 读方面: 读取脏数据: 事物A读取了事物B未提交的数据 不可重复读: 事物A读取了事物B已经提交的数据(update),造成先后读取
2016-09-20 19:25:53
289
原创 Hibernate的抓取策略
1.立即检索与延迟检索 当需要查询出一个对象的时候,立即检索会立刻发送SQL语句,而延迟检索则会在该对象被使用的时候才会发送SQL语句 a. 单张表的查询中,在class标签上设置lazy属性即可 false:不使用延迟加载 true :使用延迟加载 b. 一对多 设置fetch(SQL语句的形式,写法)和lazy(是否延迟加载) 对于一的一方: fetch:join
2016-09-20 16:20:09
203
原创 java内部类
内部类:嵌套类 外部类:宿主类 内部类:将一个类影藏在外部类中,不许同包的其它类访问该类 内部类可以访问外部类的私有数据,外部类不能直接访问内部类的实现细节(不论是private还是public) 内部类编译后的class文件名:outer$inner.class 成员内部类: 访问外部类的成员:outerClassName.this.fieldName 非静态内部类在外部类之
2016-09-14 17:11:00
195
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人