您的位置:首页 > 编程语言 > Java开发

Spring Framework 开发参考手册中文(在线HTML)

2012-11-24 14:52 471 查看
‘原文:/article/2151481.html

Spring Framework 开发参考手册中文(在线HTML)

Spring Framework 开发参考手册中文(在线HTML)

Spring Framework 开发参考手册

Authors

Rod Johnson,JuergenHoeller,AlefArendsen,ColinSampaleanu,RobHarrop,ThomasRisberg,DarrenDavison,DmitriyKopylenko,MarkPollack,ThierryTemplier,ErwinVervaet,PortiaTung,BenHale,AdrianColyer,JohnLewis,CostinLeau,MarkFisher,SamBrannen,RamnivasLaddad

2.5.2

Copies of this document may be made for your own use and for distribution to others, provided that you do not charge any fee for such copies and further provided that each copy contains this Copyright Notice, whether distributed in print or electronically.

Table of Contents

前言1. 简介
1.1.
概览
1.1.1.
使用场景

2. Spring 2.0和 2.5的新特性
2.1.
简介2.2.
控制反转(IoC)容器
2.2.1.
新的bean作用域2.2.2.
更简单的XML配置2.2.3.
可扩展的XML编写2.2.4.
Annotation(注解)驱动配置2.2.5.
在classpath中自动搜索组件
2.3.
面向切面编程(AOP)
2.3.1.
更加简单的AOP XML配置2.3.2.
对@AspectJ 切面的支持2.3.3.
对bean命名pointcut( bean name pointcut element)的支持2.3.4.
对AspectJ装载时织入(AspectJ load-time weaving)的支持
2.4.
中间层
2.4.1.
在XML里更为简单的声明性事务配置2.4.2.
对Websphere 事务管理的完整支持2.4.3.
JPA2.4.4.
异步的JMS2.4.5.
JDBC
2.5.
Web层
2.5.1.
Spring MVC合理的默认值2.5.2.
Portlet 框架2.5.3.
基于Annotation的控制器2.5.4.
Spring MVC的表单标签库2.5.5.
对Tiles 2 支持2.5.6.
对JSF 1.2支持2.5.7.
JAX-WS支持
2.6.
其他
2.6.1.
动态语言支持2.6.2.
增强的测试支持2.6.3.
JMX 支持2.6.4.
将Spring 应用程序上下文部署为JCA adapter2.6.5.
计划任务2.6.6.
对Java 5 (Tiger) 支持
2.7.
移植到Spring 2.5
2.7.1.
改变
2.7.1.1.
支持的JDK版本2.7.1.2.
Spring 2.5的Jar打包2.7.1.3.
XML配置2.7.1.4.
Deprecated(淘汰)的类和方法2.7.1.5.
Apache OJB2.7.1.6.
iBATIS2.7.1.7.
Hibernate2.7.1.8.
JDO2.7.1.9.
UrlFilenameViewController

2.8.
更新的样例应用2.9.
改进的文档
I. 核心技术
3. IoC(控制反转)容器
3.1.
简介3.2.
基本原理 - 容器和bean
3.2.1.
容器
3.2.1.1.
配置元数据
3.2.2.
实例化容器
3.2.2.1.
XML配置元数据的结构
3.2.3.
多种bean
3.2.3.1.
bean的命名3.2.3.2.
实例化bean
3.2.4.
使用容器
3.3.
依赖
3.3.1.
注入依赖
3.3.1.1.
构造器注入3.3.1.2.
Setter注入3.3.1.3.
一些例子
3.3.2.
依赖配置详解
3.3.2.1.
直接变量(基本类型、Strings类型等。)3.3.2.2.
引用其它的bean(协作者)3.3.2.3.
内部bean3.3.2.4.
集合3.3.2.5.
Nulls3.3.2.6.
XML配置文件的简写及其他3.3.2.7.
组合属性名称
3.3.3.
使用depends-on3.3.4.
延迟初始化bean3.3.5.
自动装配(autowire)协作者
3.3.5.1.
将bean排除在自动装配之外
3.3.6.
依赖检查3.3.7.
方法注入
3.3.7.1.
Lookup方法注入3.3.7.2.
自定义方法的替代方案

3.4.
Bean的作用域
3.4.1.
Singleton作用域3.4.2.
Prototype作用域3.4.3.
Singleton beans和prototype-bean的依赖3.4.4.
其他作用域
3.4.4.1.
初始化web配置3.4.4.2.
Request作用域3.4.4.3.
Session作用域3.4.4.4.
global session作用域3.4.4.5.
作用域bean与依赖
3.4.5.
自定义作用域
3.4.5.1.
创建自定义作用域3.4.5.2.
使用自定义作用域

