赞
踩
Spring是一个开源的控制反转(Inversionof Control ,IoC)和面向切面(AOP)的容器框架。为软件开发提供一站式解决方案。
spring是大工厂,会生产任意bean对象。
spring功能:生产bean、声明式事务、单例模式管理bean、AOP开发。
官网:http://www.springsource.org/spring-framework
下载:http://maven.springframework.org/release/org/springframework/spring/
下载的文件名spring-framework-x.x.x.RELEASE-dist.zip
libs目录下的jar包说明
spring核心API
BeanFactory:bean工厂,上产任意bean。
ApplicationContext:所有配置对象的主接口
ClassPathXmlApplicationContext:加载类路径下的配置文件
FileSystemXmlApplicationContext:加载文件系统下的配置文件
IOC(Inversion of Control)是控制反转的意思,之前需要类的对象,主动new(实例化)类的对象,spring是生产bean的工厂,现在可以让spring生产对象,用户获取对象使用。
对象从原来的主动创建,变为被动获得。
配置文件:位置任意、文件名任意,习惯ApplicationContext.xml。
在spring-framework-4.1.0.RELEASE\docs\spring-framework-reference\html\xsd-config.html文件中有schema引用的说明。
DI :Dependency Injection,指在定义bean时为属性注入值。
1. 编写业务层的接口和实现类,编写持久层的接口和实现类。
2. 配置bean,给属性注入值
当配置一个bean时,默认调用无参构造方法实例化对象
一般情况下应用于spring和其他框架整合的时候
bean的种类有:
基本bean:<bean id=”” class=””>
FactoryBean:是一个bean,是创建特定bean对象的工厂bean。
BeanFactory:是一个factory,可以创建任意bean对象的工厂。
bean的作用域:有bean标签的scope属性决定,默认singleton
singleton 单例
prototype 多例
request一次请求
session一次会话
生命周期表示使用对象前或后,要执行的操作,初始化在前,销毁在后
1. 配置bean
利用属性的setXxx()方法给属性注入值
表示bean中的属性是数组或集合类型,注入方式
使用一系列的注解对bean进行实例化,同时给属性注入值。注解使用前提,添加context命名空间。且新加入spring-aop-4.1.0.RELEASE.jar包。
声明bean,等价于<bean class=””>,@Component(“id”),等价于<bean id=”” class=””>
@Component能表示持久层、业务层、表现层的bean。为了更好分层开发,提供和@Component功能等价的3个注解,分层表示:
@Repository :dao层
@Service:service层
@Controller:web层
相关注解可以给私有字段设置,也可以给setter方法设置。
普通值:@Value("")
引用值:
方式1:按照类型注入
@Autowired
方式2:按照名称注入1
@Autowired
@Qualifier("名称")
方式3:按照名称注入2
@Resource(name="名称")
初始化:@PostConstruct,指定初始化方法
销毁:@PreDestroy,指定销毁方法
@Scope("prototype")
一般情况下,吧bean类用xml配置文件配,bean中的属性用注解进行注入值。
默认情况下,不会自动给属性注入值。在配置文件中加<context:annotation-config></context:annotation-config>使注解注入生效。
<context:component-scan>和<context:annotation-config>不能共存
<context:component-scan base-package=””>自动扫描指定包的bean对象,属性注入自动生效
< context:annotation-config>在xml配置和注解配置混用时使用,使属性注解注入生效。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。