我应该如何在员工维护系统中实现LeaveHistory



我正在用Java开发一个基本的员工维护系统。我需要为员工添加请假功能吗?我很困惑哪种方法能更好地实现

1。为所有员工创建一个单独的通用列表
2。在我的员工实体中创建一个列表,这样单个列表将与单个员工关联
3。还有其他意见吗?

我会选择第二个选项,在Employee实体中创建一个List<Request>,因为我认为如果没有请求EmployeeRequest就不可能存在。

此外,我会使用Request字段,而不是RequestLeave,因为这可能太具体了,并且您希望能够将其他类型的Request设置为DISEASEMOTHERHOOD

在此之后,您将拥有Employee实体

public class Employee {
// all fields for Employee
final List<Request> requests;
}

Request实体

public class Request {
private Long id;
private DateTime timestamp;
private Reason reason;
}

以及Request的原因列表

public Enum Reason {
LEAVE,
SICKNESS,
MOTHERHOOD;
}

与第一个选项相比,这样做的一个优点是,如果您想将数据持久化到数据库中,则可以简单地设置EmployeeRequest之间的关系。

最新更新