1:数据库使用dbcp配置。
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<property name="minPoolSize" value="${jdbc.minPoolSize}"/>
<property name="maxPoolSize" value="${jdbc.maxPoolSize}"/>
<property name="initialPoolSize" value="${jdbc.initialPoolSize}"/>
<!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。默认为0 -->
<property name="maxIdleTime" value="${jdbc.maxIdleTime}"/>
</bean>
2:配置connectionFactory 链接工厂
<bean id="jmsFactory" class="org.apache.activemq.pool.PooledConnectionFactory"
destroy-method="stop">
<property name="connectionFactory">
<bean class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="${activemq.url}"/>
</bean>
</property>
<property name="maxConnections" value="${activemq.maxConnections}"></property>
</bean>
3:将mq的模式设置为queue,实现异步接收。
<bean id="destination" class="org.apache.activemq.command.ActiveMQQueue">
<constructor-arg index="0" value="${activemq.destination}"></constructor-arg>
</bean>
4:你的消费者实现类,处理接收消息的主函数。
<bean id="consumer" class="com.myself.jms.msgaccepter.action.ConsumerAction">
<property name="" ref=""></property>
</bean>
5:消息监听容器,这里统一实现了actinmq的消息接收机制。
<bean id="listenerContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<property name="concurrentConsumers" value="${activemq.consumers}" />
<property name="connectionFactory" ref="jmsFactory" />
<property name="destination" ref="destination" />
<property name="messageListener" ref="consumer" />
</bean>
6:$内的值通过properties文件记录,支持更改。