java - 如何验证具有不同属性要求不同方法调用的spring模型对象?

标签 java spring validation spring-validator

我们在 Spring Controller 中使用单个模型类

Student(id,firstname,lastname);

现在我的 Controller 有两种方法

  1. 通过仅传递带有 ID 的 Student 对象来获取学生详细信息。(仅需要 Id)

  2. 使用所有详细信息 id、名字、姓氏更新学生详细信息(我们使用 id 来引用更新姓名)

在这两种 Controller 方法中,我想使用 spring validator ,那么如何为这两种 Controller 方法编写经过验证的方法,因为我只需要 id 属性来获取学生详细信息,而在其他方法中,我希望所有三个属性都更新学生详细信息。

我们没有使用 Spring Boot。

最佳答案

我总是将 dtos(数据传输对象)用于客户端发送的模型,并使用单独的模型进行响应。 这有很多优点。传入的 api 模型与应用程序中使用的模型分离。此外,使用 dto,您只需提供一个模型,其中包含客户端可以发送到 api 的最少属性。为了解决您的问题,您可以单独验证它们。 我认为您不希望您的客户更新学生证。因此,对于您的模型,请使用具有与完整学生对象相同的属性但没有 id 字段的 dto。

关于java - 如何验证具有不同属性要求不同方法调用的spring模型对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62450697/

相关文章:

c# - PostSharp 冲突方面警告

javascript - 验证 ASP 经典 DDL

java - 将字符串转换为日期

java - 在 Java 中找不到变量

java - getSelectedItem().toString() 返回 null 值

java - 如何在 JNI 中将 int 转换为 String(?)?

即使包装在空检查中,spring 2.0 findbugs nullable 也会抛出错误

java - 从 Spring Security 上下文访问应用程序上下文

java - Spring Data JPA 获取具有连接表的实体的方法

java - Objective-C 中的接口(interface)类型等效吗?