Annotation Interface Alphanumeric
@Target({METHOD,FIELD,ANNOTATION_TYPE,CONSTRUCTOR,PARAMETER,TYPE_USE})
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy=io.github.xezzon.zeroweb.common.validator.AlphanumericValidator.class)
public @interface Alphanumeric
自定义校验注解,用于检查字符串是否仅包含字母、数字、下划线以及可选的其他字符。
默认情况下,允许大写字母 (A-Z)、小写字母 (a-z)、数字 (0-9)、下划线 (_)、短横线 (-) 和点 (.)。
可以通过 includes() 和 excludes() 属性来定制允许或禁止的字符集。
示例用法:
public class MyDto {
@Alphanumeric(includes = {Alphanumeric.ASCII_UPPER_CASE, Alphanumeric.DIGIT})
private String username;
@Alphanumeric(excludes = {Alphanumeric.UNDERSCORE})
private String tagName;
}
- Author:
- xezzon
-
Field Summary
Fields -
Optional Element Summary
Optional Elements
-
Field Details
-
ASCII_UPPER_CASE
-
ASCII_LOWER_CASE
-
DIGIT
-
UNDERSCORE
-
HYPHEN
-
DOT
-
-
Element Details
-
includes
String[] includes指定校验允许包含的字符集。 默认包含大写字母、小写字母、数字、下划线、短横线和点。- Returns:
- 允许包含的字符集数组。
- Default:
{"A-Z", "a-z", "0-9", "_", "\\-", "\\."}
-
excludes
String[] excludes指定校验不允许包含的字符集。 此属性优先级高于includes(),即如果一个字符既在 includes 又在 excludes 中,则该字符将被排除。- Returns:
- 不允许包含的字符集数组。
- Default:
{}
-
message
String message校验失败时返回的默认错误信息。- Returns:
- 错误信息模板键。
- Default:
"{io.github.xezzon.zeroweb.common.validator.Alphanumeric.message}"
-
groups
-
payload
Class<? extends jakarta.validation.Payload>[] payload负载信息,允许在校验失败时携带额外的信息。- Returns:
- 负载类型数组。
- Default:
{}
-