ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
###35.5 混合XA和non-XA的JMS连接 当使用JTA时,primary JMS `ConnectionFactory`bean将能识别XA,并参与到分布式事务中。有些情况下,你可能需要使用non-XA的`ConnectionFactory`去处理一些JMS消息。例如,你的JMS处理逻辑可能比XA超时时间长。 如果想使用一个non-XA的`ConnectionFactory`,你可以注入`nonXaJmsConnectionFactory` bean而不是`@Primary` `jmsConnectionFactory` bean。为了保持一致,`jmsConnectionFactory` bean将以别名`xaJmsConnectionFactor`来被使用。 示例如下: ```java // Inject the primary (XA aware) ConnectionFactory @Autowired private ConnectionFactory defaultConnectionFactory; // Inject the XA aware ConnectionFactory (uses the alias and injects the same as above) @Autowired @Qualifier("xaJmsConnectionFactory") private ConnectionFactory xaConnectionFactory; // Inject the non-XA aware ConnectionFactory @Autowired @Qualifier("nonXaJmsConnectionFactory") private ConnectionFactory nonXaConnectionFactory; ```