我们目前正在开始实施nee软件,该软件大量使用数据库实体。 您可以将IT视为具有一些其他业务逻辑,验证等功能的数据库编辑器。 我们使用带有jpa,hibernate和jsf的spring boot作为View技术。 一个用例,例如: -搜索实体(显示匹配结果列表) -打开一个实体进行编辑 -更改或添加一些实体道具 -保存或取消编辑模式 -返回显示更新后的实体的列表
在这种情况下,处理实体的良好模式是什么? 我的意思是复制,绑定,更新或还原实体及其更改。
为我们要编辑的实体创建克隆并将其绑定到ui会是一个好主意吗?然后直接更改此实体,并在保存时持久保存/合并它,或者在取消时将其丢弃。
还是我们应该使用更轻量级的DTO,它从原始实体映射到我们并将其绑定到ui?
最后一种可能性是对要打开的实体执行就地编辑。保存之前,更改将不会保留。
有关验证的WhatsApp?直接在实体上定义和使用bean验证是IT的好主意吗?
感谢所有建议
答案 0 :(得分:2)
恕我直言,这取决于您的情况,但您应该考虑:
其他方面:
希望对您有帮助。