3.5.
定制bean特性
3.5.1.
生命周期回调
3.5.1.1.
初始化回调3.5.1.2.
析构回调3.5.1.3.
缺省的初始化和析构方法3.5.1.4.
组合生命周期机制3.5.1.5.
在非web应用中优雅地关闭Spring IoC容器
3.5.2.
了解自己
3.5.2.1.
BeanFactoryAware 3.5.2.2.
BeanNameAware

3.6.
bean定义的继承3.7.
容器扩展点
3.7.1.
用BeanPostProcessor定制bean
3.7.1.1.
使用BeanPostProcessor的Hello World示例3.7.1.2.
RequiredAnnotationBeanPostProcessor示例
3.7.2.
用BeanFactoryPostProcessor定制配置元数据
3.7.2.1.
PropertyPlaceholderConfigurer示例3.7.2.2.
PropertyOverrideConfigurer示例
3.7.3.
使用FactoryBean定制实例化逻辑
3.8.
The ApplicationContext
3.8.1.
BeanFactory 还是 ApplicationContext?3.8.2.
利用MessageSource实现国际化3.8.3.
事件3.8.4.
底层资源的访问3.8.5.
ApplicationContext在WEB应用中的实例化
3.9.
粘合代码和可怕的singleton3.10.
以J2EE RAR文件的形式部署Spring ApplicationContext3.11.
基于注解(Annotation-based)的配置
3.11.1.
@Autowired3.11.2.
基于注解的自动连接微调3.11.3.
CustomAutowireConfigurer3.11.4.
@Resource3.11.5.
@PostConstruct 与 @PreDestroy
3.12.
对受管组件的Classpath扫描
3.12.1.
@Component和更多典型化注解3.12.2.
自动检测组件3.12.3.
使用过滤器自定义扫描3.12.4.
自动检测组件的命名3.12.5.
为自动检测的组件提供一个作用域3.12.6.
用注解提供限定符元数据
3.13.
注册一个LoadTimeWeaver
4. 资源
4.1.
简介4.2.
Resource接口4.3.
内置 Resource 实现
4.3.1.
UrlResource 4.3.2.
ClassPathResource4.3.3.
FileSystemResource4.3.4.
ServletContextResource 4.3.5.
InputStreamResource4.3.6.
ByteArrayResource
4.4.
ResourceLoader接口4.5.
ResourceLoaderAware 接口4.6.
把Resource作为属性来配置4.7.
Application context 和Resource 路径
4.7.1.
构造application context
4.7.1.1.
创建 ClassPathXmlApplicationContext 实例 - 简介
4.7.2.
Application context构造器中资源路径的通配符
4.7.2.1.
Ant风格的pattern4.7.2.2.
classpath*: 前缀4.7.2.3.
其他关于通配符的说明
4.7.3.
FileSystemResource 说明

5. 校验,数据绑定,BeanWrapper,与属性编辑器
5.1.
简介5.2.
使用Spring的Validator接口进行校验5.3.
从错误代码到错误信息5.4.
Bean处理和BeanWrapper
5.4.1.
设置和获取属性值以及嵌套属性5.4.2.
内建的PropertyEditor实现
5.4.2.1.
注册用户自定义的PropertyEditor

