使用注解配置spring

  • 步骤
    – 导包 (在基础包的基础上,再加一个spring-aop)

    – 为主配置文件引入新的命名空间(约束)

    – 开启使用注解代理配置文件

    – 在类中使用注解完成配置

  • 将对象注册到容器

  • 修改对象的作用范围(默认是单例)

  • 值类型注入
    方式1(通过反射的Field赋值,破坏了封装性)

    方式2(通过set方法赋值,推荐使用)

  • 引用类型注入
    方式1(自动装配,问题:如果匹配多个类型一致的对象,将无法选择具体注入哪一个对象)

    方式2(使用@Qualifier注解告诉spring容器自动装配哪个名称的对象)

    方式3(手动注入,指定注入哪个名称的对象)推荐

  • 初始化|销毁方法

spring中的aop

  • aop思想介绍:

  • spring中的aop概念:

  • spring实现aop的原理:
    –动态代理(优先)
    被代理对象必须要实现接口,才能产生代理对象.如果没有接口将不能使用动态代理技术
    –cglib代理(没有接口)
    第三方代理技术,cglib代理.可以对任何类生成代理.代理的原理是对目标对象进行继承代理. 如果目标对象被final修饰.那么该类无法被cglib代理.

  • aop名词学习:

spring中的aop演示

  • 步骤(xml配置)
    –1.导包4+2
    spring的aop包:
    spring-aspects-4.2.4.RELEASE.jar
    spring-aop-4.2.4.RELEASE.jar
    spring需要第三方aop包:
    com.springsource.org.aopalliance-1.0.0.jar
    com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar
    –2.准备目标对象

    –3.准备通知


    –4.配置进行织入,将通知织入目标对象中