java - 如何使用非空字段实现 "complete later"功能?

标签 java spring hibernate jakarta-ee

环境
Spring/hibernate/MySQL 网络应用

问题
我有一个多步骤表格,每一步都应该可以保存,以便以后完成。但不完整的步骤可能包含模型所需的字段,导致无法保存模型。

我已经尝试或想尝试的事情

  1. 使字段可为空。
  2. 使用临时表保存不完整的表格

但是..
解决方案 1 破坏了数据库设计,而解决方案 2 将使我的代码膨胀,包含在临时模型和永久模型之间转换的片段,如果我添加在保存后编辑表单的功能,这将变得很难看。

如何无缝且优雅地实现完整的后期功能?

最佳答案

另一种选择是在数据库表 complete_edit 中有一个 boolean 列。对于保存期间未首先输入的那些列,存储默认值或类似“NOT_COMPLETE”的字符串并将 complete_edit 列设置为 false。只有在提交时,此列才应为真。

关于java - 如何使用非空字段实现 "complete later"功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13966775/

相关文章:

java - 如果两个或多个对象存储在同一索引中,LinkedHashMap 如何保持顺序

java - Spring Boot 与 map 的宽松绑定(bind)是重复属性

java - 如何在 Hibernate 中执行这样的查询?加入

java - OrderItem (order_orderID) 中的 Hibernate 外键为 null

java - 并行 KafkaStream 处理的更好方法?

Java-如何将黑白图像加载到二进制中?

java - 回合制游戏的游戏循环

java - 在 Spring MVC Controller 中创建的 cookie 上设置 http-only

java - 相同的值多次添加到数据库中

java - 字节 [] 的正确 hibernate 注释