错过春华 亦可秋实
Spring中使用动态代理实现环绕通知 Spring中使用动态代理实现环绕通知
引言: 因为环绕通知类似于动态代理的全过程,所以可以使用动态代理技术实现类似的环绕通知 ArithmeticCalculator.java ArithmeticCalculatorImpl.java ArithmeticCalculat
2020-03-11
Spring AOP的环绕通知@Around Spring AOP的环绕通知@Around
引言: Spring AOP可以使用@Around注解来实现环绕通知,环绕通知需要携带ProceedingJoinPoint类型的参数,环绕通知类似于动态代理的全过程,ProceedingJoinPoint类型的参数可以决定是否执行目标方法
2020-03-11
Spring AOP的异常通知@AfterThrowing Spring AOP的异常通知@AfterThrowing
引言: Spring AOP可以使用@AfterThrowing注解来实现异常通知,在目标方法出现异常时执行的通知。在异常通知中可以访问到异常对象,且可以指定在出现特定异常时才执行通知代码。 ArithmeticCalculator.j
2020-03-11
Spring AOP的返回通知@AfterReturning Spring AOP的返回通知@AfterReturning
引言: Spring AOP可以使用@AfterReturning注解来实现返回通知, 在目标方法正常结束时(出异常时就不执行该通知),执行的通知。在返回通知中可以访问目标方法的返回值,即执行结果 ArithmeticCalculato
2020-03-11
Spring AOP的后置通知@After Spring AOP的后置通知@After
引言: Spring AOP可以使用@After注解来实现后置通知, 在目标方法执行后(无论是否发生异常)执行一段代码(可以用来做日志)。但是在后置通知中还不能访问目标方法的执行结果。 ArithmeticCalculator.java
2020-03-11
Spring AOP的前置通知@Before Spring AOP的前置通知@Before
引言: Spring AOP可以使用@Before注解来实现前置通知, 在方法开始执行之前执行一段代码(可以用来做日志) ArithmeticCalculator.java ArithmeticCalculatorImpl.java L
2020-03-10
基于AspectJ注解来使用Spring AOP 基于AspectJ注解来使用Spring AOP
引言: AspectJ:Java社区里最完整最流行的AOP框架.在Spring2.0以上版本中, 可以使用基于AspectJ注解或基于XML配置的AOP 1、在Spring中启用AspectJ注解支持 要在Spring应用中使用Aspec
2020-03-09
Spring AOP的相关基础介绍 Spring AOP的相关基础介绍
引言: Aop(Aspect-Oriented Programming,面向切面编程)是一种新的方法论,是对传统OOP(Object-Oriented Programming,面向对象编程)的补充 AOP简介 AOP主要编程对象是切面(a
2020-03-09
Spring中使用动态代理解决日志需求 Spring中使用动态代理解决日志需求
引言: 使用动态代理技术实现在类的方法中加入日志信息。通过动态代理的方式写入日志信息不会给原来的类带来代码混乱和分散的问题,便于维护 ArithmeticCalculator.java ArithmeticCalculatorImpl.
2020-03-09
Spring中的泛型依赖注入 Spring中的泛型依赖注入
引言: Spring可以为子类注入子类对应的泛型类型的成员变量的引用 User.java BaseService.java UserService.java BaseRepository.java UserRepository.java
2020-03-08
Spring中使用注解配置Bean(2),使用@Autowired注解自动装配属性 Spring中使用注解配置Bean(2),使用@Autowired注解自动装配属性
引言: 在Spring的配置文件中使用<context:component-scan>元素时,会自动注册 AutowireAnnotationBeanPostProcesser 实例,该实例会自动装配具有 @Autowired
2020-03-08
Spring中使用注解配置Bean(1) Spring中使用注解配置Bean(1)
引言: 在Spring中通过添加注解的方式来配置Bean,Spring容器会自动管理所扫描包(可以自行配置所要扫描的包的路径)下的标有@Component、@Controller、@Service、@Repository注解的类 Tes
2020-03-08
Spring通过FactoryBean来配置bean Spring通过FactoryBean来配置bean
引言: 通过实现FactoryBean接口来配置bean Car.java CarFactoryBean.java Main.java beans-beanfactory.xml Car.javapackage com.yczlab.
2020-03-08
Spring中使用工厂方法配置Bean(静态工厂,实例工厂) Spring中使用工厂方法配置Bean(静态工厂,实例工厂)
引言: 通过静态工厂方法来配置bean,注意不是配置静态工厂方法实例,而是配置bean实例。通过实例工厂方法来配置bean,先配置工厂的bean实例,再配置所需bean实例。 Car.java StaticCarFactory.java
2020-03-08
Spring IOC容器对Bean生命周期的管理 Spring IOC容器对Bean生命周期的管理
引言: Spring的IOC容器对Bean生命周期的管理,包括Bean的后置处理器、初始化和销毁等 Car.java MyBeanPostProcessor.java Main.java beans-cycle.xml Car.jav
2020-03-08
Spring中使用SpEL为Bean的属性动态赋值 Spring中使用SpEL为Bean的属性动态赋值
引言: 可以在Spring中使用SpEL语言为Bean的属性赋一个字面值,引用其他类的静态属性,引用其他的Bean,引用其他Bean的属性,还可以在SpEL中使用运算符。 Address.java Car.java Person.jav
2020-03-08
Spring配置Bean时使用外部属性文件(比如配置数据库源) Spring配置Bean时使用外部属性文件(比如配置数据库源)
引言: Spring在配置某些Bean时可以使用外部的属性文件。使用外部化属性文件中的属性,在之后开发过程中便于修改,只需修改外部的属性文件即可。比如配置数据库时。 Main.java beans-properties.xml db.p
2020-03-08
Bean的作用域(单例,原型) Bean的作用域(单例,原型)
引言: 使用bean的scope属性来配置bean的作用域 Car.java Main.java beans-scope.xml Car.javapackage com.yczlab.spring.beans.scope; publ
2020-03-07
1 / 2