6. 使用Spring进行面向切面编程(AOP)
6.1.
简介
6.1.1.
AOP概念6.1.2.
Spring AOP的功能和目标6.1.3.
AOP代理
6.2.
@AspectJ支持
6.2.1.
启用@AspectJ支持6.2.2.
声明一个切面6.2.3.
声明一个切入点(pointcut)
6.2.3.1.
切入点指示符(PCD)的支持6.2.3.2.
组合切入点表达式6.2.3.3.
共享通用切入点定义6.2.3.4.
示例
6.2.4.
声明通知
6.2.4.1.
前置通知6.2.4.2.
后置通知(After returning advice)6.2.4.3.
异常通知(After throwing advice)6.2.4.4.
最终通知(After (finally) advice)6.2.4.5.
环绕通知6.2.4.6.
通知参数(Advice parameters)6.2.4.7.
通知顺序
6.2.5.
引入(Introduction)6.2.6.
切面实例化模型6.2.7.
例子
6.3.
基于Schema的AOP支持
6.3.1.
声明一个切面6.3.2.
声明一个切入点6.3.3.
声明通知
6.3.3.1.
前置通知6.3.3.2.
后置通知6.3.3.3.
异常通知6.3.3.4.
最终通知6.3.3.5.
环绕通知6.3.3.6.
通知参数6.3.3.7.
通知顺序
6.3.4.
引入6.3.5.
切面实例化模型6.3.6.
Advisor6.3.7.
例子
6.4.
AOP声明风格的选择
6.4.1.
Spring AOP还是完全用AspectJ?6.4.2.
Spring AOP中使用@AspectJ还是XML?
6.5.
混合切面类型6.6.
代理机制
6.6.1.
理解AOP代理
6.7.
以编程方式创建@AspectJ代理6.8.
在Spring应用中使用AspectJ
6.8.1.
在Spring中使用AspectJ进行domain object的依赖注入
6.8.1.1.
@Configurable对象的单元测试6.8.1.2.
Working with multiple application contexts
6.8.2.
Spring中其他的AspectJ切面6.8.3.
使用Spring IoC来配置AspectJ的切面6.8.4.
在Spring应用中使用AspectJ加载时织入(LTW)
6.8.4.1.
第一个例子6.8.4.2.
切面6.8.4.3.
'META-INF/aop.xml'6.8.4.4.
相关类库(JARS)6.8.4.5.
Spring配置6.8.4.6.
特定环境的配置

6.9.
更多资源
7. Spring AOP APIs
7.1.
简介7.2.
Spring中的切入点API
7.2.1.
概念7.2.2.
切入点运算7.2.3.
AspectJ切入点表达式7.2.4.
便利的切入点实现
7.2.4.1.
静态切入点7.2.4.2.
动态切入点
7.2.5.
切入点的超类7.2.6.
自定义切入点
7.3.
Spring的通知API
7.3.1.
通知的生命周期7.3.2.
Spring里的通知类型
7.3.2.1.
拦截环绕通知7.3.2.2.
前置通知7.3.2.3.
异常通知7.3.2.4.
后置通知7.3.2.5.
引入通知

7.4.
Spring里的Advisor API7.5.
使用ProxyFactoryBean创建AOP代理
7.5.1.
基础7.5.2.
JavaBean属性7.5.3.
基于JDK和CGLIB的代理7.5.4.
对接口进行代理7.5.5.
对类进行代理7.5.6.
使用“全局”通知器
7.6.
简化代理定义7.7.
使用ProxyFactory通过编程创建AOP代理7.8.
操作被通知对象7.9.
使用“自动代理(autoproxy)”功能
7.9.1.
自动代理bean定义
7.9.1.1.
BeanNameAutoProxyCreator7.9.1.2.
DefaultAdvisorAutoProxyCreator7.9.1.3.
AbstractAdvisorAutoProxyCreator
7.9.2.
使用元数据驱动的自动代理
7.10.
使用TargetSource
7.10.1.
热交换目标源7.10.2.
池化目标源7.10.3.
原型目标源7.10.4.
ThreadLocal目标源
7.11.
定义新的Advice类型7.12.
更多资源
8. 测试
8.1.
简介8.2.
单元测试
8.2.1.
Mock对象
8.2.1.1.
JNDI8.2.1.2.
Servlet API8.2.1.3.
Portlet API
8.2.2.
单元测试支持类
8.2.2.1.
通用工具类8.2.2.2.
Spring MVC

8.3.
集成测试
8.3.1.
概览8.3.2.
使用哪个支持框架8.3.3.
通用目标
8.3.3.1.
上下文管理及缓存8.3.3.2.
测试fixtures依赖注入8.3.3.3.
事务管理8.3.3.4.
集成测试支持类
8.3.4.
JDBC测试支持8.3.5.
常用注解8.3.6.
JUnit 3.8遗留支持
8.3.6.1.
上下文管理及缓存8.3.6.2.
测试fixture依赖注入8.3.6.3.
事务管理8.3.6.4.
JUnit 3.8 遗留支持类8.3.6.5.
Java 5+ 专有支持
8.3.7.
Spring TestContext Framework
8.3.7.1.
主要的抽象8.3.7.2.
上下文管理和缓存8.3.7.3.
测试fixture的依赖注入8.3.7.4.
事务管理8.3.7.5.
TestContext支持类8.3.7.6.
TestContext框架注解支持
8.3.8.
PetClinic示例
8.4.
更多资源

