1.创建javaweb项目
2.导入spring需要的jar
3.创建resources文件夹
4.在resources文件夹中创建 applicationContext.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:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<!--Bean相当于一个对象 id是对象名 class是类-->
<bean id="helloSpring" class="cn.s.T.hellospring">
<!--property是对象的属性 name是属性名 value是属性的值-->
<property name="who">
<value>hahaha</value>
</property>
</bean>
</beans>
5.调用
ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
hellospring h=(hellospring) context.getBean("helloSpring");
System.out.println("123"+h.getWho());
构造函数注入 :
<constructor-arg>
<!--赋值-->
<value>值</value>
<!--或者ref引用bean-->
<ref bean="bean的id"/>
<ref local="bean的id"/>
</constructor-arg>
bean 和 local的区别
用法几乎一样,Spring配置文件可以拆分成多个 使用local属性只能在同一个配置文件中检索bean的id 而bean属性可以在其他配置文件中检索id
使用p实现属性注入:
直接赋值方式
p:属性名=“值”
引用bean属性方式
p:属性名-ref=“值”
<bean id="" p:name="张三" p:dao-ref="bean的id"/>
使用内部bean:如果bean仅在一处使用 可以把他定义为内部bean
<bean id="" class="">
<property name="属性名">
<!--内部bean-->
<bean id="" class=""/>
</property>
</bean>
注入集合类型属性:
<bean id="" class="">
<property name="属性名">
<list>
<value></value>
<value></value>
</list>
</property>
</bean>
list标签中见可以使用value ref等标签注入集合元素 甚至可以是另一个list标签
<bean id="" class="">
<property name="属性名">
<set>
<value></value>
<value></value>
</set>
</property>
</bean>
Map
<bean id="" class="">
<property name="属性名">
<map>
<entry>
<key></key>
<value></value>
</entry>
</map>
</property>
</bean>
Properties:
<bean id="" class="">
<property name="属性名">
<props>
<!--定义properties中的键值对-->
<prop key="键">值</prop>
</props>
</property>
</bean>
注入null和空字符串
<!--空字符串-->
<value></value>
<!--null-->
<null/>