Проверка классов контроллера в Java с использованием аннотации @Pattern для нескольких строк

Я проверяю Java-класс, используя аннотацию @Pattern от Deadbolt. Я хочу дать доступ, если какая-либо из этих строк присутствует: 'TM_TASK' ИЛИ ​​'TM_CHECKLIST'. Прямо сейчас я немного сбит с толку относительно того, как предоставить эти строки внутри @Pattern, чтобы он давал доступ, если строка совпадает с любой из этих двух строк. Я также открыт для использования регулярных выражений (хотя я новичок в них) относительно того, как чтобы проверить, является ли это какой-либо из этих двух строк ('TM_TASK' ИЛИ ​​'TM_CHECKLIST'), используя Regex, а не любую другую недопустимую строку.

например

@Api(value = "/tasks")
@Pattern(value = "^[a-zA-Z0-9_]*$", patternType = PatternType.REGEX)
public class TaskController extends BaseController {

  private static Logger.ALogger log = Logger.of(TaskController.class);
  private TaskService taskService;
  private FormFactory formFactory;
}

1 ответ

Вы можете использовать стандартное регулярное выражение (TM_TASK|TM_CHECKLIST) сделать это.

@Api(value = "/tasks")
@Pattern(value = "^(TM_TASK|TM_CHECKLIST)$", patternType = PatternType.REGEX)
public class TaskController extends BaseController {

  private static Logger.ALogger log = Logger.of(TaskController.class);
  private TaskService taskService;
  private FormFactory formFactory;
}
Другие вопросы по тегам