我正在用javax注释验证json字符串到bean转换,我使用javax. validate . validator接口,在类中,我已将属性标记为string
@NotBlank(message ="User name cannot be null")
private String userName;
我希望值在双引号中。像{"userName": "my name"}
但是,如果我将value传递为{"userName": 1234567889},验证器认为这是一个有效值。是否有一种方法来限制所有这些值,或者是否有一个列表,列出哪些情况被认为是坏的Json,哪些情况不是。任何参考资料都会有帮助的。
编辑1:可能是很多解释造成了混乱,让我把这个简单,我希望值只有在双引号中才被接受,比如{"key":";value"} else约束被违反。
可以使用
@Pattern(regexp="<your regular expression>",message="<message>")
注释来自javax.validation.constraints
,
@Pattern(regexp="^[a-zA-Z]{4,10}",message="Invalid username")
private String userName;
上面的将接受4到10个字符的用户名