想要运行MQ,其中最重要的两个包为:com.ibm.mq.jar connector.jar,
如果缺少connector.jar 一般会报这种错误:java.lang.NoClassDefFoundError: javax/resource/ResourceException
package com.mq.test;
import java.io.File;
import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.Date; import java.util.GregorianCalendar; import org.apache.log4j.Logger;
import com.ibm.mq.MQC;
import com.ibm.mq.MQEnvironment; import com.ibm.mq.MQException; import com.ibm.mq.MQMessage; import com.ibm.mq.MQPutMessageOptions; import com.ibm.mq.MQQueue; import com.ibm.mq.MQQueueManager; import com.mq.Config; public class TestMain {
private static final Logger log = Logger.getLogger(TestMain.class); /**
* @param args * @throws IOException */ @SuppressWarnings("unchecked") public static void main(String[] args) throws IOException { Config.MQ_CLIENT = true; try { Config.load(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } File file = new File("D:\\test\\Goods.xml"); InputStream in = null; in = new FileInputStream(file);
byte[] cache = new byte[(int) file.length()];
for (int readed = in.read(cache); readed < cache.length; readed += in .read(cache, readed, cache.length - readed)) ; if (in != null) { try { in.close(); } catch (Throwable th) { } } MQQueue mqQueue = null;
MQQueueManager qMgr = null; String qManager = "", qName = ""; qManager = Config.MQ_QUEUE_MANAGER; qName = Config.MQ_QUEUE_IN; // qName="REMOTE_CARGO_QUEUE"; MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES); MQEnvironment.CCSID = Config.MQ_CCSID; MQEnvironment.hostname = Config.MQ_HOST; MQEnvironment.channel = Config.MQ_CHANNEL; MQEnvironment.port = Config.MQ_PORT; MQEnvironment.disableTracing(); MQException.log = null; // 连接到队列管理器 try { qMgr = new MQQueueManager(qManager); } catch (MQException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } log.warn("成功连接" + qName); int openOptions = MQC.MQOO_OUTPUT | MQC.MQOO_INQUIRE | MQC.MQPMO_SET_ALL_CONTEXT; // int openOptions = MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_OUTPUT // | MQC.MQOO_INQUIRE | MQC.MQPMO_SET_ALL_CONTEXT; try { mqQueue = qMgr.accessQueue(qName, openOptions); } catch (MQException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } MQPutMessageOptions mpmo = new MQPutMessageOptions(); MQMessage mqMessage = new MQMessage(); // in=new FileInputStream(f);
// byte[] cache=new byte[(int)f.length()]; // for(int // readed=in.read(cache);readed<cache.length;readed+=in.read(cache,readed,cache.length-readed)); try { String str = new String(cache, "utf-8"); log.warn(str); // mqMessage.writeString("我是一个好人"); // DataParser d=new DataParser(); // d.saveMsgToDatabase(str); mqMessage.write(str.getBytes()); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } mqMessage.putApplicationName = "frontiersystem"; mqMessage.putDateTime = new GregorianCalendar(); mpmo.options = MQC.MQPMO_SET_ALL_CONTEXT; long a = (new Date()).getTime(); for (int i = 0; i < 1; i++) { try { mqQueue.put(mqMessage, mpmo); log.warn("发送放行信息成功!"); } catch (MQException e) { // TODO Auto-generated catch block e.printStackTrace(); } } long b = (new Date()).getTime(); log.warn(b-a); try { mqQueue.close(); qMgr.close(); } catch (MQException e) { // TODO Auto-generated catch block e.printStackTrace(); } // MQReceiver receiver = new MQReceiver(); // receiver.start(); // MQSender sender = new MQSender(); // sender.start(); // sender.add("111111"); // DataParser parser = new DataParser(strbuf.toString());
// parser.start(); // PickupParser pick = new PickupParser(); // pick.setMessage(strbuf.toString()); // pick.parserMsg(); // ACK_URCCargoForEP aaa = new ACK_URCCargoForEP();
// aaa.setMessageId("0"); // aaa.setMessageType("ACK"); // aaa.setSenderId("EP"); // aaa.setReceiverId("UrcCargo"); // aaa.setSendTime(new Timestamp(new Date().getTime())); // aaa.setVersion("01"); // aaa.setSourceHeadMsg("sdffsdfs"); // log.warn(aaa.toXML()); }
}
|
|