1)<span style="font-family: Arial, Helvetica, sans-serif;">ActiveMQUtil.java </span>
import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.DeliveryMode;
import javax.jms.JMSException;
import javax.jms.MessageConsumer;
import javax.jms.MessageProducer;
import javax.jms.Queue;
import javax.jms.Session;
import javax.jms.TextMessage;
import org.apache.activemq.ActiveMQConnection;
import org.apache.activemq.ActiveMQConnectionFactory;
public class ActiveMQUtil {
private ConnectionFactory cf;
public ActiveMQUtil() {
// TODO Auto-generated constructor stub
this(ActiveMQConnection.DEFAULT_USER,ActiveMQConnection.DEFAULT_PASSWORD,"tcp://127.0.0.1:61616");
}
public ActiveMQUtil(String activeMQUser,String activeMQPassword,String brokerUrl) {
// TODO Auto-generated constructor stub
cf=new ActiveMQConnectionFactory(activeMQUser, activeMQUser, brokerUrl);
}
public void send(String mesg,String destinationQueue){
Connection conn=null;
Session session=null;
try {
conn=cf.createConnection();
conn.start();
session=conn.createSession(Boolean.TRUE, Session.AUTO_ACKNOWLEDGE);
Queue dest=session.createQueue(destinationQueue);
MessageProducer producer=session.createProducer(dest);
producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
producer.send(session.createTextMessage(mesg));
session.commit();
conn.stop();
} catch (JMSException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(null!=session)
try {
session.close();
} catch (JMSException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(null!=conn)
try {
conn.close();
} catch (JMSException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public String receive(String destinationQueue) throws JMSException{
Connection conn=null;
Session session=null;
TextMessage message=null;
try {
conn=cf.createConnection();
conn.start();
session=conn.createSession(Boolean.TRUE, Session.AUTO_ACKNOWLEDGE);
Queue dest=session.createQueue(destinationQueue);
MessageConsumer consumer=session.createConsumer(dest);
message = (TextMessage) consumer.receive(100000);
session.commit();
conn.stop();
} catch (JMSException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(null!=session)
try {
session.close();
} catch (JMSException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(null!=conn)
try {
conn.close();
} catch (JMSException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return message.getText();
}
}
2)测试类:
import javax.jms.JMSException;
public class Test {
/**
* @param args
* @throws JMSException
*/
public static void main(String[] args) throws JMSException {
// TODO Auto-generated method stub
ActiveMQUtil amqUtil=new ActiveMQUtil();
//amqUtil.send("hellow", "hellowWorld");
System.out.println(amqUtil.receive("hellowWorld"));
}
}