如何在 spring 中将表单映射到实体

How to map form to entity in spring

在我的应用程序中,我有两个单独的 class: 1. UserRegistrationForm class 是一个表单支持对象,我用它来验证服务器端的字段。 2. UserEntity 是 ORM class 将数据库中的用户 table 映射到 Java 对象。

UserRegistrationForm 和 UserEntity 具有大部分相同的字段,例如用户名、电子邮件等,但它们也有一些不同,例如UserRegistrationForm 有额外的 retypedPassword 和 acceptTerms 字段。

现在我的应用程序是这样工作的: 1. App 从用户那里获取输入。 2. UserRegistrationForm 执行验证。 3. 如果没有错误,UserRegistrationForm 被映射到UserEntity。 4. UserEntity保存在数据库中。

我想知道这是不是一个好的设计。也许我应该直接在我的 UserEntity 中进行验证?或者也许有一种方法可以自动将表单支持对象映射到实体?

几天前我也遇到了同样的问题,并且对 formValidation 对象与 Database Entity 对象的映射感到困惑。

解决方案是,在formValidation中,通常情况下它有很多字段,这些字段与一个数据库实体没有直接关系,而是有一些字段来自其他几个数据库实体(或表),还有一些与数据库实体无关的字段。

在这种情况下,标准方法是验证表单,然后将字段与相应的数据库实体和最后一个映射,保存到数据库中

您遵循的过程是正确的。