整合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进行创建。

猜你喜欢

转载自blog.csdn.net/llc950819/article/details/85041739