将 Apache Kafka 的 Spring Java 配置替换为 XML
Replace Spring Java config with XML for Apache Kafka
Ho可以替换成这样的Java配置
@Configuration
@EnableKafka
public class KafkaConfig {
}
具有完整的 XML 配置?
特别是方法(或类)如何用
注释
@KafkaListener
public void poll(String msg){}
作为侦听器注入 Spring Kafka 上下文?
@EnableKafka
将 2 个 bean 添加到应用程序上下文:
@Override
public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) {
if (!registry.containsBeanDefinition(
KafkaListenerConfigUtils.KAFKA_LISTENER_ANNOTATION_PROCESSOR_BEAN_NAME)) {
registry.registerBeanDefinition(KafkaListenerConfigUtils.KAFKA_LISTENER_ANNOTATION_PROCESSOR_BEAN_NAME,
new RootBeanDefinition(KafkaListenerAnnotationBeanPostProcessor.class));
}
if (!registry.containsBeanDefinition(KafkaListenerConfigUtils.KAFKA_LISTENER_ENDPOINT_REGISTRY_BEAN_NAME)) {
registry.registerBeanDefinition(KafkaListenerConfigUtils.KAFKA_LISTENER_ENDPOINT_REGISTRY_BEAN_NAME,
new RootBeanDefinition(KafkaListenerEndpointRegistry.class));
}
}
所以只需将这些添加为 <bean/>
s 和这些名称即可。
"org.springframework.kafka.config.internalKafkaListenerAnnotationProcessor"
"org.springframework.kafka.config.internalKafkaListenerEndpointRegistry"
Ho可以替换成这样的Java配置
@Configuration
@EnableKafka
public class KafkaConfig {
}
具有完整的 XML 配置?
特别是方法(或类)如何用
注释@KafkaListener
public void poll(String msg){}
作为侦听器注入 Spring Kafka 上下文?
@EnableKafka
将 2 个 bean 添加到应用程序上下文:
@Override
public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) {
if (!registry.containsBeanDefinition(
KafkaListenerConfigUtils.KAFKA_LISTENER_ANNOTATION_PROCESSOR_BEAN_NAME)) {
registry.registerBeanDefinition(KafkaListenerConfigUtils.KAFKA_LISTENER_ANNOTATION_PROCESSOR_BEAN_NAME,
new RootBeanDefinition(KafkaListenerAnnotationBeanPostProcessor.class));
}
if (!registry.containsBeanDefinition(KafkaListenerConfigUtils.KAFKA_LISTENER_ENDPOINT_REGISTRY_BEAN_NAME)) {
registry.registerBeanDefinition(KafkaListenerConfigUtils.KAFKA_LISTENER_ENDPOINT_REGISTRY_BEAN_NAME,
new RootBeanDefinition(KafkaListenerEndpointRegistry.class));
}
}
所以只需将这些添加为 <bean/>
s 和这些名称即可。
"org.springframework.kafka.config.internalKafkaListenerAnnotationProcessor"
"org.springframework.kafka.config.internalKafkaListenerEndpointRegistry"