Я пытаюсь создать аннотацию и передать переменную в качестве параметра в метод impl. Ниже мой код для создания аннотации.
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import javax.validation.Constraint;
@Documented
@Target(ElementType.PARAMETER)
@Retention(RetentionPolicy.RUNTIME)
@Constraint(validatedBy = Loggable1Impl.class)
public @interface Loggable1 {
String message() default "Invalid userId";
}
Ниже мой класс impl
import javax.validation.ConstraintValidator;
import javax.validation.ConstraintValidatorContext;
public class Loggable1Impl implements ConstraintValidator<Loggable, String> {
public void initialize(Loggable contactNumber) {
}
public boolean isValid(String generatedUserId, ConstraintValidatorContext cxt) {
System.out.println("generatedUserId in Loggable1 :: " + generatedUserId);
return true;
}
}
Я пытаюсь использовать его в приложении с весенней загрузкой
@CrossOrigin(origins = "*", allowedHeaders = "*")
@PostMapping("/api1/{user}")
public Topic regiterUser(@PathVariable String user ) {
String generatedUserId = user + "1";
return generatedUserId ;
}
Я хочу передать generatedUserId
в мою аннотацию Loggable1
Пожалуйста, помогите