随笔分类 - Spring
摘要:重要:schema-defined aspects只支持singleton model,即 基于配置文件的aspects只支持单例模式
阅读全文
摘要:简介允许一个切面声明一个实现指定接口的通知对象,并且提供了一个接口实现类来代表这些对象由中的元素声明该元素用于声明所匹配的类型拥有一个新的parents(因此得名)配置: public void recordUsage(){ usageTracked.incrementUseCou...
阅读全文
摘要:(六)Advice parameters(advice带参数的情况)例子:修改MyAspect(添加around_init方法):package com.aop.schema;import org.aspectj.lang.ProceedingJoinPoint;/**** 切面类**/public...
阅读全文
摘要:前置通知(Before advice)在某个连接点(join point)之前执行的通知,但不能阻止连接点前的执行(除非它抛出异常)返回后通知(After returning advice)在某个连接点(join point)正常完成后执行的通知抛出异常后通知(After throwing advi...
阅读全文
摘要:pointcut(切断点)表达式:execution(public * *(..))execution(* set*(..))execution(* com.xyz.service.AccountService.*(..))execution(* com.xyz.service..(..))exec...
阅读全文
摘要:Spring所有的切面和通知器都必须放在一个内(可以配置包含多个元素),每个包含pointcut,advisor和apsect元素。ps:他们必须按照这个顺序进行声明:用来定义切入点,该切入点可以重用;:用来定义只有一个通知和一个切入点的切面;:用来定义切面,该切面可以包含多个切入点和通知,而且标...
阅读全文
摘要:AOP:Aspect Oriented Programing的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序程序功能的统一维护的一种技术主要的功能是:日志记录,性能统计,安全控制,事务处理,异常处理...AOP的实现方式:预编译 --- AspectJ运行期动态代理(JDK动态代理...
阅读全文
摘要:基于XML配置基于注解配置基于Java类配置Bean定义@Component衍生类@Repository@Service @Controller@Configuration标注类,@Bean标注提供Bean方法Bean名称通过 id或name指定@Component("person")@Be...
阅读全文
摘要:例子:定义泛型Storepackage javabased;public interface Store {}两个实现类StringStore,IntegerStorepackage javabased;public class IntegerStore implements Store {}pac...
阅读全文
摘要:默认@Bean是单例的,但可以使用@Scope注解来覆盖此如下:@Configurationpublic class MyConfiguration { @Bean @Scope("prototype") public MovieCatalog movieCatalog(){ //... }}Be...
阅读全文
摘要:学习如何使用@ImportResource 和 @Value 注解进行资源文件读取例子:先创建一个MyDriverManager类(模拟读取数据库配置信息)package com.beanannotation;public class MyDriverManager { public MyDrive...
阅读全文
摘要:基于Java配置选项,可以编写大多数的Spring不用配置XML,但有几个基于Java的注释的帮助下解释。从Spring3.0开始支持使用java代码来代替XML来配置Spring,基于Java配置Spring依靠Spring的JavaConfig项目提供的很多优点。通过使用@Configurat...
阅读全文
摘要:Spring不但支持自己定义的@Autowired注解,还支持由JSR-250规范定义的几个注解,如:@Resource、 @PostConstruct及@PreDestroy。 1. @Autowired @Autowired是Spring 提供的,需导入Package: org.springfr
阅读全文
摘要:1)@Resource(JSR-250标准注解,推荐使用它来代替Spring专有的@Autowired注解) Spring 不但支持自己定义的@Autowired注解,还支持几个由JSR-250规范定义的注解,它们分别是@Resource、@PostConstruct以及@PreDestroy。 @...
阅读全文
摘要:按类型自动装配可能多个bean实例的情况,可以使用Spring的@Qualifier注解缩小范围(或指定唯一),也可以指定单独的构造器参数或方法参数可用于注解集合类型变量例子:package com.mypackage;import org.springframework.beans.factory...
阅读全文
摘要:可以使用@Autowired注解那些众所周知的解析依赖性接口,比如:BeanFactory,ApplicationContext,Environment,ResourceLoader,ApplicationEventPublisher,MessageSourcepackage com.mypacka...
阅读全文
摘要:可以将@Autowired注解为“传统”的setter方法package com.mypackage;import org.springframework.beans.factory.annotation.Autowired;public class SimpleMovieLister { priv...
阅读全文
摘要:@Required注解是用于bean属性的setter方法 这个注解仅仅表示,受影响的bean属性必须在配置时被填充,通过在bean定义会通过自动装配一个明确的属性值 PS:这样如果任何带有@Required的属性未设置的话 将会抛出BeanInitializationException异常
阅读全文
摘要:(一)Bean的定义先定义一个BeanAnnotationpackage com.mypackage;import org.springframework.stereotype.Component;@Componentpublic class BeanAnnotation { public void...
阅读全文
摘要:Bean管理的注解实现Classpath扫描与组件管理类的自动检测与注册Bean@Component,@Repository,@Service,@Controller 以下单独讲解:@Required@Autowired@Qualifier@Resource(一) Classpath扫描与组件管理从...
阅读全文