spring框架的搭建和工厂模式,依赖注入Set注入
程序员文章站
2022-06-13 13:01:27
...
spring框架的搭建和工厂模式
1.框架的搭建:在maven中引入spring框架:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.1.6.RELEASE</version>
</dependency>
2.新建个spring-context.xml核心配置文件
<?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">
//中间定义bean,管理bean
</bean>
3.关于工厂模式:控制反转(IOC)和 DI(依赖注入)
控制反转行为: 就是在spring-context.xml文件中定义<bean>文件.这个bean文件就是对象。原来的模式是:要使用这个对象,就new一个当前对象,现在反转就是交给spring,这个bean文件写着对象的路径。要使用对象,就不用new了,直接使用spring工厂方法获取这个对象,其实就是解耦。
工厂的本质,通过properties来自己实现一个工厂:
关于DI依赖注入:三种注入方式
1.set注入
(一个标准的javabean,包含8种类型,还有引用类型)
<!-- set注入-->
<bean id="user" class="top.superwang.entity.User">
<property name="id" value="11"/>
<property name="password" value="12asd"/>
<property name="sex" value="male"/>
<property name="age" value="19"/>
<property name="bornDate" value="2010/01/19 12:12:22"/>
<!-- 数组-->
<property name="hobby">
<array>
<value>game</value>
<value>computer</value>
</array>
</property>
<!-- 集合-->
<property name="phones">
<set>
<value>1231311</value>
<value>122543311</value>
</set>
</property>
<property name="name">
<list>
<value>wang1</value>
<value>wang2</value>
</list>
</property>
<property name="countries">
<map>
<entry key="ch" value="中国"/>
<entry key="us" value="美国"/>
</map>
</property>
<property name="files">
<props>
<prop key="url">http://www.baidu.com</prop>
<prop key="name">uuuu</prop>
</props>
</property>
<!-- 自建类型-->
<property name="address" ref="address"/>
</bean>
自建类型set注入: