簡體   English   中英

如何在SpringBoot控制器中驗證請求體的字段(自定義Jackson)

[英]How to validate fields of request body in SpringBoot controllers (customize Jackson)

SpringBoot控制器使用@RequestBody作為bean類,例如它是一個帶有字段列表的類Basket。 其中一些字段是只讀的,我想在用戶嘗試發送更新請求時拋出異常。

我使用自定義@ReadOnly注釋來標記類Basket的只讀字段。 我想以傑克遜構造對象籃子的方式自定義傑克遜 - 它應該用注釋分析bean並在傳入的JSON包含只讀字段時拋出異常。

請不要建議JSR-303 Bean驗證。

您可以編寫自定義反序列化程序,並可以使用以下代碼訪問注釋並編寫邏輯以引發異常。

for (Field f: Basket.class.getFields())     {  
               ReadOnly readOnly = f.getAnnotation(ReadOnly.class);  
               if (readOnly != null)  
                  // your logic can go here.  
              }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM