ActiveMQ添加账号密码,使用事物,签收模式

ActiveMQ添加密码

在apache-activemq-5.11.1\conf\activemq.xml中
ActiveMQ添加账号密码,使用事物,签收模式_第1张图片
在上图所示位置插入红框的内容即可,文字版如下:

		<plugins>
			<simpleAuthenticationPlugin>
				<users>
					<authenticationUser username="aaa" password="bbb" groups="users,admins"/>
				</users>
			</simpleAuthenticationPlugin>
		</plugins>

账号:aaa
密码:bbb

java程序访问
java需要对此进行相应修改。如下,不清楚可以看上一篇:https://blog.csdn.net/j262176166/article/details/87967616

//第一步 建立ConnectionFactory工厂对象,需要填入用户名和密码以及要链接的地址,均使用默认即可,默认端口为"tcp://localhost:61616"
		ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(
				"aaa", "bbb","tcp://localhost:61616");

注意:生产者与消费者均需修改!

ActiveMQ使用事物

想要使用事物,只需要在session获取时候改为Boolean.TRUE

Session session = connection.createSession(Boolean.TRUE, Session.AUTO_ACKNOWLEDGE);

并添加提交即可

session.commit();

ActiveMQ签收模式

AUTO_ACKNOWLEDGE:自动确认
CLIENT_ACKNOWLEDGE:客户端手动确认
DUPS_OK_ACKNOWLEDGE:自动批量确认
SESSION_TRANSACTED:事务提交并确认

AUTO_ACKNOWLEDGE:自动确认,后台已经写好返回给ActiveMQ的确认信息
CLIENT_ACKNOWLEDGE:客户端手动确认,需要调用下面方法返回确认信息,否则消息仍会在ActiveMQ中,ActiveMQ认为其未消费。

//手动去签收消息,另起一个线程(TCP)去通知我们的MQ服务确认签收
textMessage.acknowledge();

你可能感兴趣的:(ActiveMQ)