整合SpringMVC框架+Mybatis框架開發人力資源管理系統(六)
阿新 • • 發佈:2019-01-08
業務邏輯元件HrmService介面的實現
業務邏輯元件的實現需要依賴於DAO元件,在HrmService介面中針對需要操作的六個實體(User、Employee、Job、Dept、Notice、Document)設計了不一樣的業務方法(CRUD),每個方法又會呼叫DAO元件中的一個或多個相關方法。通過將業務邏輯元件與DAO元件分開進行設計編寫,無疑會使系統各元件之間的耦合性降低,為加強元件內部之間內聚性。HrmService介面程式碼如下:
package org.fkit.hrm.service; import java.util.List; import org.fkit.hrm.domain.Dept; import org.fkit.hrm.domain.Document; import org.fkit.hrm.domain.Employee; import org.fkit.hrm.domain.Job; import org.fkit.hrm.domain.Notice; import org.fkit.hrm.domain.User; import org.fkit.hrm.util.tag.PageModel; public interface HrmService { //根據使用者名稱與密碼實現使用者登入 User login(String loginName,String password); //根據使用者id查詢使用者 User selectUserById(Integer id); //分頁查詢 List<User> selectUser(User user,PageModel pageModel); //根據id刪除使用者 void deleteUser(Integer id); //修改使用者 void updateUser(User user); //新增使用者 void insertUser(User user); //根據使用者名稱稱查詢使用者 User selectUserByUserName(String userName); //獲取所有員工 List<Employee> selectEmployee(Employee empoyee,PageModel PageModel); //根據id刪除員工 void deleteEmployee(Integer id); //新增員工 void insertEmployee(Employee employee); //修改員工 void updateEmployee(Employee employee); //根據id查詢員工 Employee selectEmployeeById(Integer id); //分頁獲取所有部門 List<Dept> selectDept(Dept dept,PageModel pageModel); //獲取所有部門 List<Dept> selectAll(); //根據id查詢部門 Dept selectDeptById(Integer id); //根據id刪除部門 void deleteDept(Integer id); //新增部門 void insertDept(Dept dept); //修改部門 void updateDept(Dept dept); //根據部門名稱獲取部門 Dept selectDeptByDeptName(String deptName); //分頁獲取所有職位 List<Job> selectJob(Job job,PageModel pageModel); //獲取所有崗位 List<Job> selectAllJob(); //根據id查詢職位 Job selectJobById(Integer id); //根據id刪除職位 void deleteJob(Integer id); //新增職位 void insertJob(Job job); //修改職位 void updateJob(Job job); //根據職位名稱獲取職位 Job selectJobByJobName(String jobName); //分頁獲取所有公告 List<Notice> selectNotice(Notice notice,PageModel pageModel); //根據id查詢公告 Notice selectNoticeById(Integer id); //根據id刪除公告 void deleteNotice(Integer id); //新增公告 void insertNotice(Notice notice); //修改公告 void updateNotice(Notice notice); //分頁查詢下載 List<Document> selectDocument(Document document,PageModel pageModel); //根據id查詢下載 Document selectDovumentById(Integer id); //根據id刪除下載 void deleteDocument(Integer id); //新增下載 void insertDocument(Document document); //修改下載 void updateDocument(Document document); }
分別針對系統的功能需求設計了HrmService介面中的各方法,以實體User而言,涉及的方法包括根據loginName、password進行登入,根據id值查詢使用者資訊、分頁查詢等。其中分頁查詢又需要呼叫DAO元件UserDao中的count()以及selectBypage()兩個方法,由此可見業務邏輯元件的實現需要依託於DAO元件,二者是密不可分的關係。