Spring相关配置及工厂模式

1.  applicationContext.xml配置  ---->此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"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- 该文件产生的所有对象,被spring放入一个称之为spring ioc的容器中 -->
<!-- id 唯一标识 class 指定文件 -->
<!--
property:该class所代表的类的属性
name;属性名
value:属性值
-->
<bean id="student" class="spring.entity.student">
<property name="name" value="zs"></property>
<property name="age" value="21"></property>
</bean>
<!-- 数字工厂的简单应用 -->
<bean id="one" class="spring.dao.one"></bean>
<bean id="twe" class="spring.dao.twe"></bean>
<!-- 老师 课程 -->
<bean id="teacher" class="spring.entity.teacher" p:name="ww" p:age="30">
<!-- <property name="name" value="zs"></property>
<property name="age" value="21"></property>
构造器注入
<constructor-arg value="ls"></constructor-arg>
<constructor-arg value="24"></constructor-arg>
-->

</bean>
<bean id="course" class="spring.entity.course" p:name="tiyu" p:time="300" p:teacher-ref="teacher"><!-- p注入的时候 普通类型正常写,对象类型用ref
多个p之间要留空格 -->
<!-- set方式的依赖注入 通过set()方法赋值
赋值 默认使用的是set方法
name——>setname() 到路径找这个方法
依赖注入底层通过反射实现 -->
<!-- 通过set方法赋值
<property name="name" value="shuxue"></property>
<property name="time" value="60"></property>
<property name="teacher" ref="teacher"></property>八大基本类型用value
对象类型 ref ——也因此实现了对象与对象之间的依赖关系
-->
<!-- 构造器注入
<constructor-arg value="c"></constructor-arg>
<constructor-arg value="100"></constructor-arg>
<constructor-arg ref="teacher"></constructor-arg>
如果构造函数值位置不同可以根据 index 通过下标确定值 下标默认从零开始
也可以通过name 来确定属性名找到属性值
如果参数类型不同,也可以通过type 来通过类型来确认
这几种可以同时加上
-->


</bean>
<!-- 给集合,数组等类型赋值 -->
<bean id="allcollection" class="spring.entity.AllCollectionType">
<property name="list"><!-- 这个list只是一个单纯的属性名,不是专有名 属性名写啥 这个里面就写啥 -->
<list>
<value>足球</value>
<value>篮球</value>
<value>乒乓球</value>
</list>
</property>
<property name="array">
<array>
<value>足球1</value>
<value>篮球1</value>
<value>乒乓球1</value>
</array>
</property>
<property name="set">
<set>
<value>足球2</value>
<value>篮球2</value>
<value>乒乓球2</value>
</set>
</property>
<property name="map">
<map>
<entry>
<key><value>qian</value></key>
<value>铅球</value>
</entry>
</map>
</property>
<property name="pro">
<props>
<prop key="yu">羽毛球</prop>
</props>
</property>
</bean>
</beans>

2.  spring所需要jar包------->本次测试用

3.spring   ioc  工厂模式,跟普通工厂对比

首先,因为测试我简单的创建一个接口,以及两个java类用来继承这个接口

接口

接口实现类

 

 做一个简单的工厂模式

 测试  简单工厂跟Spring工厂对比

   注:spring测试用的<bean>在前面的applicationcontext.xml里配置有

   我再截取一遍

 class是路径

原文地址:https://www.cnblogs.com/ldmboke/p/12515983.html