19.把剩下的UPDATE/DELETE/ADD加上去,運(yùn)行了一下,所有均成功了
20.下面我們來(lái)回顧一下整個(gè)ibatis開發(fā)過程.
首先編寫User.xml,為了生效這個(gè)xml,需要將路徑加入sql-map-config.xml
接著編寫UserDao接口,放上我們需要的方法,如User getUser(int uid),void insertUser(User user),void updateUser(User user),void deleteUser(User user
然后寫UserSqlMapDao來(lái)實(shí)現(xiàn)UserDao接口
配置dao.xml,將接口和實(shí)現(xiàn)類mapping上
最后編寫test case,這步比較簡(jiǎn)單,特別注意源代碼的test case中寫死了數(shù)據(jù)庫(kù),需要通過編寫自己的MyPersistenceFixture和MyBasePersistenceTest來(lái)實(shí)現(xiàn)
最后運(yùn)行ant test來(lái)進(jìn)行單元測(cè)試,結(jié)果可以查看buildreportsjunitTEST-com.ibatis.jpetstore.persistence.UserDaoTest.xml這個(gè)文件
幾點(diǎn)容易范錯(cuò)誤的地方
a.test case容易訪問寫死的數(shù)據(jù)庫(kù)
b.大小寫不要錯(cuò)了
c.不要使用數(shù)據(jù)庫(kù)保留字,如user等
21.順便研究一下SQLMAP的一些特性
22下面接著寫Service,首先要明白service和dao的區(qū)別,service是業(yè)務(wù)邏輯層面,dao是數(shù)據(jù)庫(kù)操作,service可以由一個(gè)db操作,也可以由多個(gè)db操,比如更新用戶信息可以由首先檢查用戶是否存在select,然后更新update組成
23.用JMock進(jìn)行單元測(cè)試
這些個(gè)比較簡(jiǎn)單,就不貼代碼了,各位試試看