Spring Data Access 源碼精講

王濤

  • 出版商: 清華大學
  • 出版日期: 2022-11-01
  • 定價: $528
  • 售價: 8.5$449
  • 語言: 簡體中文
  • ISBN: 7302613842
  • ISBN-13: 9787302613848
  • 相關分類: Java 相關技術
  • 立即出貨 (庫存 < 3)

  • Spring Data Access 源碼精講-preview-1
  • Spring Data Access 源碼精講-preview-2
  • Spring Data Access 源碼精講-preview-3
Spring Data Access 源碼精講-preview-1

買這商品的人也買了...

商品描述

本書圍繞Spring Data Access相關技術,著重強調方法的流程分析和成員變量的分析,測試用例的數量相對較少。 本書內容包含Spring Data Access中的四大核心模塊的使用及其源碼分析,四大模塊分別是spring-jdbc、spring-tx、spring-orm和spring-oxm。本書可以幫助讀者快速掌握這四大模塊的基本使用方法以及Spring Data Access中常見接口的處理流程。 本書的源碼分析大部分情況下遵循測試用例優先,盡可能保證源碼可復現。 本書適合作為具有一定Java編程基礎的讀者、對Spring框架有基礎開發能力的讀者和對Spring Data Access開發有一定實踐經驗的讀者的參考用書。

目錄大綱

目錄

 

 

 

第1章  Spring數據源碼環境搭建與核心類介紹

1.1  spring-jdbc測試環境搭建

1.1.1  spring-jdbc基於SpringXML環境搭建

1.1.2  spring-jdbc基於Spring註解模式環境搭建

1.2  spring-orm測試環境搭建

1.2.1  spring-orm基於SpringXML環境搭建

1.2.2  spring-orm基於Spring註解模式環境搭建

1.3  Spring數據操作中的核心類

1.4  總結

第2章  JdbcTemplate類分析

2.1  初識JdbcTemplate類

2.1.1  DataSource分析

2.1.2  JdbcTemplate的初始化

2.2  JdbcTemplate中的執行操作分析

2.2.1  獲取數據庫鏈接對象

2.2.2  應用Statement的配置數據

2.2.3  處理警告信息

2.2.4  釋放鏈接對象

2.2.5  配合PreparedStatementCreator和PreparedStatementCallback的執行操作

2.2.6  配合ConnectionCallback的執行操作

2.3  JdbcTemplate中的查詢操作分析

2.3.1  RowMapperResultSetExtractor對象分析

2.3.2  query方法分析

2.3.3  RowMapper接口分析

2.3.4  ResultSetExtractor對象分析

2.4  JdbcTemplate中的更新操作分析

2.4.1  配合PreparedStatementCreator和PreparedStatementSetter的更新操作

2.4.2  配合SQL的批量更新

2.5  PreparedStatementCreator和PreparedStatementSetter接口分析

2.5.1  PreparedStatementCreatorImpl對象分析

2.5.2  SimplePreparedStatementCreator對象分析

2.5.3  ArgumentTypePreparedStatementSetter對象分析

2.5.4  ArgumentPreparedStatementSetter對象分析

2.6  NamedParameterJdbcTemplate分析

2.6.1  NamedParameterJdbcTemplate中的執行操作

2.6.2  NamedParameterJdbcTemplate中的更新操作

2.6.3  NamedParameterJdbcTemplate中的查詢操作

2.7  SqlParameterSource接口分析

2.7.1  EmptySqlParameterSource類分析

2.7.2  AbstractSqlParameterSource類分析

2.7.3  BeanPropertySqlParameterSource類分析

2.7.4  MapSqlParameterSource類分析

2.8  JdbcTemplate中的call方法分析

2.8.1  extractReturnedResults方法分析

2.8.2  extractOutputParameters方法分析

2.9  總結

第3章  SimpleJdbc類分析

3.1  SimpleJdbcInsert測試環境搭建

3.2  SimpleJdbcCall測試環境搭建

3.3  SimpleJdbcInsert類分析

3.3.1  SimpleJdbcInsert初始化分析

3.3.2  SimpleJdbcInsert執行方法分析

3.4  SimpleJdbcCall類分析

3.4.1  SimpleJdbcCall中的checkCompiled方法分析

3.4.2  SimpleJdbcCall中的matchInParameterValuesWithCallParameters方法分析

3.4.3  SimpleJdbcCall中的executeCallInternal方法分析

3.5  總結

第4章  RdbmsOperation 類分析

