package fun.n.learn.annotation;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
// We need this annotation only till before compilation.
@Retention(RetentionPolicy.SOURCE)
// This is a simple custom annotation.
public @interface LogMeCustomAnnotation {
}
< /code>
[b] logmecustomannotationprocessor.java[/b]
package fun.n.learn.annotation;
import java.util.Set;
import javax.annotation.processing.AbstractProcessor;
import javax.annotation.processing.Messager;
import javax.annotation.processing.RoundEnvironment;
import javax.annotation.processing.SupportedAnnotationTypes;
import javax.lang.model.element.TypeElement;
import javax.tools.Diagnostic;
// List the custom annotations that are supported.
@SupportedAnnotationTypes({ "fun.n.learn.annotation.LogMeCustomAnnotation" })
// Extend AbstractProcessor. This will let you process.
public class LogMeCustomAnnotationProcessor extends AbstractProcessor {
@Override
public boolean process(Set
Подробнее здесь: [url]https://stackoverflow.com/questions/36248959/bad-service-configuration-file-or-exception-thrown-while-constructing-processor[/url]
// We need this annotation only till before compilation. @Retention(RetentionPolicy.SOURCE) // This is a simple custom annotation. public @interface LogMeCustomAnnotation {
// List the custom annotations that are supported. @SupportedAnnotationTypes({ "fun.n.learn.annotation.LogMeCustomAnnotation" }) // Extend AbstractProcessor. This will let you process. public class LogMeCustomAnnotationProcessor extends AbstractProcessor {
Для проекта я хочу предотвратить использование определенных методов в переоценке класса. Поиск атрибутов, но не имеет особого отношения, кроме этого.
Этот подход также используется для магических методов, которые переопределяют операторы (например,...
Я сделал класс отправителя, используя компонент Kafkatemplate для отправки полезной нагрузки в тему
с некоторой конфигурацией в классе Senderconfiguration.
sender class
@Component
public class Sender {
private static final Logger LOGGER =...