1. 程式人生 > >整合SpringMVC框架+Mybatis框架開發人力資源管理系統(三)

整合SpringMVC框架+Mybatis框架開發人力資源管理系統(三)

確定系統中的實體,建立資料庫表以及持久化類

1、確定系統所用到的實體、實體屬性以及各實體之間的聯絡同時建立資料庫表
本系統按照功能需求共涉及六個實體,分別是使用者User、員工Employee、職位Job、部門Dept、公告Notice、檔案Document,各實體之間的聯絡如下:

  • 使用者與公告:一個使用者可以建立數個公告,因此二者是一對多的關係
  • 使用者與檔案:一個使用者可以上傳多個檔案,因此二者是一對多的關係
  • 員工與職位,一個職位可以有數個員工,但一個員工只能身兼一個職位,因此二者的關係式多對一
  • 員工與部門,一個部門可以有多個員工,但一個員工只歸屬一個部門,因此二者是多對一的關係
    確定了各個實體之間的關係之後就是確定各個實體的屬性,同時應用MySQL資料庫視覺化操作工具Navicat for MySQL進行資料庫表的建立。
    首先建立資料庫hrm_db,接著建立各個表:
  • 使用者表user_tb:應包含主鍵id,登入名loginName,使用者名稱userName,密碼password,使用者類別userType,建立日期createDate等。
  • 部門表dept_tb:應包含主鍵部門id,部門名稱deptName,備註資訊remark
  • 崗位表job_tb:應包含主鍵id,崗位名稱jobName,崗位在崗人數number,備註資訊remark等
  • 員工表employee_tb:應包含主鍵id,員工姓名name,性別sex,住址address,身份證號idCard,手機號mobile,職位job_id,部門dept_id等
  • 公告表notice_tb:應包含主鍵id,公告主題title,內容content,使用者user_id,建立日期createDate
  • 檔案表document_tb:應包含主鍵id,檔案標題title,檔名fileName,備註資訊remark,使用者id user_id,建立日期createDate
    在這裡插入圖片描述

2、建立實體類
使用開發工具MyEclipese 8.x建立一個web專案,命名為hrmApp.專案目錄結構如下:
在這裡插入圖片描述
建立一個包org.fkit.hrm.domain包含六個實體類User、Employee、job、Dept、Notice、Document,下面以User類為例說明六個實體類應該包含哪些屬性與方法。

package org.fkit.hrm.domain;

import java.util.ArrayList;
import java.util.Date;

public class User {
    Integer id;  //使用者編號
	String userName;  //使用者名稱
    String loginName;  //登入名
    String password;  //密碼
    String userStatus;  //使用者狀態
    Date createDate;  //建立日期
    ArrayList<Notice> noticeArray=new ArrayList<Notice>();  //使用者類與公共類屬於一對多的關係,因此
    //建立一個公告集合
    ArrayList<Document> documentArray=new ArrayList<Document>();  //建立一個下載集合
    
    public ArrayList<Document> getDocumentArray() {
		return documentArray;
	}
	public void setDocumentArray(ArrayList<Document> documentArray) {
		this.documentArray = documentArray;
	}
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getLoginName() {
		return loginName;
	}
	public void setLoginName(String loginName) {
		this.loginName = loginName;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public String getUserStatus() {
		return userStatus;
	}
	public void setUserStatus(String userStatus) {
		this.userStatus = userStatus;
	}
	public Date getCreateDate() {
		return createDate;
	}
	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}
	public ArrayList<Notice> getNoticeArray() {
		return noticeArray;
	}
	public void setNoticeArray(ArrayList<Notice> noticeArray) {
		this.noticeArray = noticeArray;
	}
}

User類除包含基本的屬性諸如id、loginName意外,還應該包含兩個ArrayList物件用於儲存該使用者所建立的公告與檔案(相應的,Notice類與Document類中應該包含一個User屬性)。六個類的建立大同小異,可參考User進行建立。