4.1  RdbmsOperation測試環境搭建

4.1.1  SqlQuery測試環境搭建

4.1.2  SqlUpdate測試環境搭建

4.2  初識RdbmsOperation類

4.3  SqlOperation類分析

4.4  SqlQuery類分析

4.5  SqlUpdate類分析

4.6  總結

第5章  spring-jdbc中的數據源對象

5.1  spring-jdbc數據源對象梗概

5.2  委派模式下的數據源

5.2.1  TransactionAwareDataSourceProxy中獲取數據庫鏈接對象

5.2.2  UserCredentialsDataSourceAdapter中獲取數據庫鏈接對象

5.2.3  IsolationLevelDataSourceAdapter中獲取數據庫鏈接對象

5.2.4  WebSphereDataSourceAdapter中獲取數據庫鏈接對象

5.3  AbstractDataSource 系列的數據源

5.4  總結

第6章  spring-jdbc中異常分析

6.1  SQLErrorCodesFactory 分析

6.1.1  SQL異常狀態碼初始化

6.1.2  SQLErrorCodes對象分析

6.2  SQLExceptionTranslator接口分析

6.2.1  AbstractFallbackSQLExceptionTranslator類分析

6.2.2  SQLExceptionSubclassTranslator類分析

6.2.3  SQLStateSQLExceptionTranslator類分析

6.2.4  SQLErrorCodeSQLExceptionTranslator類分析

6.3  總結

第7章  spring-jdbc與嵌入式數據庫

7.1  嵌入式數據庫環境搭建

7.2  嵌入式數據庫實例化分析

7.2.1  configureConnectionProperties方法分析

7.2.2  DatabasePopulatorUtils.execute分析

7.3  總結

第8章  Spring事務中的三個關鍵類

8.1  Spring 事務測試環境搭建

8.2  事務相關接口說明

8.2.1  TransactionExecution接口

8.2.2  SavepointManager接口

8.2.3  TransactionStatus接口

8.2.4  TransactionDefinition接口

8.2.5  PlatformTransactionManager接口

8.2.6  TransactionCallback接口

8.2.7  TransactionOperations接口

8.2.8  TransactionFactory接口

8.3  AbstractPlatformTransactionManager類分析

8.3.1  handleExistingTransaction方法分析

8.3.2  suspend方法分析

8.3.3  newTransactionStatus方法分析

8.3.4  prepareSynchronization方法分析

8.3.5  prepareTransactionStatus 方法分析

8.3.6  doSuspendSynchronization方法分析

8.3.7  doResumeSynchronization方法分析

8.3.8  AbstractPlatformTransactionManager中commit方法分析

8.3.9  AbstractPlatformTransactionManager中rollback方法分析

8.3.10  AbstractPlatformTransactionManager特殊方法說明

8.4  DataSourceTransactionManager類分析

8.4.1  DataSourceTransactionManager中InitializingBean接口實現分析

8.4.2  DataSourceTransactionManager中doBegin方法分析

8.4.3  DataSourceTransactionManager中doSuspend方法分析

8.4.4  DataSourceTransactionManager中doResume方法分析

8.4.5  DataSourceTransactionManager中doCommit方法分析

8.4.6  DataSourceTransactionManager中doRollback方法分析

8.4.7  DataSourceTransactionManager中doSetRollbackOnly方法分析

8.4.8  DataSourceTransactionManager中doCleanupAfterCompletion方法分析

8.5  TransactionTemplate類分析

8.6  總結

第9章  EnableTransactionManagement相關分析

9.1  EnableTransactionManagement註解簡介

9.2  TransactionManagementConfigurationSelector類分析

9.3  AutoProxyRegistrar類分析

9.4  ProxyTransactionManagementConfiguration類分析

9.5  AspectJTransactionManagementConfiguration類分析

9.6  AspectJJtaTransactionManagementConfiguration類分析

9.7  AbstractTransactionManagementConfiguration類分析

9.8  TransactionalEventListenerFactory類分析

9.9  總結

第10章  Spring事務切麵支持

10.1  TransactionAspectSupport類分析

10.2  TransactionInterceptor類分析

10.3  ReactiveTransactionSupport類分析

10.3.1  響應式createTransactionIfNecessary方法分析

10.3.2  響應式prepareTransactionInfo方法分析

10.3.3  響應式commitTransactionAfterReturning方法分析

10.3.4  響應式completeTransactionAfterThrowing方法分析

