当前位置: 首页 >Java技术 > 关于spring ioc底层原理(图解)+ 代码样例以及对IOC的简单理解

关于spring ioc底层原理(图解)+ 代码样例以及对IOC的简单理解

对IOC的理解:这是一种设计思想,目的为了降低类与类之间的耦合度。IOC也叫“”控制反转“”,所以理解他从两方面:

1.控制(谁控制谁,控制什么)

--首先控制是容器控制了对象。控制了外部资源获取(资源不只是对象还有文件等)

2.反转(什么是反转)

--在本来的程序设计上,我们都会再类中设计对象,都是我们主动创建对象或者直接通过对象进行获取东西,这就相当于是正转。而当从IOC的设计角度来思考,当容器帮我们创建对象及注入时依赖对象,此时对象是一个被动依赖的关系,所以是反转。

1.IOC底层原理使用技术

(1)xml配置文件

(2)dom4j解析配置的xml文件

(3)工厂的设计模式

(4)反射 

2.图解:

关于spring ioc底层原理(图解)+ 代码样例以及对IOC的简单理解 _ JavaClub全栈架构师技术笔记

根据图中的思路见代码(当然创建项目目录要注意xml文件是在src下的,下面有项目目录截图):

下面是一个类: 

package cn.itcast.ioc;public class User {	public void add(){		System.out.println("add.........");	}}

第一步:配置bean文件,创建想创建的类,也就是上面的类。

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">	<!-- IOC的入门 -->	<bean id="userservice" class="cn.itcast.ioc.User"></bean> </beans>

第二步 :首先创建一个工厂类,然后通过doc4j解析xml文件,最后通过反射来创建对象。

package cn.itcast.ioc;import org.springframework.beans.factory.BeanFactory;import org.springframework.beans.factory.xml.XmlBeanFactory;import org.springframework.core.io.ClassPathResource;public class TestIoc {	public static void main(String[] args) {		BeanFactory factory = new XmlBeanFactory(				new ClassPathResource("beans01.xml"));		User user = (User)factory.getBean("userservice");		System.out.println(user);		user.add();	}}

 项目目录以及所需要的jar包截图:

关于spring ioc底层原理(图解)+ 代码样例以及对IOC的简单理解 _ JavaClub全栈架构师技术笔记

 

 

作者:small__snail__5
来源链接:https://blog.csdn.net/small__snail__5/article/details/81408737

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。





本文链接:https://www.javaclub.cn/java/112960.html

标签:SpringIOC
分享给朋友:

“关于spring ioc底层原理(图解)+ 代码样例以及对IOC的简单理解” 的相关文章