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

Spring -- Spring 的 Bean 的管理 XML 的方式

2018-03-02 18:59 519 查看

Spring 生成 Bean 的时候的三种方式(了解)

无参的构造方法的方式

<!-- 方式一:无参的构造方法的实例化 -->
<bean id="bean" class="packageName.Bean"></bean>


静态工厂实例化的方式

// 提供一个工厂类
public class BeanFactory{
public static Bean getBean(){
return new Bean();
}
}

<!-- 方式二:静态工厂实力化 Bean -->
<bean id="bean" class="packageName.BeanFactory" factory-mthod="getBean"/>


实例工厂实例化的方式

// 提供 Bean 的实例工厂
public class BeanFactory{
public static Bean getBean(){
return new Bean();
}
}

<!-- 方式二:实例工厂实例化 Bean -->
<bean id="beanFactory" class="packageName.BeanFactory"></bean>
<bean id="bean" factory-bean="beanFactory" factory-method="getBean"></bean>


Spring 的 Bean 的属性注入:

构造方法的方式注入属性

<!-- 第一种:构造方法的方式 -->
<bean id="bean" class="全类名">
<constructor-arg name="var" value="value"/>
<constructor-arg name="var" value="value"/>
</bean>


set 方法的方式注入属性

```
<!-- 第一种:set 方法的方式 -->
<bean id="bean" class="全类名">
<property name="var"
d366
value="value"/>
<property name="var" value="value"/>
</bean>


Spring 的属性注入:对象类型的注入:

<!-- 第一种:set 方法的方式 -->
<bean id="bean" class="全类名">
<property name="var" value="value"/>
<property name="obj" value="beanId"/>
</bean>


名称空间 p 的属性注入的方式

第一步:引入 p 名称空间
<bean xmlns="http://www.springframework.org/schema/beans"
xmlns:p="http://www.springframework.org/schema/p"
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"> <!-- 第二步:使用 p 名称空间。
* 普通属性: p:属性名称=""
* 对象类型属性: p:属性名称-ref=""
-->

<!-- p 名称空间的属性注入的方式 -->
<bean id="bean" class="全类名" p:attributeName="value" p:attributeName="" />
<bean id="bean" class="全类名" p:attributeName="value" p:objName-ref="" />


SpEL 的方式的属性注入

//TODO

注入复杂类型

<bean id="collectionBean" class="packageName.CollectionBean">
<!-- 数组类型的属性 -->
<property name="arrs">
<list>
<value>value1</value>
<value>value2</value>
<value>value3</value>
</list>
</property>

<!-- 注入 Map 集合 -->
<property name="map">
<map>
<entry key="key1" value="value1"/>
<entry key="key2" value="value2"/>
<entry key="key3" value="value3"/>
</map>
</property>

<!-- Properties 的注入 -- >
<properties name="properties">
<props>
<prop key="key1">value1</prop>
<prop key="key2">value2</prop>
</props>
</properties >


Spring 的分配置文件的开发

// 一种,创建工厂的时候加载多个配置文件
ApplicationContext applicationcontext = new ClassPathXmlApplicationContext("applicationContext.xml","applicationContext2.xml");
``````
<!-- 二种,在一个配置文件中包含另一个配置文件 -->
<import resource="applicationContext2.xml"></import>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: