java - 在放置、发布和删除之前进行 Spring Boot 验证

标签 java spring-boot validation post put

我在 Spring 启动时在我的 Controller 中创建了发布、放置和删除请求。 我在模型中添加了验证,并在 Controller 的方法中添加了 @Valid 参数。 我想知道我还应该添加什么来验证发布、放置和删除操作?

public class Employee {
    @NotNull(message = "Employee Id can not be null")
    private Integer id;

    @Min(value = 2000, message = "Salary can not be less than 2000")
    @Max(value = 50000, message = "Salary can not be greater than 50000")
    private Integer salary;

    @NotNull(message = "designation can not be null")
    private String designation;
}

我的发帖方法是:

@PostMapping("/employees")
    public ResponseEntity<Void> addEmployee(@Valid @RequestBody Employee newEmployee) {
        Employee emp= service.addEmployee(newEmployee);
        if (emp== null) {
            return ResponseEntity.noContent().build();
        }
        return new ResponseEntity<Void>(HttpStatus.CREATED);
    }

我的放置方法是:

@PutMapping("/employees/{id}")
    public ResponseEntity<Vehicle> updateEmployee(@Valid @RequestBody Employee updateEmployee) {
        Employee emp= service.EmployeeById(updateEmployee.getId());
        if (null == emp) {
            return new ResponseEntity<Employee>(HttpStatus.NOT_FOUND);
        }
        emp.setSalary(updateEmployee.getSalary());
        emp.setDesignation(updateEmployee.getDesignation());
        service.updateEmployee(emp);
        return new ResponseEntity<Employee>(emp, HttpStatus.OK);
    }

删除方法

    @DeleteMapping("/employees/{id}")
    public ResponseEntity<Employee> deleteEmployee(@Valid @PathVariable int id) {
        Employee emp = service.getEmployeeById(id);
        if (null == employee) {
            return new ResponseEntity<Employee>(HttpStatus.FOUND);
        }
        service.deleteEmployee(id);
        return new ResponseEntity<Employee>(HttpStatus.NO_CONTENT);
    }

最佳答案

您的具体问题是什么?

请参阅以下来源以进一步阅读。

Validation in Spring Boot

关于java - 在放置、发布和删除之前进行 Spring Boot 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60469740/

相关文章:

java - 如何从数组中获取值而不计算其重复项?

spring - 下载gradle依赖上的Java Spring Boot项目错误

java - 关闭应用程序后删除 Spring JPA 数据

java - Spring Boot 不会自动提供静态文件

javascript - 纯数字 Javascript 表单验证?

mysql - 如果数据存在,则 Form_validation 未运行

java - 您可以从 Java 调用 OpenSSL 的哈希原语吗?

java - 使用 JAX-WS 和 Glassfish v3 的 XSL 样式表 URI

java - XML 中的 TextContent 和属性值之间的区别

jquery 验证仅针对可见控件