Spring如何实现IOC?
1、IOC书面意思就是控制反转,实际上就是不再用new的方式创建对象,把创建对象的权力交给spring容器,削减了程序之间的耦合性。

2、Spring具体如何实现解耦如图。

3、另外IOC中bean标签是用来配置具体实体类的。它有几个属性:Id:给对象在容器中提供一个唯一标识。用于获取对象。class:指定类的全限定类名。用于反射创建对象。默认情况下调用无参构造函数。scope:指定对象的作用范围。 singleton :默认值,单例的. prototype :多例的. request :WEB 项目中,Spring 创建一个 Bean 的对象,将对象存入到 request 域中. session :WEB 项目中,Spring 创建一个 Bean 的对象,将对象存入到 session 域中. global session :WEB 项目中,应用在 Portlet 环境.如果没有 Portlet 环境那么 globalSession 相当于 session.其他都好理解,globalSession 可能比较少见,借助这个图就好理解了。

4、IOC的注入方式一:set注入。实体类中引用set方法如图。bean.xml中导入<property>标签。


5、IOC的注入方式二:构造器注入。实体类中引用有参构造方法:如图bean.xml中导入<constructor-arg>标签如图。

