JSON字符串考虑没有引号值在Spring启动时有效,Java 8



我正在用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个字符的用户名

最新更新