spring基础

本文详细介绍了IoC(依赖注入)和AOP(面向切面编程)在Spring框架中的应用,包括常用注解如@Autowired、@Resource、@Component等的使用方法及作用,以及基础动态代理原理。深入探讨了如何通过配置实现对象的自动装配和面向切面编程,提升开发效率和代码可维护性。

1.IoC---Injection obejct controller
   常用注解:--在application.xml中的添加<context.annotation-config/>
   (1)@Autowired(自动装配)
         a)默认按类型by type
         b)如果要使用by Name,使用@Qulifier
         c)写在private field(第三种注入形式)--破坏封装性
         d)如果写在set上,@Qulifier需要写在参数上
          
  (2)@Resource
     a)默认按名称,名称找不到,按类型
     b)可以指定特定的名称
     
     
  (3)@Component,@Service,@Controller,@Repository
    a)初始化的名字默认为类名首字母小写
        b)可以指定初始化bean的名字
  (4)@Scope(Singleton,prototype)
  (5)@PostConstruct=init-method(类初始化后要执行的操作);@PreDestroy=destory-method(容器销毁之前要执行的操作)
       
2.AOP-面向切面编程Aspect-Oriented-Programming---横向编程
    (1)基础动态代理:
        a)jdk动态代理
            通过Proxy.newInstance(ClassLoader classLoader,Interfaces,InvokcationHandler),生成代理对象,代理对象实现了被代理对象的所有接口,因而代理对象包含被代理
            对象的所有方法,这些方法的执行是交给传入的第三个参数,也就是InokcationHandler的实现类来处理,在InvokcationHandler中,通过调用invoke方法来实现代理对
            实现的所有被代理对象的方法调用,在invoke方法首先要加入代理对象自身的业务逻辑,然后再调用传入的被代理对象实例的相关方法。这就是整个动态代理实现过程
           

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值