Я создал свою собственную аннотацию, которую я использую через отражение, чтобы принять решение в моем коде. Аннотации имеют значение по умолчанию, установленное для его единственного элемента. Есть ли способ получить доступ к значению по умолчанию через отражение?
PageableRequestMapping.java(Аннотация)
package org.tothought.controllers.annotations;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@Retention(RetentionPolicy.RUNTIME)
public @interface PageableRequestMapping {
String variablePath() default "/";
}
Код Psuedo для получения значения по умолчанию
private int parsePageNumber(StringBuffer requestURL,
PageableRequestMapping pageableRequestMapping) {
String variablePath = pageableRequestMapping.variablePath();
//Psuedo code doesn't work in Java, included to illustrate intentions
if(variablePath.equalsIgnoreCase(pageableRequestMapping.variablePath().default())){
//handle default case
}else{
//handle different case
}
return 0;
}
Мои исследования проблемы не привели примеров. Я предположил, что это значение можно получить статическим образом через класс, но это невозможно. Поэтому у меня остались два вопроса.
- Можно ли получить значение по умолчанию для элемента в аннотации?
- Если да, то как?
Кроме того, я знаю, что я мог бы жестко кодировать это значение, однако я хотел бы сделать программу немного более надежной.