Rabbitmq Java客户端中的代理

Rabbitmq Java客户端中的代理,java,rabbitmq,Java,Rabbitmq,有没有办法将代理设置为RabbitMQ Java客户端 package com.rabbitmq; import com.rabbitmq.client.Channel; import com.rabbitmq.client.Connection; import com.rabbitmq.client.ConnectionFactory; import com.rabbitmq.client.MessageProperties; public class SendToRabbitMQ {

有没有办法将代理设置为RabbitMQ Java客户端

package com.rabbitmq;

import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.ConnectionFactory;
import com.rabbitmq.client.MessageProperties;

public class SendToRabbitMQ {
    private final static String QUEUE_NAME = "observation_queue";

    public static void sendObservation(String observation) {
        try {
            ConnectionFactory factory = new ConnectionFactory();
            factory.setHost("x.x.x.x");
            factory.setUsername("test");
            factory.setVirtualHost("test_vh");
            factory.setPassword("test");
            Connection con = factory.newConnection();
            Channel channel = con.createChannel();
            channel.queueDeclare(QUEUE_NAME, true, false, false, null);
            channel.basicPublish( "", QUEUE_NAME,
                    MessageProperties.PERSISTENT_TEXT_PLAIN,
                    observation.getBytes());
            System.out.println(" Ovservation Sent '" + observation + "'");
            channel.close();
            con.close();
        } catch (Exception e) {
            e.printStackTrace();
        }


    }
} 

我想为此连接设置代理。

您必须设置SOCKS代理


请参阅:

您可以通过系统属性设置代理,如第一个答案中给出的链接中所述,但请注意,它将对整个JVM有效。如果存在过滤流量的规则,则可以过滤数据库连接或其他连接


如果您已经找到了如何使用代理对象处理代理,欢迎您在回答自己的问题时进行解释!我在找那个

还需要注意的是,代理服务器本身需要支持SOCKS协议,而不是所有代理都支持(例如i-Filter)。