II.
中间层数据访问
9.
事务管理
9.1.
简介9.2.
动机9.3.
关键抽象9.4.
使用资源同步的事务
9.4.1.
高层次方案9.4.2.
低层次方案9.4.3.
TransactionAwareDataSourceProxy
9.5.
声明式事务管理
9.5.1.
理解Spring的声明式事务管理实现9.5.2.
第一个例子9.5.3.
回滚9.5.4.
为不同的bean配置不同的事务语义9.5.5.
<tx:advice/> 有关的设置9.5.6.
使用 @Transactional
9.5.6.1.
@Transactional 有关的设置
9.5.7.
事务传播
9.5.7.1.
required9.5.7.2.
RequiresNew9.5.7.3.
Nested
9.5.8.
通知事务操作9.5.9.
结合AspectJ使用 @Transactional
9.6.
编程式事务管理
9.6.1.
使用TransactionTemplate
9.6.1.1.
指定事务设置
9.6.2.
使用PlatformTransactionManager
9.7.
选择编程式事务管理还是声明式事务管理9.8.
与特定应用服务器集成
9.8.1.
IBM WebSphere9.8.2.
BEA WebLogic9.8.3.
Oracle OC4J
9.9.
常见问题的解决方法
9.9.1.
对一个特定的 DataSource 使用了错误的事务管理器
9.10.
更多的资源
10. DAO支持
10.1.
简介10.2.
一致的异常层次10.3.
一致的DAO支持抽象类
11. 使用JDBC进行数据访问
11.1.
简介
11.1.1.
选择一种工作模式11.1.2.
Spring JDBC包结构
11.2.
利用JDBC核心类控制JDBC的基本操作和错误处理
11.2.1.
JdbcTemplate类
11.2.1.1.
一些示例11.2.1.2.
JdbcTemplate 的最佳实践
11.2.2.
NamedParameterJdbcTemplate类11.2.3.
SimpleJdbcTemplate类11.2.4.
DataSource接口11.2.5.
SQLExceptionTranslator接口11.2.6.
执行SQL语句11.2.7.
执行查询11.2.8.
更新数据库11.2.9.
获取自动生成的主键
11.3.
控制数据库连接
11.3.1.
DataSourceUtils类11.3.2.
SmartDataSource接口11.3.3.
AbstractDataSource类11.3.4.
SingleConnectionDataSource类11.3.5.
DriverManagerDataSource类11.3.6.
TransactionAwareDataSourceProxy类11.3.7.
DataSourceTransactionManager类11.3.8.
NativeJdbcExtractor
11.4.
JDBC批量操作
11.4.1.
使用JdbcTemplate进行批量操作11.4.2.
使用SimpleJdbcTemplate进行批量操作
11.5.
通过使用SimpleJdbc类简化JDBC操作
11.5.1.
使用SimpleJdbcInsert插入数据11.5.2.
使用SimpleJdbcInsert来获取自动生成的主键11.5.3.
指定SimpleJdbcInsert所使用的字段11.5.4.
使用SqlParameterSource提供参数值11.5.5.
使用SimpleJdbcCall调用存储过程11.5.6.
声明SimpleJdbcCall使用的参数11.5.7.
如何定义SqlParameters11.5.8.
使用SimpleJdbcCall调用内置函数11.5.9.
使用SimpleJdbcCall返回的ResultSet/REF Cursor
11.6.
用Java对象来表达JDBC操作
11.6.1.
SqlQuery类11.6.2.
MappingSqlQuery类11.6.3.
SqlUpdate类11.6.4.
StoredProcedure类11.6.5.
SqlFunction类
11.7.
参数和数据处理的基本原则
11.7.1.
为参数设置SQL类型信息11.7.2.
处理BLOB 和 CLOB对象11.7.3.
在IN语句中传入一组参数值11.7.4.
处理复杂类型的存储过程调用

12. 使用ORM工具进行数据访问
12.1.
简介12.2.
Hibernate
12.2.1.
资源管理12.2.2.
在Spring容器中创建 SessionFactory12.2.3.
The HibernateTemplate12.2.4.
不使用回调的基于Spring的DAO实现12.2.5.
基于Hibernate3的原生API实现DAO12.2.6.
编程式的事务划分12.2.7.
声明式的事务划分12.2.8.
事务管理策略12.2.9.
容器资源 vs 本地资源12.2.10.
在应用服务器中使用Hibernate的注意事项
12.3. JDO
12.3.1.
建立PersistenceManagerFactory 12.3.2.
JdoTemplate和JdoDaoSupport12.3.3.
基于原生的JDO API实现DAO 12.3.4.
事务管理12.3.5.
JdoDialect
12.4.
Oracle TopLink
12.4.1.
SessionFactory 抽象层12.4.2.
TopLinkTemplate and TopLinkDaoSupport12.4.3.
基于原生的TopLink API的DAO实现12.4.4.
事务管理
12.5.
iBATIS SQL Maps
12.5.1.
创建SqlMapClient 12.5.2.
使用 SqlMapClientTemplate 和 SqlMapClientDaoSupport 12.5.3.
基于原生的iBATIS API的DAO实现
12.6. JPA
12.6.1.
在Spring环境中建立JPA
12.6.1.1.
LocalEntityManagerFactoryBean12.6.1.2.
从JNDI中获取 EntityManagerFactory 12.6.1.3.
LocalContainerEntityManagerFactoryBean12.6.1.4.
处理多持久化单元
12.6.2.
JpaTemplate 和 JpaDaoSupport12.6.3.
基于原生的JPA实现DAO12.6.4.
异常转化
12.7.
事务管理12.8.
JpaDialect

