91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

springboot怎么做請求參數校驗

小億
89
2024-01-19 18:55:34
欄目: 編程語言

在Spring Boot中,可以使用Spring框架提供的@Validated和@Valid注解來對請求參數進行校驗。

首先,需要在pom.xml文件中添加以下依賴:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-validation</artifactId>
</dependency>

然后,在Controller類的方法參數上使用@Validated注解,并在需要校驗的參數前面使用@Valid注解。例如:

import org.springframework.validation.annotation.Validated;
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;

@RestController
@Validated
public class UserController {

    @PostMapping("/users")
    public ResponseEntity createUser(@Valid @RequestBody User user) {
        // 處理創建用戶的邏輯
        // ...
    }
    
}

public class User {

    @NotBlank(message = "用戶名不能為空")
    private String username;

    // getter和setter方法
    // ...
}

在上面的例子中,使用了@NotBlank注解對username參數進行校驗,如果參數為空或者只包含空格,則會拋出校驗異常,響應結果中會包含相應的錯誤信息。

另外,還可以自定義校驗注解,例如:

import javax.validation.Constraint;
import javax.validation.Payload;
import javax.validation.constraints.Pattern;
import java.lang.annotation.*;

@Target({ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
@Constraint(validatedBy = {})
@Pattern(regexp = "^[A-Z0-9]{8}$", message = "訂單號必須是8位大寫字母和數字的組合")
@Documented
public @interface OrderNo {
    String message() default "";

    Class<?>[] groups() default {};

    Class<? extends Payload>[] payload() default {};
}

public class Order {

    @OrderNo
    private String orderNo;

    // getter和setter方法
    // ...
}

在自定義的校驗注解中,可以使用Spring提供的@Pattern等注解來進行基本的校驗規則定義,然后再結合自定義的校驗規則進行校驗。

以上就是使用Spring Boot進行請求參數校驗的方法。在實際開發中,可以根據具體的業務需求來定義和使用校驗注解,以保證請求參數的有效性。

0
佛坪县| 达尔| 庆安县| 萨嘎县| 盘山县| 桃园县| 宜良县| 九江县| 崇州市| 玉田县| 灌阳县| 雅安市| 延吉市| 周至县| 施甸县| 万山特区| 舟曲县| 合作市| 拉萨市| 尼勒克县| 温宿县| 筠连县| 濮阳县| 铁岭县| 张家口市| 罗城| 禹城市| 维西| 德清县| 兴海县| 台江县| 柘城县| 会宁县| 柳江县| 轮台县| 肥东县| 易门县| 察雅县| 天气| 固镇县| 新化县|