书目录"/>
发布《Spring揭秘》整书目录
《Unveil Spring》从07年10月开始写作到现在近乎两年了,现在图灵出版社还在对整本书进行编辑,所以,没办法,先把整本书的目录贴一下吧,权作“望梅止渴”,何如?
这个目录是最原始的目录结构,但正式出版之后,可能会有所变动,因为原来的目录层次太深,出版界的一些规矩啥的,所以,现在将原来的内容打散到了33章中,分做几个大的部分,尽量保持了原来的层次表意。
Table of Contents
- 序言 1. Spring框架的由来(What's Spring?)
-
- 1.1. Spring之崛起(Why Spring Arise?) 1.2. Spring框架概述(Spring Overview) 1.3. Spring大观园
2. Spring的IoC容器(The IoC Container Of Spring) -
- 2.1. IoC基本概念(IoC Concept)
-
- 2.1.1. 我们的理念是: 让别人为你服务! 2.1.2. 手语,呼喊,还是心有灵犀?(IoC的注入方式)
-
- 2.1.2.1. 构造方法注入方式(Constructor Injection) 2.1.2.2. Setter方法注入方式(Setters Injection) 2.1.2.3. 接口注入方式(Interface Injection) 2.1.2.4. 注入方式的比较
2.1.3. IoC的附加值(What can IoC bring to us?)
2.2. 掌管大局的“IoC Service Provider ” -
-
- 2.2.1. IoC Service Provider的职责 2.2.2. 运筹帷幄的秘密-IoC Service Provider如何管理对象间的依赖关系
-
- 2.2.2.1. 直接编码方式(register via programming) 2.2.2.2. 配置文件方式(register via configuration files) 2.2.2.3. 元数据方式(register via Annotation or Meta data)
2.3. Spring的IoC容器 -
-
- 2.3.1. BeanFactory
-
- 2.3.1.1. 拥有BeanFactory之后的生活 2.3.1.2. BeanFactory的对象注册与依赖绑定方式
-
- 2.3.1.2.1. 直接编码方式 2.3.1.2.2. 外部配置文件方式
-
- 2.3.1.2.2.1. Properties配置格式的加载 2.3.1.2.2.2. XML配置格式的加载
2.3.1.2.3. Annotation方式
2.3.1.3. BeanFactory的XML之旅 -
-
- 2.3.1.3.1. beans和bean
-
- 2.3.1.3.1.1. <beans>之唯我独尊 2.3.1.3.1.2. description,import和alias
2.3.1.3.2. 孤孤单单一个人(single bean) 2.3.1.3.3. Help Me, Help You(how to express dependency) -
- 2.3.1.3.3.1. 构造方法注入的XML之道 2.3.1.3.3.2. setter方法注入的XML之道 2.3.1.3.3.3. property和constructor-arg之内 2.3.1.3.3.4. depends-on 2.3.1.3.3.5. autowire 2.3.1.3.3.6. dependency-check 2.3.1.3.3.7. lazy-init
2.3.1.3.4. 继承?我也会! 2.3.1.3.5. bean的scope -
- 2.3.1.3.5.1. singleton scope 2.3.1.3.5.2. prototype scope 2.3.1.3.5.3. request,session和global session 2.3.1.3.5.4. 自定义scope类型
2.3.1.3.6. Factory Method与FactoryBean -
- 2.3.1.3.6.1. 静态工厂方法(Static Factory Method) 2.3.1.3.6.2. 非静态工厂方法(Instance Factory Method) 2.3.1.3.6.3. FactoryBean
2.3.1.3.7. 偷梁换柱之术 -
- 2.3.1.3.7.1. 方法注入(Method Injection) 2.3.1.3.7.2. 殊途同归 2.3.1.3.7.3. 方法替换(Method Replacement)
2.3.1.4. 容器背后的秘密(The Magic Behind) -
-
- 2.3.1.4.1. “战略性观望 ” 2.3.1.4.2. 插手容器的启动(BeanFactoryPostProcessor)
-
- 2.3.1.4.2.1. PropertyPlaceholderConfigurer 2.3.1.4.2.2. PropertyOverrideConfigurer 2.3.1.4.2.3. CustomEditorConfigurer
2.3.1.4.3. 了解Bean的一生(Bean's lifecycle) -
- 2.3.1.4.3.1. Bean的实例化与BeanWrapper 2.3.1.4.3.2. 各色的Aware接口 2.3.1.4.3.3. BeanPostProcessor 2.3.1.4.3.4. InitializingBean和init-method 2.3.1.4.3.5. DisposableBean与destroy-method
-
2.3.2. ApplicationContext -
-
- 2.3.2.1. 统一资源加载策略
-
- 2.3.2.1.1. Spring中的Resource 2.3.2.1.2. ResourceLoader,“更广义的URL ”
-
- 2.3.2.1.2.1. 可用的ResourceLoaders(ResourceLoaders Available) 2.3.2.1.2.2. ResourcePatternResolver - 批量查找的ResourceLoader 2.3.2.1.2.3. 回顾与展望
2.3.2.1.3. ApplicationContext与ResourceLoader -
- 2.3.2.1.3.1. 扮演ResourceLoader的角色(Act As a ResourceLoader) 2.3.2.1.3.2. ResourceLoader类型的注入 2.3.2.1.3.3. Resource类型的注入 2.3.2.1.3.4. 特定情况下ApplicationContext的Resource加载行为
2.3.2.2. 国际化信息支持(I18N MessageSource) -
-
- 2.3.2.2.1. JavaSE提供的国际化支持 2.3.2.2.2. MessageSource与ApplicationContext
-
- 2.3.2.2.2.1. 可用的MessageSource实现(Available MessageSources) 2.3.2.2.2.2. MessageSourceAware和MessageSource的注入
2.3.2.3. 容器内部事件发布(Event publication in Spring container) -
-
- 2.3.2.3.1. 自定义事件发布(Custom Event publication) 2.3.2.3.2. Spring的容器内事件发布类结构分析 2.3.2.3.3. Spring容器内事件发布的应用
2.3.2.4. 多配置模块加载的简化
-
2.4. Spring IoC容器之扩展篇 -
-
- 2.4.1. Spring2.5之“基于Annotation的依赖注入 ”(Annotation-based Dependency injection in spring2.5)
-
- 2.4.1.1. Annotation版的自动绑定(@Autowired)
-
- 2.4.1.1.1. 从自动绑定(autowire)到@Autowired 2.4.1.1.2. @Qualifier的陪伴
2.4.1.2. 换一种心情(JSR250) 2.4.1.3. 将革命进行的更彻底一些(classpath-scanning) 2.4.1.4. 结束语
-
-
3. Spring AOP framework -
-
- 3.1. 一起来看AOP!
-
- 3.1.1. AOP的尴尬 3.1.2. AOP走向现实 3.1.3. Java平台上的AOP实现机制(AOP Implementation Mechanism on Java Platform)
-
- 3.1.3.1. 动态代理(Dynamic Proxy) 3.1.3.2. 动态字节码增强(dynamic byte-code enhancement) 3.1.3.3. Java代码生成(Java Code Generation) 3.1.3.4. 自定义类加载器(Custom Classloader) 3.1.3.5. AO Language扩展(AOL extension)
3.1.4. AOP国家之公民(Basic Concepts of AOP ) -
- 3.1.4.1. Joinpoint 3.1.4.2. Pointcut
-
- 3.1.4.2.1. Pointcut的表述方式 3.1.4.2.2. Pointcut运算
3.1.4.3. Advice -
- 3.1.4.3.1. Before Advice 3.1.4.3.2. After Advice 3.1.4.3.3. Around Advice 3.1.4.3.4. Introduction
3.1.4.4. Aspect 3.1.4.5. Weaving and Weaver 3.1.4.6. Target
-
3.2. Spring AOP 正题 -
-
- 3.2.1. 概述 3.2.2. SpringAOP的实现机制
-
- 3.2.2.1. 设计模式之代理模式(Proxy Pattern) 3.2.2.2. 动态代理(Dynamic Proxy) 3.2.2.3. 动态字节码生成(byte code generation with cglib)
3.2.3. SpringAOP一世 -
- 3.2.3.1. Joinpoint in spring aop 3.2.3.2. Pointcuts in spring aop
-
- 3.2.3.2.1. 常见的Pointcuts(Common Pointcuts implementations) 3.2.3.2.2. 扩展Pointcut(Customize Pointcut)
-
- 3.2.3.2.2.1. 自定义StaticMethodMatcherPointcut 3.2.3.2.2.2. 自定义DynamicMethodMatcherPointcut
3.2.3.2.3. IoC容器中的Pointcut
3.2.3.3. Advices in spring aop -
-
- 3.2.3.3.1. per-class 类型的Advice
-
- 3.2.3.3.1.1. BeforeAdvice 3.2.3.3.1.2. ThrowsAdvice 3.2.3.3.1.3. AfterReturningAdvice 3.2.3.3.1.4. AroundAdvice
3.2.3.3.2. per-instance类型的Advice -
- 3.2.3.3.2.1. Introduction
3.2.3.4. Aspect(Advisor) in spring aop -
-
- 3.2.3.4.1. PointcutAdvisor家族
-
- 3.2.3.4.1.1. DefaultPointcutAdvisor 3.2.3.4.1.2. NameMatchMethodPointcutAdvisor 3.2.3.4.1.3. RegexpMethodPointcutAdvisor 3.2.3.4.1.4. DefaultBeanFactoryPointcutAdvisor
3.2.3.4.2. IntroductionAdvisor分支 3.2.3.4.3. Ordered的作用
3.2.3.5. SpringAOP的织入(Weaving in SpringAOP) -
-
- 3.2.3.5.1. 如何与ProxyFactory打交道(How to use ProxyFactory)
-
- 3.2.3.5.1.1. 基于接口的代理 3.2.3.5.1.2. 基于类的代理 3.2.3.5.1.3. Introduction的织入
3.2.3.5.2. 看清ProxyFactory的本质(The True Color of ProxyFactory) 3.2.3.5.3. 容器中的Weaver-ProxyFactoryBean -
- 3.2.3.5.3.1. ProxyFactoryBean的本质 3.2.3.5.3.2. ProxyFactoryBean的使用
3.2.3.5.4. 加快织入的自动化进程(accelerate weaving process with autoproxy) -
- 3.2.3.5.4.1. AutoProxy得以实现的原理 3.2.3.5.4.2. 可用的AutoProxyCreator 3.2.3.5.4.3. 扩展AutoProxyCreator
3.2.3.6. TargetSource -
-
- 3.2.3.6.1. 可用的TargetSource实现类
-
- 3.2.3.6.1.1. SingletonTargetSource 3.2.3.6.1.2. PrototypeTargetSource 3.2.3.6.1.3. HotSwappableTargetSource 3.2.3.6.1.4. CommonsPoolTargetSource 3.2.3.6.1.5. ThreadLocalTargetSource
3.2.3.6.2. 自定义TargetSource
-
3.2.4. SpringAOP二世 -
-
- 3.2.4.1. @AspectJ形式的SpringAOP
-
- 3.2.4.1.1. @AspectJ形式AOP使用之先睹为快
-
- 3.2.4.1.1.1. 编程方式织入 3.2.4.1.1.2. 通过autoproxy织入
3.2.4.1.2. @AspectJ形式的Pointcut -
- 3.2.4.1.2.1. @AspectJ形式Pointcut的声明方式 3.2.4.1.2.2. @AspectJ形式Pointcut表达式的标志符 3.2.4.1.2.3. @AspectJ形式的Pointcut在Spring aop中的真实面目
3.2.4.1.3. @AspectJ形式的Advice -
- 3.2.4.1.3.1. Before Advice 3.2.4.1.3.2. After Throwing Advice 3.2.4.1.3.3. After Returning Advice 3.2.4.1.3.4. After(finally) Advice 3.2.4.1.3.5. Around Advice 3.2.4.1.3.6. Introduction
3.2.4.1.4. 有关@AspectJ中的Aspect更多话题 -
- 3.2.4.1.4.1. Advice的执行顺序 3.2.4.1.4.2. Aspect的实例化模式
3.2.4.2. 基于Schema的AOP -
-
- 3.2.4.2.1. 基于schema的aop配置概览 3.2.4.2.2. 向基于schema的aop迁移
-
- 3.2.4.2.2.1. 单纯的迁移 3.2.4.2.2.2. 深入挖掘<aop:advisor>
3.2.4.2.3. @AspectJ到基于schema的aop迁移 -
- 3.2.4.2.3.1. 基于schema的Aspect声明 3.2.4.2.3.2. 基于schema的Pointcut声明 3.2.4.2.3.3. 基于schema的Advice声明 3.2.4.2.3.4. 其他需要关注的地方
-
3.2.5. 殊途同归(谈SpringAOP使用方式的选择) -
3.3. AOP应用案例(AOP Use cases) -
-
- 3.3.1. 异常处理(Exception Handling)
-
- 3.3.1.1. 异常处理简单攻略(Exception Handling Introduction) 3.3.1.2. fault barrier
3.3.2. 安全检查(security checking) 3.3.3. 缓存(caching)
3.4. SpringAOP扩展篇 -
-
- 3.4.1. 有关暴露当前调用的代理对象的探讨
-
- 3.4.1.1. 问题的现象 3.4.1.2. 原因的分析 3.4.1.3. 解决方案
-
4. 使用Spring进行数据访问(Data Access With Spring) -
-
- 4.1. 统一的数据访问异常层次体系(Consistent Exception Hierarchy In Spring)
-
- 4.1.1. DAO模式的背景(Background of the DAO Pattern) 4.1.2. 梦想照进现实(The reality of implementing the DAO pattern) 4.1.3. 发现问题,解决问题(How to get through?) 4.1.4. 不重新发明轮子(Don't Reinvent The Wheels.)
4.2. JDBC API的最佳实践(JDBC made easy with spring) -
- 4.2.1. 基于Template的Jdbc使用方式
-
- 4.2.1.1. JDBC的尴尬 4.2.1.2. JdbcTemplate的诞生
-
- 4.2.1.2.1. 模板方法模式简介(Template Method Pattern Introduction) 4.2.1.2.2. JdbcTemplate的演化 4.2.1.2.3. 使用DataSourceUtils进行Connection的管理 4.2.1.2.4. 使用NativeJdbcExtractor来获得“真相 ” 4.2.1.2.5. 控制JdbcTemplate的行为 4.2.1.2.6. SQLException到DataAccessException体系的转译
-
- 4.2.1.2.6.1. 扩展SQLErrorCodeSQLExceptionTranslator 4.2.1.2.6.2. 提供sql-error-codes.xml自定义配置
4.2.1.3. JdbcTemplate和他的兄弟们 -
-
- 4.2.1.3.1. 使用JdbcTemplate进行数据访问
-
- 4.2.1.3.1.1. 初始化JdbcTemplate 4.2.1.3.1.2. 基于JdbcTemplate的数据访问 4.2.1.3.1.3. 递增主键生成策略的抽象 4.2.1.3.1.4. Spring中的Lob类型处理
4.2.1.3.2. NamedParameterJdbcTemplate -
- 4.2.1.3.2.1. NamedParameterJdbcTemplate的功能 4.2.1.3.2.2. NamedParameterJdbcTemplate的实现原理
4.2.1.3.3. SimpleJdbcTemplate
4.2.1.4. Spring中的DataSource -
-
- 4.2.1.4.1. DataSource的种类 4.2.1.4.2. DataSource的访问方式
-
- 4.2.1.4.2.1. 本地DataSource访问 4.2.1.4.2.2. 远程DataSource访问
4.2.1.4.3. 自定义DataSource实现 -
- 4.2.1.4.3.1. 新建DataSource实现 4.2.1.4.3.2. 为现有DataSource添加新行为
4.2.1.5. JdbcDaoSupport -
4.2.2. 基于操作对象(Operation Object)的Jdbc使用方式 -
-
- 4.2.2.1. 基于操作对象的查询
-
- 4.2.2.1.1. MappingSqlQueryWithParameters 4.2.2.1.2. MappingSqlQuery 4.2.2.1.3. SqlFunction 4.2.2.1.4. UpdatableSqlQuery 4.2.2.1.5. 基于操作对象的LOB查询
4.2.2.2. 基于操作对象的更新 -
- 4.2.2.2.1. SqlUpdate 4.2.2.2.2. BatchSqlUpdate 4.2.2.2.3. 基于操作对象的LOB更新
4.2.2.3. 基于操作对象的存储过程调用 -
- 4.2.2.3.1. StoredProcedure
-
4.3. Spring对各种ORM的集成(ORM Integration In Spring) -
-
- 4.3.1. Spring对Hibernate的集成
-
- 4.3.1.1. 旧日“冬眠 ”时光 4.3.1.2. “春天 ”里的“冬眠 ”(Hibernate with Spring Framework)
-
- 4.3.1.2.1. HibernateTemplate的登场
-
- 4.3.1.2.1.1. 基于HibernateTemplate的Session资源管理 4.3.1.2.1.2. 特定的Hibernate数据访问异常转译 4.3.1.2.1.3. 基本数据访问操作
4.3.1.2.2. Spring中的SessionFactory的配置及获取 -
- 4.3.1.2.2.1. LocalSessionFactoryBean 4.3.1.2.2.2. AnnotationSessionFactoryBean 4.3.1.2.2.3. 通过JNDI获取SessionFactory
4.3.1.2.3. HibernateDaoSupport
-
4.3.2. Spring对iBatis的集成 -
-
- 4.3.2.1. iBatis实践之前生篇 4.3.2.2. iBatis实践之今世篇
-
- 4.3.2.2.1. SqlMapClientTemplate的实现 4.3.2.2.2. SqlMapClientTemplate的使用
-
- 4.3.2.2.2.1. SqlMapClientTemplate的构建 4.3.2.2.2.2. 使用SqlMapClientCallback进行数据访问 4.3.2.2.2.3. 基于SqlMapClientTemplate基本数据访问操作
4.3.2.2.3. SqlMapClientDaoSupport
-
4.3.3. Spring中对其他ORM方案的集成概略 -
-
- 4.3.3.1. spring对JDO的集成
-
- 4.3.3.1.1. Spring中的JDO资源管理 4.3.3.1.2. Spring的JDO异常转译 4.3.3.1.3. JdoDaoSupport
4.3.3.2. spring对TopLink的集成 -
- 4.3.3.2.1. Spring中的toplink资源管理 4.3.3.2.2. toplink数据访问异常到spring异常体系的转译 4.3.3.2.3. TopLinkDaoSupport
4.3.3.3. spring对JPA的集成 -
- 4.3.3.3.1. Spring中JPA的资源管理 4.3.3.3.2. Spring中JPA的异常转译 4.3.3.3.3. JpaDaoSupport
-
4.4. Spring数据访问扩展篇 -
-
- 4.4.1. 活用模板方法模式及Callback
-
- 4.4.1.1. FTPClientTemplate 4.4.1.2. HttpClientTemplate
4.4.2. 数据访问中的多数据源(Multi-DataSource in Data Access) -
- 4.4.2.1. “主权独立 ”的多数据源 4.4.2.2. “合纵连横 ”的多数据源 4.4.2.3. 结束语
-
5. Spring中的事务控制(Transacion Management with Spring) -
-
- 5.1. 有关事务(Transaction)的楔子
-
- 5.1.1. 认识事务本身 5.1.2. 初识事务家族成员
5.2. 群雄逐鹿下的Java事务管理 -
- 5.2.1. Java平台的局部事务支持 5.2.2. Java平台的分布式事务支持
-
- 5.2.2.1. 基于JTA的分布式事务管理
-
- 5.2.2.1.1. JTA编程事务管理 5.2.2.1.2. JTA声明性事务管理
5.2.2.2. 基于JCA的分布式事务管理
5.2.3. 继续前行之前的反思 -
5.3. 一统河山后的Spring事务管理 -
-
- 5.3.1. spring事务王国的架构
-
- 5.3.1.1. 统一中原的过程 5.3.1.2. 和平年代
-
- 5.3.1.2.1. TransactionDefinition
-
- 5.3.1.2.1.1. TransactionDefinition简介 5.3.1.2.1.2. TransactionDefinition相关实现
5.3.1.2.2. TransactionStatus 5.3.1.2.3. PlatformTransactionManager -
- 5.3.1.2.3.1. PlatformTransactionManager实现类概览 5.3.1.2.3.2. 窥一斑而知全豹
-
5.3.2. 使用spring进行事务管理 -
-
- 5.3.2.1. 编程式事务管理
-
- 5.3.2.1.1. 直接使用PlatformTransactionManager进行编程式事务管理 5.3.2.1.2. 使用TransactionTemplate进行编程式事务管理 5.3.2.1.3. 编程创建基于Savepoint的嵌套事务
5.3.2.2. 声明式事务管理 -
- 5.3.2.2.1. 引子 5.3.2.2.2. XML元数据驱动的声明式事务
-
- 5.3.2.2.2.1. 使用ProxyFactory(ProxyFactoryBean)+TransactionInterceptor 5.3.2.2.2.2. 使用“一站式 ”的TransactionProxyFactoryBean 5.3.2.2.2.3. 使用BeanNameAutoProxyCreator 5.3.2.2.2.4. 使用Spring2.x的声明事务配置方式
5.3.2.2.3. Annotation元数据驱动的声明式事务
-
-
5.4. spring事务管理之扩展篇 -
-
- 5.4.1. 理解并活用ThreadLocal
-
- 5.4.1.1. 理解ThreadLocal的存在背景 5.4.1.2. 理解ThreadLocal的实现 5.4.1.3. ThreadLocal的应用场景 5.4.1.4. 使用ThreadLocal管理多数据源切换的条件
5.4.2. 谈Strategy模式在开发过程中的应用 5.4.3. Spring与JTA背后的奥秘(Magic behind Spring and JTA)
-
6. Spring的Web MVC框架(Spring Web MVC Framework) -
-
- 6.1. 迈向SpringMVC的旅程
-
- 6.1.1. Servlet独行天下的时代 6.1.2. 繁盛一时的JSP时代 6.1.3. Servlet与JSP的联盟 6.1.4. 数英雄人物,还看今朝
6.2. SpringMVC正题 -
- 6.2.1. 鸟瞰SpringMVC 6.2.2. 实践出真知
-
- 6.2.2.1. SpringMVC应用的物理结构
-
- 6.2.2.1.1. ContextLoaderListener与/WEB-INF/applicationContext.xml 6.2.2.1.2. DispatcherServlet与XXX-servlet.xml
6.2.2.2. 按部就班的开始工作
6.2.3. 近距离接触SpringMVC主要角色 -
-
- 6.2.3.1. 忙碌的协调人HandlerMapping
-
- 6.2.3.1.1. 可用的HandlerMapping(Available HandlerMapping) 6.2.3.1.2. HandlerMapping执行序列(Chaining Of HandlerMapping)
6.2.3.2. 我们的亲密伙伴Controller -
- 6.2.3.2.1. AbstractController 6.2.3.2.2. MultiActionController
-
- 6.2.3.2.2.1. MultiActionController的助理MethodNameResolver 6.2.3.2.2.2. MultiActionController应用演示
6.2.3.2.3. SimpleFormController -
- 6.2.3.2.3.1. 了解数据绑定 6.2.3.2.3.2. Spring框架数据验证简介 6.2.3.2.3.3. 深入表单(form)处理流程 6.2.3.2.3.4. SimpleFormController应用演示
6.2.3.2.4. AbstractWizardFormController -
- 6.2.3.2.4.1. AbstractWizardFormController浅析 6.2.3.2.4.2. AbstractWizardFormController实例
6.2.3.2.5. 其他可用的Controller实现(Other Available Controllers)
6.2.3.3. ModelAndView -
-
- 6.2.3.3.1. ModelAndView中的视图信息 6.2.3.3.2. ModelAndView中的模型数据
6.2.3.4. 视图定位器ViewResolver -
- 6.2.3.4.1. 可用的ViewResolver实现类(Available ViewResolvers) 6.2.3.4.2. ViewResolver查找序列(Chaining Of ViewResolver)
6.2.3.5. 各司其职的View -
- 6.2.3.5.1. View实现原理回顾 6.2.3.5.2. 可用的View实现类(Available Views)
-
- 6.2.3.5.2.1. 使用JSP技术的View实现 6.2.3.5.2.2. 使用通用模板技术的View实现 6.2.3.5.2.3. 面向二进制文档格式的View实现 6.2.3.5.2.4. 面向JsperReport的View实现 6.2.3.5.2.5. 使用XSLT技术的View实现 6.2.3.5.2.6. RedirectView和逻辑视图名前缀
6.2.3.5.3. 自定义View实现(Custom View)
-
6.2.4. 细化后的场景 -
-
- 6.2.4.1. 文件上传与MultipartResolver
-
- 6.2.4.1.1. 使用MultipartResolver进行文件上传的简单分析(Analysis of file uploading with MultipartResolver) 6.2.4.1.2. 文件上传实践(File upload in action)
6.2.4.2. Handler与HandlerAdaptor -
- 6.2.4.2.1. 问题的起源 6.2.4.2.2. 深入了解Handler
-
- 6.2.4.2.2.1. 可用的Handler类型 6.2.4.2.2.2. 自定义Handler
6.2.4.2.3. 近看HandlerAdaptor的奥秘 6.2.4.2.4. 告知Handler与HandlerAdaptor的存在
6.2.4.3. 框架内处理流程拦截与HandlerInterceptor -
-
- 6.2.4.3.1. 可用的HandlerInterceptor实现(Available HandlerInterceptors) 6.2.4.3.2. 自定义实现HandlerInterceptor 6.2.4.3.3. HandlerInterceptor寻根 6.2.4.3.4. HandlerInterceptor之外的选择(Alternative to HandlerInterceptor)
6.2.4.4. 框架内的异常处理与HandlerExceptionResolver 6.2.4.5. 国际化视图与LocalResolver -
- 6.2.4.5.1. 可用的LocaleResolver 6.2.4.5.2. LocaleResolver的足迹 6.2.4.5.3. Locale的变更与LocaleChangeHandler
6.2.4.6. 主题(Theme)与ThemeResolver -
- 6.2.4.6.1. 提供主题资源的ThemeSource 6.2.4.6.2. 管理主题的ThemeResolver 6.2.4.6.3. 切换主题的ThemeChangeInterceptor
-
6.3. SpringMVC新的基于Annotation的Controller(Annotation-based Controller In SpringMVC) -
-
- 6.3.1. 初识“基于Annotation的Controller ” 6.3.2. “基于Annotation的Controller ”原型分析
-
- 6.3.2.1. 自定义用于“基于Annotation的Controller ”的HandlerMapping 6.3.2.2. 自定义用于“基于Annotation的Controller ”的HandlerAdaptor
6.3.3. 近看“基于Annotation的Controller ” -
- 6.3.3.1. 声明“基于Annotation的Controller ”
-
- 6.3.3.1.1. 再谈@Controller 6.3.3.1.2. @RequestMapping详解 6.3.3.1.3. 请求处理方法签名规则说明
6.3.3.2. 请求参数到方法参数的绑定 -
- 6.3.3.2.1. 默认绑定行为 6.3.3.2.2. 使用@RequestParam明确的指定绑定关系 6.3.3.2.3. 添加自定义数据绑定规则
-
- 6.3.3.2.3.1. 使用@InitBinder标注的初始化方法 6.3.3.2.3.2. 指定自定义的WebBindingInitializer
6.3.3.3. 使用@ModelAttribute访问模型数据 6.3.3.4. 通过@SessionAttribute管理session数据 -
-
6.4. SpringMVC扩展篇 -
-
- 6.4.1. SpringMVC也Convention Over Configuration
-
- 6.4.1.1. Convention Over Configuration简介 6.4.1.2. SpringMVC中的Convention Over Configuration
-
- 6.4.1.2.1. web请求与Handler之间的约定 6.4.1.2.2. ModelAndView中的约定 6.4.1.2.3. web请求与视图之间的约定
6.4.1.3. 结束语
-
-
7. Spring框架对J2EE服务的集成和支持(JavaEE Services Integration in Spring) -
-
- 7.1. Spring框架内的JNDI支持(JNDI Made Easy With Spring)
-
- 7.1.1. JNDI简单回顾 7.1.2. Spring框架内JNDI访问的基石-JndiTemplate 7.1.3. JNDI对象的依赖注入-JndiObjectFactoryBean
7.2. Spring框架对JMS的集成(JMS Made Easy With Spring) -
- 7.2.1. 说说JMS的身世 7.2.2. 使用JMS API进行应用开发的传统套路 7.2.3. Spring改进后的JMS实战格斗术
-
- 7.2.3.1. 消息发送和同步接收(Synchronous Message Sending and Receiving)
-
- 7.2.3.1.1. JmsTemplate亲密接触(More about JmsTemplate) 7.2.3.1.2. 同步消息处理场景浅析
7.2.3.2. 异步消息接收(asynchronous message receiving in spring2.5) -
- 7.2.3.2.1. 了解MessageListenerContainer 7.2.3.2.2. 消息驱动POJOs(Message-Driven POJOs)
7.2.3.3. JMS相关异常处理 7.2.3.4. 框架内的事务管理支持
-
7.3. 使用Spring发送Email(Java Mail Abstraction In Spring) -
-
- 7.3.1. 思甜前,先忆苦 7.3.2. Spring的Email抽象层分析(spring's email abstraction analysis) 7.3.3. Spring的Email支持在实际开发中的应用
7.4. Spring中的任务调度与线程池支持(Job Scheduling And Thread Pooling Support In Spring) -
- 7.4.1. Spring与Quartz
-
- 7.4.1.1. 初识Quartz 7.4.1.2. 融入Spring大家庭的Quartz
-
- 7.4.1.2.1. Job的实现策略 7.4.1.2.2. JobDetail的更多选择 7.4.1.2.3. Trigger的可配置化 7.4.1.2.4. Scheduler的新家
7.4.2. Spring对JDK Timer的集成 -
-
- 7.4.2.1. JDK Timer小记 7.4.2.2. Spring集成后的JDK Timer
-
- 7.4.2.2.1. 逃离TimerTask的魔咒 7.4.2.2.2. TimerTask的模块化封装 - ScheduledTimerTask 7.4.2.2.3. Timer的新家 - TimerFactoryBean
7.4.3. Executor的孪生兄弟TaskExecutor -
-
- 7.4.3.1. 可用的TaskExecutor 7.4.3.2. TaskExecutor使用实例
7.5. Spring框架JEE服务集成之扩展篇 -
-
- 7.5.1. MailMonitor的延伸
8. Spring远程方案(Spring Remoting) -
-
- 8.1. 从“对面交谈 ”到“千里传声 ” 8.2. Spring Remoting架构分析
-
- 8.2.1. Spring Remoting之远程访问异常体系 8.2.2. 统一风格的远程服务暴露与访问方式(consistent style for exposing and accessing remote services)
8.3. Spring Remoting提供的远程服务支持 -
- 8.3.1. 基于RMI的Remoting方案
-
- 8.3.1.1. 通过RMI暴露远程服务 8.3.1.2. 通过RMI访问远程服务
8.3.2. 基于HTTP的lightweight Remoting方案 -
- 8.3.2.1. 基于HTTP远程方案的实现原型分析 8.3.2.2. Spring HTTP Invoker 8.3.2.3. Caucho Hession And Burlap
8.3.3. 基于Web Service的远程方案 -
- 8.3.3.1. 通过Web Service暴露远程服务 8.3.3.2. 通过Web Service访问远程服务
8.3.4. 基于JMS的远程方案 -
- 8.3.4.1. 基于JMS的远程方案实现分析 8.3.4.2. 通过JMS暴露和访问远程服务
8.4. 扩展Spring Remoting 8.5. Spring Remoting之扩展篇 -
-
- 8.5.1. 拉开JMX演出的序幕(Showtime for JMX)
A. 参考书目 B. 参考文章 -
更多推荐
发布《Spring揭秘》整书目录
发布评论