队列信息 server : 172.28.35.50 name : QUEUE_INVSEGINFO_OUT_CHANGE 计算ServerUtils.sha1(amqQueue.getServer() + amqQueue.getJMSDestination())
时间: 2024-02-27 22:55:47 浏览: 123
根据你提供的队列信息,假设你有一个ActiveMQ队列,名称为"QUEUE_INVSEGINFO_OUT_CHANGE",并且它所在的服务器地址为"172.28.35.50",那么可以通过以下代码计算出SHA-1哈希值:
```java
import org.apache.activemq.command.ActiveMQQueue;
import org.apache.activemq.util.ServerUtils;
import javax.jms.Destination;
public class Example {
public static void main(String[] args) {
ActiveMQQueue amqQueue = new ActiveMQQueue("QUEUE_INVSEGINFO_OUT_CHANGE");
String server = "172.28.35.50";
Destination destination = amqQueue;
String destinationName = "";
if (destination instanceof ActiveMQQueue) {
destinationName = ((ActiveMQQueue) destination).getQueueName();
}
String str = server + destinationName;
String sha1 = ServerUtils.sha1(str);
System.out.println(sha1);
}
}
```
在这个示例中,我们首先创建一个ActiveMQQueue对象,然后将服务器地址和队列名称拼接成一个字符串,并调用ServerUtils.sha1()方法计算SHA-1哈希值。最后,我们将计算得到的SHA-1哈希值打印到控制台。
如果你的ActiveMQ版本较老,可能没有ActiveMQQueue类,可以使用Queue类代替。
阅读全文