Spring框架管理Bean組件
Spring框架IoC機制實現Bean之間調用
Spring框架AoP機制實現共通Bean與目標Bean
之間的調用
===================
1.Spring中的註解配置
從JDK5.0開始,提供了註解,泛型,
新for循環,自動裝箱拆箱等技術。
目前框架利用註解替代XML配置內容。
註解是一種標記(@標記),可以寫在類定義前,
方法定義前,屬性變量定義前。
1)組件自動掃描技術
可以指定一個包路徑,Spring會自動掃描
該包及其子包下所有的Class組件,當發現
Class中有指定的註解標記,會轉化成原XML
配置中的<bean>定義.
使用方法如下:
--在Spring的主配置中開啓組件自動掃描
<context:component-scan
base-package="包路徑"/>
--在需要掃描進入Spring容器的Class中,
在類定義前使用下面註解標記之一
@Controller : Action組件
@Service : 業務組件
@Repository : DAO組件
@Component :其它組件
--如果需要注入Bean對象
在屬性變量或者set方法前使用下面標記
@Resource
@Autowired
上面標記是按類型匹配注入。如果需要
指定名稱注入可以使用
@Resource(name="指定id值")
或者@Autowired@Qualifier("指定id值")
2)AOP註解配置
使用方法如下:
--在Spring的主配置中開啓AOP註解配置
<aop:aspectj-autoproxy />
--編寫方面組件,在組件中使用下面註解標記
@Component//先將Bean掃描到Spring容器
@Aspect//將Bean指定爲方面組件
//通知標記
@Before //前置通知
@After //最終通知
@AfterReturining //後置通知
@AfterThrowing //異常通知
@Around //環繞通知
3)選擇XML還是註解
--註解方式簡單,快捷,不便於維護和修改.
--xml方式可讀性強,複雜,便於維護和修改
============Spring整合應用============
1.Spring對數據庫訪問技術的支持
--提供了整合的API
DaoSupport組件:編寫DAO的基類,提供
了一些DAO需要的方法。
JdbcDaoSupport,HibernateDaoSupport
Template組件: 封裝了增刪改查操作方法
JdbcTemplate,HibernateTemplate
--提供了一致的異常處理層次
將各種數據庫訪問技術異常類型統一成了
DataAccessException,在業務處理時,對
該異常進行捕獲處理即可
--提供了聲明式事務管理方法
基於AOP機制,只需要添加配置就可以
完成事務的控制
2.Spring對JDBC技術整合應用
整合開發步驟:
--引入開發包和配置
spring開發包,數據庫驅動,連接池開發包
spring的配置文件
--定義實體類和Dao接口
根據COST表編寫一個Cost類;
定義了一個ICostDao接口
--根據Dao接口編寫JDBC實現類
實現類需要繼承JdbcDaoSupport
利用DaoSupport提供的Template完成
增刪改查。
super.getJdbcTemplate()獲取Template對象
然後使用update(sql,參數數組Object[]);
實現增刪改操作。
queryForObject():查詢單行記錄
query():查詢多行記錄
queryForInt():查詢單行單列
RowMapper組件:用於將記錄轉換成實體對象
--將DAO組件定義到Spring容器中
--在Spring容器中定義一個連接池Bean對象
將連接池給DAO注入,爲template提供連接。
--測試,從Spring容器獲取DAO對象
Spring+JDBC註解整合
--在Spring的配置文件中開啓組件掃描
--在Dao組件中使用掃描註解@Repository
--在Dao中定義一個set方法,使用@Resource
將DataSource連接池注入,給daosupport傳入
--在Spring的配置文件中定義dataSource連接池
--獲取Spring容器的DAO對象,測試