1.理解的Spring的DataAccessException
DataAccessException:是Spring提供了一種與特定技術無關的異常,實現服務層與數據訪問層的分離。
你不一定要處理DataAccessException,同時由于DataAccessException是NestedRunTimeException的子類,
你可以通過它的getCourse()獲得導致這個異常的另一個異常,這樣你就可以獲得與特定技術相關的異常信息。
Spring為你打造異常分類
Spring清楚與特定技術相關的異常,Spring自己會拋出更為精確的異常
CleanupFailureDataAccessException
DataAccessResourceFailureException
DataIntegrityViolationException
DataRetrieveFailureException
DeadlockLoserDataAccessException
IncorrectUpdataSemanticsDataAccessException
InvalidDataAccessApiUsageException
InvalidDataAccessResourceUsageException
OptimisticLockingFailureException
TypeMismatchDataAccessException
UncategorizeDataAccesException
2.與DataSource一起工作
從JNDI中獲得DataSource
創建一個DataSource連接池? org.apache.commons.dbcp.BasicDataSource
在測試時使用DataSource?? DriveManageDataSource
3.一致的DAO支持
Tempate模式
流程順序不變,可能有某個流程的細節是要變化,這個交給接口了,然后每個實現著去實現這個接口就可以。
所以Spring是通過提供相應的模板類來實現的,同時也提供了支撐類。
4.Spring與hibernate整合
Spring與hibernate整合主要在以下幾方面:
整合事務管理
異常處理
線程安全,輕量級模板類
便利的支持類
資源管理
配置SessionFactory
LocalSessionFactoryBean
dataSource
hibernateProperties
mappingDirectoryLocations
mappingResources
HibernateTemplate
HibernateDaoSupport