Java 需要关于存储信息的mysql数据库的建议吗

Java 需要关于存储信息的mysql数据库的建议吗,java,mysql,Java,Mysql,我正在使用JavaEE(JDBC、MVC、DAO)和MySql 我在做我自己的项目,所以所有的建筑设计都是我的责任 我有一个“兼性”系统,在这里我有实体兼性,它存储关于课程、讲师、开始和持续时间的信息 现在,它还存储了一个字段“Status”:Wait(未启动)、start和end 这是一个地方,我有一个问题:信息应该如何更新 当然,将此功能交给管理员是可能的,但它似乎很简单,效率也不高 我有一个想法——不是在数据库中存储字段“status”,而是检查模型实体中的状态(通过检查开始日期/持续时间

我正在使用JavaEE(JDBC、MVC、DAO)和MySql

我在做我自己的项目,所以所有的建筑设计都是我的责任

我有一个“兼性”系统,在这里我有实体兼性,它存储关于课程、讲师、开始和持续时间的信息

现在,它还存储了一个字段“Status”:Wait(未启动)、start和end

这是一个地方,我有一个问题:信息应该如何更新

当然,将此功能交给管理员是可能的,但它似乎很简单,效率也不高

我有一个想法——不是在数据库中存储字段“status”,而是检查模型实体中的状态(通过检查开始日期/持续时间)

我使用的是MVC模式,不确定向类中添加这样的方法是否正确


提前感谢。

存储开始日期和结束日期(或持续时间)并获取状态对我来说最有意义


主要的优点是,当状态从
Wait
转换到
Started
Started
end
时,数据不需要更新,只需在时间自然流逝时自行处理。

这确实是您正在建模的“世界”的问题。问问自己:

  • 课程是否曾在预定时间未开始

  • 您想显式地对其建模吗

  • 如果这两个问题的答案都是“是”,则不能将
    状态
    字段视为(仅)从开始日期和结束日期(以及当前日期)派生而来。同样,根据日期自动设置(非派生的)
    状态
    字段也是可疑的

    另一方面。。。管理性地设置
    状态也不是一个好主意,因为它需要在特定的时间进行;i、 当讲座真正开始的时候

    但是。。。准确地对此进行建模需要承认数据库中的信息与现实世界中实际发生的情况之间存在“差距”。确保数据库100%准确(可能)是不切实际的。因此,务实的解决方案是接受这一点:使其成为系统的“特征”


    如果你采取务实的观点,那么将
    状态
    派生出来就足够了。(将其名称更改为
    概念状态
    或其他内容,并将
    开始
    结束
    字段更改为
    计划开始
    计划结束
    或其他内容。)

    “导出状态”-您的意思是从类中获取,而不是从数据库中获取,是吗?谢谢!非常有用的建议!非常感谢。非常有用的建议!