III. The Web
13. Web MVC framework Web框架
13.1.
概述
13.1.1.
与其他MVC实现框架的集成13.1.2.
Spring Web MVC框架的特点
13.2.
DispatcherServlet13.3.
控制器
13.3.1.
AbstractController 和 WebContentGenerator13.3.2.
其它的简单控制器13.3.3.
MultiActionController13.3.4.
命令控制器
13.4.
处理器映射(handler mapping)
13.4.1.
BeanNameUrlHandlerMapping13.4.2.
SimpleUrlHandlerMapping13.4.3.
拦截器(HandlerInterceptor)
13.5.
视图与视图解析
13.5.1.
视图解析器(ViewResolver)13.5.2.
视图解析链13.5.3.
重定向(Rediret)到另一个视图
13.5.3.1.
RedirectView13.5.3.2.
redirect:前缀13.5.3.3.
forward:前缀

13.6.
本地化解析器
13.6.1.
AcceptHeaderLocaleResolver13.6.2.
CookieLocaleResolver13.6.3.
SessionLocaleResolver13.6.4.
LocaleChangeInterceptor
13.7.
使用主题
13.7.1.
简介13.7.2.
如何定义主题13.7.3.
主题解析器
13.8.
Spring对分段文件上传(multipart file upload)的支持
13.8.1.
介绍13.8.2.
使用MultipartResolver13.8.3.
在表单中处理分段文件上传
13.9.
使用Spring的表单标签库
13.9.1.
配置13.9.2.
form标签13.9.3.
input标签13.9.4.
checkbox标签13.9.5.
checkboxes标签13.9.6.
radiobutton标签13.9.7.
radiobuttons标签13.9.8.
password标签13.9.9.
select标签13.9.10.
option标签13.9.11.
options标签13.9.12.
textarea标签13.9.13.
hidden标签13.9.14.
errors标签
13.10.
处理异常13.11.
惯例优先原则(convention over configuration)
13.11.1.
对控制器的支持:ControllerClassNameHandlerMapping13.11.2.
对模型的支持:ModelMap(ModelAndView)13.11.3.
对视图的支持:RequestToViewNameTranslator
13.12.
基于注解的控制器配置
13.12.1.
建立dispatcher实现注解支持13.12.2.
使用@Controller定义一个控制器13.12.3.
使用@RequestMapping映射请求13.12.4.
使用@RequestParam绑定请求参数到方法参数13.12.5.
使用@ModelAttribute提供一个从模型到数据的链接13.12.6.
使用@SessionAttributes指定存储在会话中的属性13.12.7.
自定义WebDataBinder初始化
13.12.7.1.
使用@InitBinder自定义数据绑定13.12.7.2.
配置一个定制的WebBindingInitializer

13.13.
更多资源
14. 集成视图技术
14.1.
简介14.2.
JSP和JSTL
14.2.1.
视图解析器14.2.2.
'Plain-old' JSPs versus JSTL 'Plain-old' JSP与JSTL 14.2.3.
帮助简化开发的额外的标签
14.3.
Tiles
14.3.1.
需要的资源14.3.2.
如何集成Tiles
14.3.2.1.
UrlBasedViewResolver类 14.3.2.2.
ResourceBundleViewResolver类 14.3.2.3.
SimpleSpringPreparerFactory 和 SpringBeanPreparerFactory

14.4.
Velocity和FreeMarker
14.4.1.
需要的资源14.4.2.
Context 配置14.4.3.
创建模板14.4.4.
高级配置
14.4.4.1.
velocity.properties14.4.4.2.
FreeMarker
14.4.5.
绑定支持和表单处理
14.4.5.1.
用于绑定的宏14.4.5.2.
简单绑定14.4.5.3.
表单输入生成宏14.4.5.4.
重载HTML转码行为并使你的标签符合XHTML

