您的位置:首页 > 编程语言 > Java开发

如何用spring进行IOC注入

2019-07-18 09:41 211 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/Koumi_/article/details/96423155

第一步 我们先导入需要使用的依赖

此为spring的核心依赖
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.10.RELEASE</version>
</dependency>

<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>

第二步
我们在main文件包下创建一个文件夹

在Java文件夹中创建实体类

实体类定义属性及获取其getset方法以及空的构造、有参的构造方法写完之后就可以进行第三步了

第三步
创建spring文件
创建文件的方式如下图
在此文件夹下new一个spring文件


然后给这个文件取文件名

取名之后点击Finish就创建成功了

第四步
在spring文件中进行赋值

<!-- 将实体类的创建对象的权力反转给spring工厂 class:需要交给spring管理产生对象的类 id:该spring工厂产生的类的对象的唯一名称
注入:赋值 属性注入 -->
<bean id="test" class="com.xh.entity.test">
<property name="id" value="1"></property>
<property name="name" value="拉拉"></property>
</bean>
<!-- 构造注入 通过实体类的构造方法给对象初始化 -->
<bean id="t" class="com.xh.entity.test">
<constructor-arg name="name" value="小海"></constructor-arg>
</bean>
<!-- 产生的对象中有狗的对象
ref references 引用
依赖注入 IOC的核心
-->
<bean id="t1" class="com.xh.entity.test">
<property name="id" value="2"></property>
<property name="name" value="小黑"></property>
<property name="dog"  ref="dog"></property>
</bean>
<!-- spring工厂代理产生Dog对象 -->
<bean id="dog" class="com.xh.entity.dog">
<property name="id" value="1"></property>
<property name="name" value="小兰"></property>
</bean>

写完之后创建一个类进行调用

//获取spring的工厂对象
BeanFactory f=new XmlBeanFactory(new ClassPathResource("applicationContext.xml"));
//通过工厂获取对象
test t = (com.xh.entity.test) f.getBean("test");
System.out.println(t.getName()+"\t"+t.gettId());

//构造注入测试
//如果文件在同一实体类中则需要在前面引包
test t = (com.xh.entity.test) f.getBean("t1");
System.out.println(t.getName());
System.out.println(t.getDog().getName());
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: