2015-09-09 155 views
3

有什麼方法可以通過我使用@Valid註釋驗證String類型的函數參數?彈簧驗證器

我一直在試圖做到這一點,但無法做到這一點。 這裏是我的代碼: -

@Controller 
public class GameController { 

    @Autowired 
    private HeaderValidator headerValidator; 

    @InitBinder 
    private void initBinder(WebDataBinder binder) { 
     binder.setValidator(new CompoundValidator(headerValidator)); 
    } 

    @RequestMapping(value = "game", method = RequestMethod.GET) 
    public @ResponseBody Game getGame(
      @Valid @RequestHeader(value = "header", required = true) String header) { 
     return new Game(1, "Baddy"); 
    } 
} 
+0

沒有。 「@ Valid」適用於模型屬性而不適用於標題值。你將不得不爲此手動驗證。 –

+0

有沒有其他方法來驗證標頭? –

回答

0

不知道如何使用註釋做到這一點,但頭部的任何操作都可以使用過濾器或攔截器可以輕鬆完成。這裏是一個如何在春季使用攔截器的例子Mykong.com