14.5.
XSLT
14.5.1.
写在段首
14.5.1.1.
Bean 定义14.5.1.2.
标准MVC控制器代码14.5.1.3.
把模型数据转化为XML14.5.1.4.
定义视图属性14.5.1.5.
文档转换
14.5.2.
小结
14.6.
文档视图(PDF/Excel)
14.6.1.
简介14.6.2.
配置和安装
14.6.2.1.
文档视图定义14.6.2.2.
Controller 代码14.6.2.3.
Excel视图子类14.6.2.4.
PDF视图子类

14.7.
JasperReports
14.7.1.
依赖的资源14.7.2.
配置
14.7.2.1.
配置ViewResolver 14.7.2.2.
配置View 14.7.2.3.
关于报表文件14.7.2.4.
使用 JasperReportsMultiFormatView
14.7.3.
构造ModelAndView 14.7.4.
使用子报表
14.7.4.1.
配置子报表文件14.7.4.2.
配置子报表数据源
14.7.5.
配置Exporter的参数

15.
集成其它Web框架
15.1.
简介15.2.
通用配置15.3.
JavaServer Faces
15.3.1.
DelegatingVariableResolver15.3.2.
FacesContextUtils
15.4.
Struts
15.4.1.
ContextLoaderPlugin
15.4.1.1.
DelegatingRequestProcessor15.4.1.2.
DelegatingActionProxy
15.4.2.
ActionSupport Classes
15.5.
Tapestry
15.5.1.
注入 Spring 托管的 beans
15.5.1.1.
将 Spring Beans 注入到 Tapestry 页面中15.5.1.2.
组件定义文件15.5.1.3.
添加抽象访问方法15.5.1.4.
将 Spring Beans 注入到 Tapestry 页面中 - Tapestry 4.0+ 风格

15.6.
WebWork15.7.
更多资源
16. Portlet MVC框架
16.1.
介绍
16.1.1.
控制器 - MVC中的C16.1.2.
视图 - MVC中的V16.1.3.
Web作用范围的Bean
16.2.
DispatcherPortlet 16.3.
ViewRendererServlet16.4.
控制器
16.4.1.
AbstractController 和 PortletContentGenerator16.4.2.
其它简单的控制器16.4.3.
Command控制器16.4.4.
PortletWrappingController
16.5.
处理器映射
16.5.1.
PortletModeHandlerMapping16.5.2.
ParameterHandlerMapping16.5.3.
PortletModeParameterHandlerMapping16.5.4.
增加 HandlerInterceptors16.5.5.
HandlerInterceptorAdapter16.5.6.
ParameterMappingInterceptor
16.6.
视图和它们的解析16.7.
Multipart文件上传支持
16.7.1.
使用 PortletMultipartResolver16.7.2.
处理表单里的文件上传
16.8.
异常处理16.9.
Portlet应用的部署

IV.
整合
17. 使用Spring进行远程访问与Web服务
17.1.
简介17.2.
使用RMI暴露服务
17.2.1.
使用RmiServiceExporter暴露服务17.2.2.
在客户端链接服务
17.3.
使用Hessian或者Burlap通过HTTP远程调用服务
17.3.1.
为Hessian和co.配置DispatcherServlet17.3.2.
使用HessianServiceExporter暴露你的bean17.3.3.
在客户端连接服务17.3.4.
使用Burlap17.3.5.
对通过Hessian或Burlap暴露的服务使用HTTP Basic认证
17.4.
使用HTTP调用器暴露服务
17.4.1.
Exposing the service object17.4.2.
在客户端连接服务
17.5.
Web Services
17.5.1.
使用JAX-RPC暴露基于servlet的web服务17.5.2.
使用JAX-RPC访问web服务17.5.3.
注册JAX-RPC Bean映射17.5.4.
注册自己的JAX-RPC 处理器17.5.5.
使用JAX-WS暴露基于servlet的web服务17.5.6.
使用JAX-WS暴露单独web服务17.5.7.
使用Spring支持的JAX-WS RI来暴露服务17.5.8.
使用JAX-WS访问web服务17.5.9.
使用XFire来暴露Web服务
17.6.
JMS
17.6.1.
服务端配置17.6.2.
客户端配置
17.7.
对远程接口不提供自动探测实现17.8.
在选择这些技术时的一些考虑
18. Enterprise Java Beans (EJB) 集成
18.1.
简介18.2.
访问EJB
18.2.1.
概念18.2.2.
访问本地的无状态Session Bean(SLSB)18.2.3.
访问远程SLSB18.2.4.
Accessing EJB 2.x SLSBs versus EJB 3 SLSBs
18.3.
使用Spring提供的辅助类实现EJB组件
18.3.1.
EJB 2.x base classes18.3.2.
EJB 3 注入拦截

19. JMS (Java Message Service)
19.1.
简介19.2.
使用Spring JMS
19.2.1.
JmsTemplate19.2.2.
连接工厂19.2.3.
目的地管理19.2.4.
消息侦听容器
19.2.4.1.
SimpleMessageListenerContainer19.2.4.2.
DefaultMessageListenerContainer19.2.4.3.
ServerSessionMessageListenerContainer
19.2.5.
事务管理
19.3.
发送消息
19.3.1.
使用消息转换器19.3.2.
SessionCallback 和 ProducerCallback
19.4.
接收消息
19.4.1.
同步接收19.4.2.
异步接收 - 消息驱动的POJO19.4.3.
SessionAwareMessageListener接口19.4.4.
MessageListenerAdapter19.4.5.
事务中的消息处理
19.5.
JCA消息端点的支持19.6.
JMS命名空间支持
20. JMX
20.1.
介绍20.2.
将Bean暴露为JMX
20.2.1.
创建MBeanServer20.2.2.
重用原有的MBeanServer20.2.3.
延迟初始化的MBean20.2.4.
MBean的自动注册20.2.5.
控制注册行为
20.3.
控制Bean的管理接口
20.3.1.
MBeanInfoAssembler接口20.3.2.
使用源码级元数据20.3.3.
使用JDK 5.0的注解20.3.4.
源代码级的元数据类型20.3.5.
AutodetectCapableMBeanInfoAssembler接口20.3.6.
用Java接口定义管理接口20.3.7.
使用MethodNameBasedMBeanInfoAssembler
20.4.
控制Bean的ObjectName
20.4.1.
从Properties读取Properties20.4.2.
使用MetadataNamingStrategy20.4.3.
<context:mbean-export/>元素
20.5.
JSR-160连接器
20.5.1.
服务器端连接器20.5.2.
客户端连接器20.5.3.
基于Burlap/Hessian/SOAP的JMX
20.6.
通过代理访问MBean20.7.
通知
20.7.1.
为通知注册监听器20.7.2.
发布通知
20.8.
更多资源
21. JCA CCI
21.1.
简介21.2.
配置CCI
21.2.1.
连接器配置21.2.2.
在Spring中配置ConnectionFactory21.2.3.
配置CCI连接21.2.4.
使用一个 CCI 单连接
21.3.
使用Spring的 CCI访问支持
21.3.1.
记录转换21.3.2.
CciTemplate类21.3.3.
DAO支持21.3.4.
自动输出记录生成21.3.5.
总结21.3.6.
直接使用一个CCI Connection接口和Interaction接口21.3.7.
CciTemplate 使用示例
21.4.
建模CCI访问为操作对象
21.4.1.
MappingRecordOperation21.4.2.
MappingCommAreaOperation21.4.3.
自动生成输出记录21.4.4.
总结21.4.5.
MappingRecordOperation 使用示例21.4.6.
MappingCommAreaOperation 使用示例
21.5. 事务
22. Spring邮件抽象层
22.1.
简介22.2.
使用Spring邮件抽象
22.2.1.
MailSender 和 SimpleMailMessage 的基本用法22.2.2.
使用 JavaMailSender 和 MimeMessagePreparator
22.3.
使用MimeMessageHelper
22.3.1.
发送附件和嵌入式资源(inline resources)
22.3.1.1.
附件22.3.1.2.
内嵌资源
22.3.2.
使用模板来创建邮件内容
22.3.2.1.
一个基于Velocity的示例

23. Spring中的定时调度(Scheduling)和线程池(Thread Pooling)
23.1.
简介23.2.
使用OpenSymphony Quartz 调度器
23.2.1.
使用JobDetailBean23.2.2.
使用 MethodInvokingJobDetailFactoryBean23.2.3.
使用triggers和SchedulerFactoryBean来包装任务
23.3.
使用JDK Timer支持类
23.3.1.
创建定制的timers23.3.2.
使用 MethodInvokingTimerTaskFactoryBean类23.3.3.
最后:使用TimerFactoryBean来设置任务
23.4.
SpringTaskExecutor抽象
23.4.1.
TaskExecutor接口23.4.2.
TaskExecutor类型23.4.3.
使用TaskExecutor

24.
动态语言支持
24.1.
介绍24.2.
第一个示例24.3.
定义动态语言支持的bean
24.3.1.
公共概念
24.3.1.1.
<lang:language/> 元素24.3.1.2.
Refreshable bean24.3.1.3.
内置动态语言源文件24.3.1.4.
理解dynamic-language-backed bean上下文中的构造器注入
24.3.2.
JRuby beans24.3.3.
Groovy beans
24.3.3.1.
通过回调定制Groovy对象
24.3.4.
BeanShell beans
24.4.
场景
24.4.1.
Spring MVC控制器的脚本化24.4.2.
Validator的脚本化
24.5.
Bits and bobs
24.5.1.
AOP - 通知脚本化bean24.5.2.
作用域
24.6.
更多的资源
25. 注解和源代码级的元数据支持
25.1.
简介25.2.
Spring的元数据支持25.3.
注解
25.3.1.
@Required25.3.2.
Spring中的其它@Annotations
25.4.
Jakarta Commons Attributes集成25.5.
元数据和Spring AOP自动代理
25.5.1.
基本原理25.5.2.
声明式事务管理

V. 示例程序
26. 演示案例
26.1.
介绍26.2.
使用动态语言实现的Spring MVC控制器
26.2.1.
构建与部署
26.3.
使用SimpleJdbcTemplate和@Repository实现DAO
26.3.1.
域对象26.3.2.
Data Access Object26.3.3.
构建

A. XML Schema-based configuration
A.1.
IntroductionA.2.
XML Schema-based configuration
A.2.1.
Referencing the schemasA.2.2.
The util schema
A.2.2.1.
<util:constant/>A.2.2.2.
<util:property-path/>A.2.2.3.
<util:properties/>A.2.2.4.
<util:list/>A.2.2.5.
<util:map/>A.2.2.6.
<util:set/>
A.2.3.
The jee schema
A.2.3.1.
<jee:jndi-lookup/> (simple)A.2.3.2.
<jee:jndi-lookup/> (with single JNDI environment setting)A.2.3.3.
<jee:jndi-lookup/> (with multiple JNDI environment settings)A.2.3.4.
<jee:jndi-lookup/> (complex)A.2.3.5.
<jee:local-slsb/> (simple)A.2.3.6.
<jee:local-slsb/> (complex)A.2.3.7.
<jee:remote-slsb/>
A.2.4.
The lang schemaA.2.5.
The jms schemaA.2.6.
The tx (transaction) schemaA.2.7.
The aop schemaA.2.8.
The context schema
A.2.8.1.
<property-placeholder/>A.2.8.2.
<annotation-config/>A.2.8.3.
<component-scan/>A.2.8.4.
<load-time-weaver/>A.2.8.5.
<spring-configured/>A.2.8.6.
<mbean-export/>
A.2.9.
The tool schemaA.2.10.
The beans schema
A.3.
Setting up your IDE
A.3.1.
Setting up EclipseA.3.2.
Setting up IntelliJ IDEAA.3.3.
Integration issues
A.3.3.1.
XML parsing errors in the Resin v.3 application server

B. Extensible XML authoring
B.1.
IntroductionB.2.
Authoring the schemaB.3.
Coding a NamespaceHandlerB.4.
Coding a BeanDefinitionParserB.5.
Registering the handler and the schema
B.5.1.
'META-INF/spring.handlers'B.5.2.
'META-INF/spring.schemas'
B.6.
Using a custom extension in your Spring XML configurationB.7.
Meatier examples
B.7.1.
Nesting custom tags within custom tagsB.7.2.
Custom attributes on 'normal' elements
B.8.
Further Resources
C. spring-beans-2.0.dtdD. spring.tld
D.1.
IntroductionD.2.
The bind tagD.3.
The escapeBody tagD.4.
The hasBindErrors tagD.5.
The htmlEscape tagD.6.
The message tagD.7.
The nestedPath tagD.8.
The theme tagD.9.
The transform tag
E.
spring-form.tld
E.1.
IntroductionE.2.
The checkbox tagE.3.
The checkboxes tagE.4.
The errors tagE.5.
The form tagE.6.
The hidden tagE.7.
The input tagE.8.
The label tagE.9.
The option tagE.10.
The options tagE.11.
The password tagE.12.
The radiobutton tagE.13.
The radiobuttons tagE.14.
The select tagE.15.
The textarea tag
F. Spring 2.5开发手册中文化项目
F.1.
声明F.2.
致谢F.3.
参与人员F.4.
项目历程
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: