Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何操作验证约束的validatedValue_Java_Spring - Fatal编程技术网

Java 如何操作验证约束的validatedValue

Java 如何操作验证约束的validatedValue,java,spring,Java,Spring,我使用模式约束来确保排序代码只是数字。如果输入了无效字符,我希望在消息中输出特定字符。我不确定如何从validatedValue中获取无效字符。我现在有它的设置,只是把什么是输入现在,所以说你输入 11-22-33 您将得到:字段包含无效字符:排序代码“11-22-33” 但我希望:字段包含无效字符:排序代码“-” 我目前的代码是: @Pattern(regexp = "^[0-9]*$", message="Fields contain invalid characters: sort cod

我使用模式约束来确保排序代码只是数字。如果输入了无效字符,我希望在消息中输出特定字符。我不确定如何从validatedValue中获取无效字符。我现在有它的设置,只是把什么是输入现在,所以说你输入

11-22-33

您将得到:字段包含无效字符:排序代码“11-22-33”

但我希望:字段包含无效字符:排序代码“-”

我目前的代码是:

@Pattern(regexp = "^[0-9]*$", message="Fields contain invalid characters: sort code '${validatedValue}'")
private String sortCode;

也许是这样的:

@Pattern(regexp = "^[0-9]*$", message = "Fields contain invalid characters: sort code '${validatedValue.replaceAll(\"\\\\d\", \"\")}'")
private String sortCode;
上述代码将为
1a2b3-D
sortCode
生成以下消息:

Fields contain invalid characters: sort code 'ab-D'

如果输入包含多个无效字符,例如“foo bar”,那么您希望返回什么错误消息?我认为只需找到第一个无效字符,即“f”。一个无效字符列表也可以,但我不太担心。