IOC(控制反转)就是将传统的代码实现对象属性定义的工作通过配置xml来交予spring容器创建管理,举例:
传统上创建完接口后,需要有个实现类实现接口的功能,不过涉及到接口中的任何修改,都会牵一发动全身修改好多代码
IOC通过工厂+反射+配置文件的操作,达到了接口和实现类的解耦,虽然接口和工厂会出现新耦合,不过这种只需要改动xml文件的配置就可以迎合改造。
·spring中的applicationContext.xml采用schema规范,id表示bean的唯一表示,class表示项目路径
spring的工厂类有两种实现方式
1)通过本地硬盘xml文件实例化:FileSystemXmlApplicationContext
2)通过项目根目录下的xml文件实例化:ClassPathXmlApplicationContext
spring Bean 的生命周期
1)init-method :Bean被初始化的时候执行的方法
2)destroy-method :Bean被销毁的时候执行的方法(Bean是单例创建,工厂关闭)
Bean的作用范围scope=" singleton || prototype ||request || session"
spring的依赖注入
1)xml实现注入,name='' " value=" "
2)SpEL属性注入
3)list注入属性值