我是靠谱客的博主 凶狠哈密瓜,最近开发中收集的这篇文章主要介绍Spring---将Spring工程中的 xml 配置方式改为 全注解方式 (@Configuration),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

举例若对于以下 xml 配置:


<bean id="jcqConsumer" class="com.jcloud.jcq.spring.demo.consumer.JCQConsumer" init-method="start" destroy-method="shutdown">
<!-- 消费者 -->
<property name="consumer" ref="consumer" />
<!-- 订阅的topic和对应的消息监听器的map -->
<property name="topicMessageListenerMap">
<map>
<entry key="test-message-proxy">
<bean class="com.jcloud.jcq.spring.demo.consumer.DefaultMessageListener" />
</entry>
</map>
</property>
<!-- 订阅的topic和对应的过滤条件的map -->
<property name="topicFilterExpressionMap">
<map>
<!-- 过滤条件为null -->
<entry key="test-message-proxy">
<null/>
</entry>
</map>
</property>
</bean>

修改为的配置注解类为:


@Bean(initMethod = "start", destroyMethod = "shutdown")
public JCQConsumer jcqConsumer(Consumer consumer, DefaultMessageListener defaultMessageListener) {
JCQConsumer jcqConsumer = new JCQConsumer();
// 消费者
jcqConsumer.setConsumer(consumer);
// 订阅的topic和对应的消息监听器的map
Map<String, MessageListener> topicMessageListenerMap = new HashMap<>();
topicMessageListenerMap.put("test-message-proxy", defaultMessageListener);
jcqConsumer.setTopicMessageListenerMap(topicMessageListenerMap);
// 订阅的topic和对应的过滤条件的map
Map<String, FilterExpression> topicFilterExpressionMap = new HashMap<>();
topicFilterExpressionMap.put("test-message-proxy", null);
jcqConsumer.setTopicFilterExpressionMap(topicFilterExpressionMap);
System.out.println(topicFilterExpressionMap.get("test-message-proxy"));
return jcqConsumer;
}

说明

  1. JCQConsumer为项目中自定义的类,其中定义了 start() 与 shutdown() 方法,在 配置类中使用注解@Bean(initMethod = "start", destroyMethod = "shutdown")标注
  2. bean的id 为方法名,class 为方法的返回值类型
  3. property 属性中若有 ref 项,应该添加到该 方法的入口参数中 ,如上的 <property name="consumer" ref="consumer" /> 在配置类方法中应该添加参数Consumer consumer,这里注意 consumer 之前应该已经通过 @Bean 已添加到容器中

参考:https://blog.csdn.net/dawn2134/article/details/90940175

最后

以上就是凶狠哈密瓜为你收集整理的Spring---将Spring工程中的 xml 配置方式改为 全注解方式 (@Configuration)的全部内容,希望文章能够帮你解决Spring---将Spring工程中的 xml 配置方式改为 全注解方式 (@Configuration)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(64)

评论列表共有 0 条评论

立即
投稿
返回
顶部