Gavin

Tomorrow is another day

Spring——基于注解的配置

Spring注解配置 从 Spring 2.5 开始就可以使用注解来配置依赖注入。使用注解的方式使我们无需在XML中配置一个Bean引用,更加简单和方便。 注解配置默认情况下在Spring中是关闭的,我们需要在配置文件中使用<context:annotation-conf...

2018-07-15 11:21:24

阅读数 1860

评论数 0

Spring——AOP(2)之Spring 2.0 中的配置

Spring 2.0 AOP Spring2.0提供了一种更简便也更强大的方式来编写切面,可以通过基于schema的方式,也可以通过@AspectJ注解的方式,这两种方式都提供了完整的AspectJ切入点语言中的通知和使用方法,但是依然使用的是Spring AOP的织入方式,也就是通过代理的方式...

2018-06-06 12:15:57

阅读数 327

评论数 0

AspectJ——基于注解的开发方式

基于注解的开发方式 AspectJ5版本支持了基于注解的开发方式,当然其仍然需要AspectJ自己的编译器。 要使用基于注解的开发方式,需要为项目引入aspectjweaver.jar包,该Jar包也在AspectJ安装目录下的lib目录中。aspectjweaver.jar中包含了aspec...

2018-05-11 10:46:07

阅读数 1156

评论数 0

AspectJ——切入点语法(7)之this、target、args、if以及逻辑运算

更多的切入点语法 本节介绍AspectJ中更多的切入点语法,有很多在之前都用过,这里做一个总结。 0.捕获this引用的是特定类型对象的连接点 AspectJ提供了this原生切入点来捕获所有的连接点,这些连接点处的this引用的是一个特定的类型。 我们在Test13包下做测试,首先业...

2018-05-10 15:40:48

阅读数 598

评论数 0

AspectJ——定义通知

定义通知 切入点定义了你对哪些连接点感兴趣,通知则定义了当遇到这些连接点时要做什么。通过块包含直观的Java代码,它看起来非常像Java方法,只不过不能从应用程序中调用它。 0.前置通知 前面的大部分示例都使用了before()前置通知,它在触发它的连接点之前执行通知。关于它的用法这里不...

2018-05-09 14:59:50

阅读数 276

评论数 0

AspectJ——切入点语法(6)之cflow与cflowbelow

捕获基于控制流程的连接点 cflow与cflowbelow提供了一种捕获一个pointcut控制流中所有连接点的功能。 0.cflow的用法 假如你想捕获在程序控制流程内遇到的所有连接点,这些连接点都在某一个特定的连接点之后,你可以考虑使用cflow。 什么是程序控制流?程序控制流就是...

2018-05-09 13:39:20

阅读数 301

评论数 0

AspectJ——切入点语法(5)之限制连接点的作用域

限制连接点的作用域 在定义切入点的时候,我们经常遇到的需求是:基于所关注的程序作用域,限制捕获连接点的范围。 本节将介绍within以及withincode的用法。within可以指定切入点的作用域在包中或者类中,withincode可以通过方法签名限制连接点的作用域在方法中。 0.捕获...

2018-05-08 13:49:47

阅读数 272

评论数 0

AspectJ——切入点语法(4)之捕获属性上的连接点

捕获属性上的连接点 AspectJ提供了get(Signature)和set(Signature)切入点的形式,来捕获可能发生在类属性上的任何访问和修改。这也是AspectJ的一个比较受争议的特性,因为它会有效地破坏类的封装性,特别是当把被监视的属性声明为protected或者private时。...

2018-05-07 21:10:30

阅读数 256

评论数 0

AspectJ——切入点语法(3)之捕获类和对象构造上的连接点

捕获类和对象构造上的连接点 在Java中,一个类在实例化之前要经过三个步骤:装载、连接、初始化。装载即通过类型的完全限定名,产生一个代表该类型的二进制数据流,解析这个二进制数据流为方法区内的内部数据结构,并且创建一个表示该类型的java.lang.Class类的实例。连接即Java虚拟机为类变量...

2018-05-07 19:38:20

阅读数 426

评论数 1

AspectJ——切入点语法(2)之捕获异常处理上的连接点

