根據章節id查找字段信息(Action+Service(Manager) +Dao三層的功能理解)

1、Dao層實現數據庫查詢方法,返回值類型爲List泛型數組

    //根據章節ID查詢字段信息
    public List<ShfwZlbdZd> searchZdList(String zjid) {
        String hql = "from ShfwZlbdZd t where t.zjid=? order by t.xh asc";
        return getHibernateTemplate().find(hql,zjid);
    }

2、Manager層調用Dao層中聲明的查詢方法

    //重寫getById方法
    public ShfwZlbdZd getById(String zjid){
        //根據章節id獲取字段基本信息
        ShfwZlbdZd zlbdzd = shfwZlbdZdDao.getById(zjid);

        //根據章節表單id獲取字段信息
        List<ShfwZlbdZd> list = shfwZlbdZdDao.searchZdList(zjid);

        //將獲取的章節信息存入zlbd的屬性中
        zlbdzd.setZds(list);

        //將整個質量表單信息返回調用方
        return zlbdzd;
    }

3、Action層(將獲取的數據轉換爲數組,並以Json格式輸出給客戶端)

    //聲明searchByZjId.do方法
    public void searchByZjId() {
        Map<String, Object> map = new HashMap<String, Object>();
        map.put("curPage", 1);
        map.put("success", true);

        List<ShfwZlbdZd> list = shfwZlbdZdManager.searchByZjId(shfwZlbdZd.getZjid());
        map.put("totalRows", list.size());
        map.put("data", list);
        outJson(map);
    }

總結:

1、首先在Dao層實現與數據庫交互的方法,
2、在Manager層承載業務邏輯,主要工作在於邏輯代碼的編寫,
3、Action層主要用於業務跳轉,管理業務調度

舉例:

Action像是服務員,顧客點什麼菜,菜上給幾號桌,都是ta的職責;
Service(Manager)是廚師,action送來的菜單上的菜全是ta做的;
Dao是廚房的小工,和原材料打交道的事情全是ta管。

發佈了36 篇原創文章 · 獲贊 10 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章