部分 II. 中间层数据访问

开发手册的这一部分关注于中间层开发,并明确描述了这一层的数据访问职责。

首先,详细阐述了Spring全面的事务管理支持,随后,详细说明了Spring Framework如何支持多种中间层数据访问的框架和技术。

目录

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.7. 事务传播
9.5.8. 通知事务操作
9.5.9. 结合AspectJ使用 @Transactional
9.6. 编程式事务管理
9.6.1. 使用TransactionTemplate
9.6.2. 使用PlatformTransactionManager
9.7. 选择编程式事务管理还是声明式事务管理
9.8. 与特定应用服务器集成
9.8.1. IBM WebSphere
9.8.2. BEA WebLogic
9.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.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. 如何定义SqlParameters
11.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容器中创建 SessionFactory
12.2.3. The HibernateTemplate
12.2.4. 不使用回调的基于Spring的DAO实现
12.2.5. 基于Hibernate3的原生API实现DAO
12.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. JdoTemplateJdoDaoSupport
12.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 TopLinkDaoSupport
12.4.3. 基于原生的TopLink API的DAO实现
12.4.4. 事务管理
12.5. iBATIS SQL Maps
12.5.1. 创建SqlMapClient
12.5.2. 使用 SqlMapClientTemplateSqlMapClientDaoSupport
12.5.3. 基于原生的iBATIS API的DAO实现
12.6. JPA
12.6.1. 在Spring环境中建立JPA
12.6.2. JpaTemplateJpaDaoSupport
12.6.3. 基于原生的JPA实现DAO
12.6.4. 异常转化
12.7. 事务管理
12.8. JpaDialect