Spring validation的基本使用可以參考這個鏈接:點擊進入
這一章將講述如何讓自定義的校驗提示信息支持國際化,在這里我只列舉了支持中文、英文 具體的實現步驟,過程如下:
(1)將message消息從注解中遷移至配置文件
在resources目錄下創建ValidationMessages.properties文件,文件名必須保持一致;將@NotEmpty(message = "身份證號不能為空")的message消息放置在資源文件中,如下所示:
@NotEmpty(message = "{NotEmpty.personProfileDo.id}") private String id;
ValidationMessages.properties文件內容如下:
NotEmpty.personProfileDo.id = 身份證號不能為空
說明:建議給資源文件中的key命名時采用“注解名稱.類名.字段名”的形式,注解名稱、類名、字段名之間采用點號隔開。
如果只是想支持某一種語言,並且將message的內容從注解中解脫出來,放置在資源配置文件中方便管理,那么上述這樣處理就可以了。
(2)支持中、英文雙語提示
在resources目錄下創建ValidationMessages_zh.properties(或者ValidationMessages_zh_CN.properties)、ValidationMessages_en.properties(或者ValidationMessages_en_US.properties),同時可以將ValidationMessages.properties文件刪除。
ValidationMessages_zh.properties(或ValidationMessages_zh_CN.properties)文件內容如下:
NotEmpty.personProfileDo.id = 身份證號不能為空
ValidationMessages_en.properties(或ValidationMessages_en_US.properties)文件內容如下:
NotEmpty.personProfileDo.id = the ID should be not empty
(3)測試結果
在中文條件下發起的請求,效果如下:
在英文條件下發起的請求,效果如下:
從上面的兩幅圖可知,已經現實了校驗提示信息支持中英文了。