Spring概述
1)Spring是一个开源框架.
2)为简化企业级开发而生,摒弃了繁琐的配置与复杂的代码.
3)控制IOC(控制反转),和AOP(面向切面编程)容器框架.
4)spring模块
创建spring配置文件
///xml文件中
<beans>
<bean id=" " class=" ">
//id相当于调用时的方法名
//class是你创建属性的实体类
<property name=" " value=" "></property>
//name是属性名 value是值
<property name="list" >
<value>//值 list是数组</value>
</property>
</bean>
//两个参数的构造方法
<bean>
<constructor-arg value="dahuang"></constructor-arg>
<constructor-arg value="dahuang123"></constructor-arg>
</bean>
</beans>
IOC容器在spring中的应用
1)BeanFactory:IOC容器的基本实现,是Spring内部的基础设施,是面向Spring本身的,不是提供给开发人员使用的.
2)ApplicationContext:BeanFactory的子接口,提供了更多高级特性。面向Spring的使用者,几乎所有场合都使用ApplicationContext而不是底层的BeanFactory.
可以使用的值
字面量 (与其相对的应该是非字面量吧?)
1)可以使用字符串表示的值,可以通过value属性或value子节点的方式指定
2)基本数据类型及其封装类、String等类型都可以采取字面值注入的方式
3)若字面值中包含特殊字符,可以使用<![CDATA[]]>把字面值包裹起来
//给bean的级联属性赋值
<bean id="action" class="com.atguigu.spring.ref.Action">
<property name="service" ref="service"/>
<!-- 设置级联属性(了解) -->
<property name="service.dao.dataSource" value="DBCP"/>
</bean>
<bean id="shop" class="com.atguigu.spring.bean.Shop" >
<property name= "book" ref ="book"/>
</bean >
//集合属性的bean
<util:list id="bookList">
<ref bean="book01"/>
<ref bean="book02"/>
<ref bean="book03"/>
<ref bean="book04"/>
<ref bean="book05"/>
</util:list>
<util:list id="categoryList">
<value>编程</value>
<value>极客</value>
<value>相声</value>
<value>评书</value>
</util:list>
factoryBean
Spring中有两种类型的bean,一种是普通bean,另一种是工厂bean,即FactoryBean。
工厂bean跟普通bean不同,其返回的对象不是指定类的一个实例,其返回的是该工 厂bean的getObject方法所返回的对象。
工厂bean必须实现org.springframework.beans.factory.FactoryBean接口。
<bean id="product" class="com.atguigu.spring.bean.ProductFactory">
<property name="productName" value="Mp3" />
</bean>
谢谢观看