捕获异常处理上的连接点 在Java中抛出异常时,会将其向上传递给调用链,直到它被try/catch块中的catch语句处理,或者它到达Java运行库并在控制台上引发一条出错的消息。如果捕获到Java异常,就会把该异常作为一个对象传递给相应的catch语句,在其中处理该异常。 使用切面可以捕获异...

2018-05-06 17:08:31

阅读数 557

评论数 0

AspectJ——切入点语法(1)之捕获方法上的连接点

捕获方法上的连接点 0.捕获方法调用 在调用具有特定签名的方法时,你想捕获它,可以使用call(Signature)切入点,它的语法是: pointcut [切入点名字](参数列表): call(<可选的方法修饰符> [返回类型] [类名]...

2018-05-05 22:54:58

阅读数 579

评论数 0

AspectJ——简介以及在IntelliJ IDEA下的配置

0.AspectJ简介 在上篇文章【Spring——AOP(1)之Spring1中的配置】中,简要介绍了AOP(Aspect-Oriented Programming,面向切面编程)的概念,并介绍了AOP中的一些术语,最后通过使用Spring1中编写切面、配置切面的方式讲解了一个案例。本节我们介...

2018-05-01 15:40:08

阅读数 2487

评论数 3

Spring——AOP(1)之Spring1中的配置

AOP介绍 AOP(Aspect-Oriented Programming),即面向切面编程,作为面向对象(OOP,Object-Oriented Programming)的一种补充,广泛应用于处理一些具有横切性质的系统级服务,比如安全性检查、日志记录、事务管理等。 在OOP中,我们以类(cl...

2018-04-15 14:44:51

阅读数 243

评论数 0

Spring——装配Bean

基本装配 在Spring容器内拼凑Bean叫做装配。装配Bean的时候,需要告诉哪些Bean以及容器如何使用依赖注入将它们配合在一起。 使用XML装配 XML是最常见的Spring应用系统配置源。 几种Spring容器都支持使用XML装配Bean,包括: XmlBeanFactor...

2018-03-12 22:36:39

阅读数 287

评论数 0

Spring——ApplicationContext & Bean的生命周期

关于ApplicationContext和BeanFactory 如果使用ApplicationContext,则配置的Bean如果scope属性是singleton,那么当容器被加载时,这些Bean就会被实例化。好处是可以预先加载,速度快;缺点是耗内存。 如果使用BeanFactory,则当...

2018-03-11 23:23:16

阅读数 632

评论数 0

Spring——DI配合接口编程案例

体验一下Spring的DI配合接口编程,完成一个字母大小写转换的案例: 步骤如下: 1.创建一个接口ChangeLetter public interface ChangeLetter { // 声明一个方法 public String change(); } 2.写两个实...

2018-03-11 22:31:49

阅读数 206

评论数 0

Spring——入门

Spring是什么? Struts是Web框架 Hibernate是ORM框架,处于持久层 Spring是容器框架,用于配置Bean,并维护Bean之间关系的一种框架。 Spring中有一个非常重要的概念:Bean,Bean是Java中的任何一种对象,它可以是Ja...

2018-03-11 16:23:02

阅读数 1966

评论数 5

Hibernate——对象标识符生成方法(主键增长策略)

Hibernate对象标识符(OID) Hibernate中的持久化对象对应数据库中的一张数据表,因此区分不同的持久化对象,在Hibernate中是通过OID(Object ID,对象标识符)来完成的,从表的角度看,OID对应表的主键。从类的角度看,OID对应类的主键属性。 对象标识符生成...

2018-03-10 21:48:24

阅读数 138

评论数 0

Hibernate——关系映射之多对多

关系映射之多对多 多对多的关系在操作和性能方面都不太理想,所以多对多的映射使用较少,实际使用中最好转换成一对多的对象模型;Hibernate会为我们创建中间表,转换成两个一对多。 经典案例:学生<–>选课,如下将学生选课关系用中间表来关联。 这...

2018-03-10 20:20:25

阅读数 185

评论数 0

Hibernate——关系映射之一对一

关系映射之一对一 基于主键的一对一 基于主键的一对一就是说:对于从表,它的主键就是它的外键。那么这个一对一关系就非常明确。 经典案例:人<–>身份证,Person的id同时是IDCard的id 我们建立项目HibernateOneToOn...

2018-03-10 20:09:32

阅读数 136

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