这里写目录标题
Spring
什么是Spring
Spring是分层的javaSE/EE full-stack轻量级框架,以IoC(控制反转)和AOP(面向切面编程)为内核,使用基本的JavaBean来完成以前只可能由EJB完成的工作。
Spring框架的优点
- 非侵入式设计
- 方便解耦、简化开发
- 支持AOP
- 支持声明式事务处理
- 方便程序测试
- 方便集成各种优秀框架
- 降低Java EE API 的使用难度
Sping体系结构
Core Containrer(核心容器)
- Beans:提供了BeanFactory,Spring将管理对象称为Bean。
- Core:提供了Spring框架的基本组成部分,包括IoC和DI功能
- Context:建立在Core和Beans模块的基础之上,是访问定义和配置的任何对对象的媒介
- SpEL:spring3.0后新增版本,是运行时查询和操作对象图的强大语言表达式
Date A’c’cess/Integration(数据访问/集成)
- JDBC:提供了一个JDBC的抽象层,减少了在开发过程中对数据库操作的编码
- ORM:对流行的对象关系映射API,包括JPA,JDO和Hibernate提供了集成层的支持
- Transactions:支持对实现特殊接口以及所有pojo类的编程和声明式事务管理
Web
- Servlet:也称spring-webmvc模块,包含spring模型-视图-控制器(MVC)和REST Web Services实现的Web程序
- Web:提供了基本的Web集成开发特性。如:多文件上传、使用Servlet监听器来初始化IoC容器以及Web上下文的应用
其他模块
- AOP:提供了面向切面编程方式允许定义方法拦截器和切入点,将代码按照功能分离 ,降低耦合性
- Aspects:提供了AspectJ的集成功能,AspectJ是一个功能强大且成熟的面向切面编程那个(AOP)框架
配置文件
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"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- 将指定类配置给spring,让spring创建其对象的实例-->
<bean id="自定义唯一名" class="接口的全限类名"/>
<beans>
依赖注入配置文件
<?xml version="1.0" encoding="utf-8" ?>
<beans
xmlns="http://www.springframework.org/schema/beans"
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">
<!-- 将指定类配置给spring,让spring创建其对象的实例-->
<bean id="唯一名" class="接口的全限类名"/
<!--添加一个实例-->
<bean id="唯一名" class="接口的全限类名">
<property name="类名" ref="上个bean的id">
<bean/>
<beans>