1.增强
1.1 前置增强
<aop:before method="方法名" pointcut-ref="切入点id" />
方法: public void before(JoinPoint jp);
1.2 后置增强
<aop:after-returning method="方法名" pointcut-ref=".."
returning="ret"/>
方法: public void afterReturning(JoinPoint jp,Object ret);
1.3 抛出异常增强
<aop:after-throwing method=".." pointcut-ref=".." throwing="e">
方法: public void afterThrowing(JoinPoint jp,Exception e)
1.4 最终增强
<aop:after method="" pointcut-ref=""/>
方法: public void after(JoinPoint jp);
1.5 环绕增强
<aop:around method="" pointcut-ref=""/>
方法: public Object around(ProceedingJoinPoint jp){
//执行目标方法,并接受目标方法的返回值.
Object ret = jp.proceed();
return ret;
}
2.IOC注解
2.1 IOC注解方式将bean的定义信息和Bean实现类结合 在一起。(把bean的配置从 XML文件中提取注 解方式)(零配置)
2.2 Spring提供的注解
@Component:Bean组件的定义
@Repository:Dao层的注解
@Service:Service层的注解
@Controller:控制层注解
@Autowired:自动装配Bean(注入bean)
@Qualifier:指定Bean的名称
注意:@Autowired可以用于属性,也可以用于属性的setter方法
2.3配置加载注解注解的类
<context:component-scan base-package="包名1,包名2"/>
注意:多个包可以用逗号分隔
2.4@Resource注解
1) Resource是javax提供的自动装配注解
2) 默认是按名字装配(如果没有指定name属性值,默认会按属性名去装配,如果属性名匹配不到,再会根据类型去匹配)
3.AOP注解
3.1提供的注解
@Aspect
@Before
@AfterReturning
@Around
@Pointcut
3.2AOP注解开发步骤
第一步:写增强类(@Aspect)
第二步:写增强方法
@Before
@AfterReturning
@AfterThrowing
@Around
@After
第三步:配置增强注解(@Before)
第四步:启动aspectj注解
<aop:aspectj-autoproxy/>
第五步: 测试