Terry.Li-彬

          虛其心,可解天下之問;專其心,可治天下之學;靜其心,可悟天下之理;恒其心,可成天下之業。

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            143 隨筆 :: 344 文章 :: 130 評論 :: 0 Trackbacks
          3.4. 持久層在討論業務層之前,我們先看一下持久層,如下圖所示:



          在上文中,我們把iface包下的DAO接口歸為業務層,在這里不需要做修改。ibatis的sql配置文件也不需要改。要改的是DAO實現類,并在spring的配置文件中配置起來。

          1、修改基類

          所有的DAO實現類都繼承于BaseSqlMapDao類。修改BaseSqlMapDao類如下:

          public class BaseSqlMapDao extends SqlMapClientDaoSupport
                      {
                      protected static final int PAGE_SIZE = 4;
                      protected SqlMapClientTemplate smcTemplate
                      = this.getSqlMapClientTemplate();
                      public BaseSqlMapDao()
                      {
                      }
                      }


          使BaseSqlMapDao類改為繼承于Spring提供的SqlMapClientDaoSupport類,并定義了一個保護屬性smcTemplate,其類型為SqlMapClientTemplate。

          2、修改DAO實現類

          所有的DAO實現類還是繼承于BaseSqlMapDao類,實現相應的DAO接口,但其相應的DAO操作委托SqlMapClientTemplate來執行,以AccountSqlMapDao類為例,部分代碼如下:

          public List getUsernameList()
                      {
                      return smcTemplate.queryForList("getUsernameList", null);
                      }
                      public Account getAccount(String username, String password)
                      {
                      Account account = new Account();
                      account.setUsername(username);
                      account.setPassword(password);
                      return (Account)
                      smcTemplate.queryForObject
                      ("getAccountByUsernameAndPassword", account);
                      }
                      public void insertAccount(Account account)
                      {
                      smcTemplate.update("insertAccount", account);
                      smcTemplate.update("insertProfile", account);
                      smcTemplate.update("insertSignon", account);
                      }


          就這么簡單,所有函數的簽名都是一樣的,只需要查找替換就可以了!
          posted on 2007-12-05 16:02 禮物 閱讀(355) 評論(0)  編輯  收藏 所屬分類: ibatis + spring
          主站蜘蛛池模板: 秭归县| 运城市| 乳山市| 玛多县| 靖远县| 湘阴县| 朝阳区| 岳阳市| 海口市| 全州县| 观塘区| 额尔古纳市| 临湘市| 美姑县| 英德市| 尉氏县| 会同县| 依兰县| 台中市| 神农架林区| 韩城市| 天长市| 宁武县| 古丈县| 呼伦贝尔市| 道真| 唐河县| SHOW| 黎川县| 大足县| 舒兰市| 日照市| 老河口市| 玉龙| 高清| 东光县| 涿鹿县| 江华| 阿拉善左旗| 莒南县| 湖北省|