10.3.5  響應式invokeWithinTransaction 方法分析

10.4  總結

第11章  事務定義及事務屬性源對象分析

11.1  事務定義和事務屬性介紹

11.2  默認的事務屬性對象及其子類

11.3  默認的事務定義

11.4  靜態事務定義

11.5  委派事務定義及其子類

11.6  TransactionAttributeSource基礎認識

11.7  NameMatchTransactionAttributeSource類分析

11.8  AbstractFallbackTransactionAttributeSource類分析

11.9  CompositeTransactionAttributeSource類分析

11.10  MethodMapTransactionAttributeSource類分析

11.11  總結

第12章  Spring事務註解解析接口

12.1  初識TransactionAnnotationParser接口

12.2  Ejb3TransactionAnnotationParser類分析

12.3  JtaTransactionAnnotationParser類分析

12.4  SpringTransactionAnnotationParser類分析

12.5  總結

第13章  保存點管理器、事務工廠與事務執行器

13.1  初識SavepointManager

13.2  AbstractTransactionStatus及其子類分析

13.3  JdbcTransactionObjectSupport類分析

13.3.1  HibernateTransactionObject類

13.3.2  JpaTransactionObject類

13.3.3  DataSourceTransactionObject類

13.4  初識事務工廠

13.5  SimpleTransactionFactory類分析

13.6  JtaTransactionManager 及其子類分析

13.6.1  InitializingBean接口實現細節

13.6.2  AbstractPlatformTransactionManager中doGetTransaction方法的實現

13.6.3  WebLogicJtaTransactionManager類分析

13.6.4  WebSphereUowTransactionManager類分析

13.7  初識事務執行器

13.8  總結

第14章  AbstractPlatformTransactionManager子類分析

14.1  CciLocalTransactionManager類分析

14.1.1  getResourceFactory方法分析

14.1.2  doGetTransaction方法分析

14.1.3  isExistingTransaction方法分析

14.1.4  doBegin 方法分析

14.1.5  doSuspend 方法分析

14.1.6  doResume方法分析

14.1.7  doCommit方法分析

14.1.8  doRollback方法分析

14.1.9  doSetRollbackOnly方法分析

14.1.10  doCleanupAfterCompletion方法分析

14.2  JpaTransactionManager類分析

14.3  HibernateTransactionManager類分析

14.4  總結

第15章  Spring事務處理流程分析

15.1  Spring註解模式下事務處理流程

15.2  總結

第16章  spring-orm與Hibernate基礎分析

16.1  spring-orm與Hibernate環境搭建之基於Spring註解

16.2  spring-orm與Hibernate環境搭建之基於SpringXML

16.3  LocalSessionFactoryBean類分析

16.4  初識HibernateTemplate類

16.5  doExecute方法分析

16.6  總結

第17章  spring-orm模塊中Hibernate框架的重點類分析

17.1  OpenSessionInViewInterceptor類分析

17.2  HibernateDaoSupport類分析

17.3  OpenSessionInterceptor類分析

17.4  OpenSessionInViewFilter類分析

17.5  SessionHolder類分析

17.6  SpringBeanContainer類分析

17.7  SpringSessionContext類分析

17.8  總結

第18章  spring-orm模塊中JPA的persistenceunit和support

18.1  初識persistenceunit

18.2  PersistenceUnitManager接口分析

18.3  SmartPersistenceUnitInfo接口分析

18.4  AsyncRequestInterceptor類分析

18.5  OpenEntityManagerInViewFilter類分析

18.6  OpenEntityManagerInViewInterceptor類分析

18.7  PersistenceAnnotationBeanPostProcessor類分析

18.8  SharedEntityManagerBean類分析

18.9  總結

第19章  spring-orm模塊中JPA核心對象分析

19.1  AbstractEntityManagerFactoryBean類分析

19.1.1  LocalEntityManagerFactoryBean類分析

19.1.2  LocalContainerEntityManagerFactoryBean類分析

19.2  JpaVendorAdapter接口分析

19.2.1  AbstractJpaVendorAdapter類分析

19.2.2  HibernateJpaVendorAdapter類分析

19.2.3  EclipseLinkJpaVendorAdapter類分析

19.3  ExtendedEntityManagerCreator類分析

19.4  EntityManagerFactoryUtils類分析

19.5  總結

第20章  spring-oxm分析

20.1  spring-oxm測試環境搭建

20.2  AbstractMarshaller類分析

20.3  XStreamMarshaller類分析

20.4  總結