中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

做便民工具網(wǎng)站怎么樣百度問答兼職怎么做

做便民工具網(wǎng)站怎么樣,百度問答兼職怎么做,南聯(lián)網(wǎng)站建設哪家好,武漢三鎮(zhèn)1. 使用Hibernate Validator進行注解校驗 這是Java中最常用的參數(shù)校驗方式,基于JSR 303/JSR 380規(guī)范的實現(xiàn),通常結合Valid或Validated注解進行參數(shù)校驗。 使用步驟: 添加依賴(如果使用Spring Boot,通常已經(jīng)內置了Hi…

1. 使用Hibernate Validator進行注解校驗

這是Java中最常用的參數(shù)校驗方式,基于JSR 303/JSR 380規(guī)范的實現(xiàn),通常結合@Valid@Validated注解進行參數(shù)校驗。

使用步驟:

  • 添加依賴(如果使用Spring Boot,通常已經(jīng)內置了Hibernate Validator):
<dependency><groupId>org.hibernate.validator</groupId><artifactId>hibernate-validator</artifactId>
</dependency>
  • 在DTO類中使用校驗注解:
public class UserDTO {@NotNull(message = "用戶名不能為空")@Size(min = 3, max = 20, message = "用戶名長度必須在3到20之間")private String username;@Email(message = "郵箱格式不正確")private String email;// 其他字段和getter/setter
}
  • 在Controller中使用@Valid@Validated來觸發(fā)校驗:
@PostMapping("/user")
public ResponseEntity<String> createUser(@Valid @RequestBody UserDTO userDTO) {// 如果校驗失敗,會自動拋出異常return ResponseEntity.ok("用戶創(chuàng)建成功");
}
  • 如果需要自定義異常處理,可以在全局異常處理器中處理MethodArgumentNotValidException
@ExceptionHandler(MethodArgumentNotValidException.class)
public ResponseEntity<Map<String, String>> handleValidationExceptions(MethodArgumentNotValidException ex) {Map<String, String> errors = new HashMap<>();ex.getBindingResult().getAllErrors().forEach(error -> {String fieldName = ((FieldError) error).getField();String errorMessage = error.getDefaultMessage();errors.put(fieldName, errorMessage);});return ResponseEntity.badRequest().body(errors);
}

2. 手動校驗

對于復雜的業(yè)務邏輯,可能需要手動編寫校驗邏輯??梢酝ㄟ^Java代碼在Controller或Service層進行參數(shù)的業(yè)務校驗。

if (userDTO.getUsername() == null || userDTO.getUsername().length() < 3) {throw new IllegalArgumentException("用戶名長度必須大于3");
}

3. 自定義注解

如果Hibernate Validator內置的注解不能滿足需求,可以自定義校驗注解。比如,創(chuàng)建一個自定義注解來驗證某個字段是否滿足自定義規(guī)則。

自定義注解示例:

  • 創(chuàng)建注解:
@Target({ ElementType.FIELD, ElementType.PARAMETER })
@Retention(RetentionPolicy.RUNTIME)
@Constraint(validatedBy = CustomValidator.class)
public @interface CustomConstraint {String message() default "默認錯誤信息";Class<?>[] groups() default {};Class<? extends Payload>[] payload() default {};
}
  • 創(chuàng)建校驗邏輯:
public class CustomValidator implements ConstraintValidator<CustomConstraint, String> {@Overridepublic void initialize(CustomConstraint constraintAnnotation) {}@Overridepublic boolean isValid(String value, ConstraintValidatorContext context) {// 自定義校驗邏輯return value != null && value.startsWith("A");}
}
  • 在DTO類中使用自定義注解:
public class UserDTO {@CustomConstraint(message = "用戶名必須以A開頭")private String username;
}

4. Spring的@RequestParam@PathVariable校驗

對于簡單的請求參數(shù),可以在方法參數(shù)中使用@RequestParam@PathVariable結合Hibernate Validator注解進行校驗。

@GetMapping("/user/{id}")
public ResponseEntity<UserDTO> getUser(@PathVariable @NotNull(message = "用戶ID不能為空") Long id) {// 獲取用戶邏輯
}
http://www.risenshineclean.com/news/41763.html

相關文章:

  • 網(wǎng)站怎么防采集如何推廣普通話
  • 長子營網(wǎng)站建設產(chǎn)品優(yōu)化是什么意思
  • 做3d模型的叫什么牛的網(wǎng)站磁力鏈搜索引擎入口
  • 黃色風格網(wǎng)站模板商城小程序
  • 十堰網(wǎng)站建設兼職發(fā)軟文的平臺
  • 長沙的互聯(lián)網(wǎng)網(wǎng)站公司營銷培訓方案
  • 門戶網(wǎng)站系統(tǒng)設計sem全稱
  • wordpress qq客服代碼seo有什么作用
  • 廣州網(wǎng)站提升排名百度指數(shù)使用指南
  • 做發(fā)票網(wǎng)站淘寶如何刷關鍵詞增加權重
  • 可視化網(wǎng)站建設軟件百度競價品牌廣告
  • 專業(yè) 網(wǎng)站設計公司外貿網(wǎng)站seo教程
  • 北京公司網(wǎng)站建設價格廣州網(wǎng)站制作服務
  • 貴州省建設廳二建報名網(wǎng)站全球疫情最新數(shù)據(jù)
  • 做證書的網(wǎng)站廈門seo推廣外包
  • 網(wǎng)站開發(fā)功能需求表百度關鍵詞優(yōu)化軟件
  • 南通網(wǎng)站關鍵詞優(yōu)化發(fā)稿吧
  • 裝修網(wǎng)站開發(fā)前的準備工作百度推廣一個月多少錢
  • pc網(wǎng)站是什么seo網(wǎng)頁優(yōu)化培訓
  • 網(wǎng)站備案跟域名備案廣告文案經(jīng)典范例200字
  • 一個網(wǎng)站按鈕怎么做精準的搜索引擎優(yōu)化
  • 國家市場監(jiān)督管理總局60號令百度seo排名原理
  • 湛江高端網(wǎng)站建設頁面優(yōu)化的方法
  • 在線做字網(wǎng)站百度一下app下載安裝
  • 電子商務物流網(wǎng)站建設信息推廣平臺有哪些
  • 三河市建設廳公示網(wǎng)站百度的seo關鍵詞優(yōu)化怎么弄
  • 鞍山人才招聘網(wǎng)上海網(wǎng)站seo策劃
  • 和網(wǎng)站建設相關的行業(yè)剛剛傳來最新消息
  • 深圳市做網(wǎng)站公司谷歌搜索引擎免費入口 香港
  • 專門做lolh的網(wǎng)站軟文營銷文章范文