白玉成的专栏
Eclipse,让我欢喜让我忧!
BlogJava
::
首页
::
新随笔
::
联系
::
聚合
::
管理
::
17 随笔 :: 0 文章 :: 6 评论 :: 0 Trackbacks
<
2008年11月
>
日
一
二
三
四
五
六
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
留言簿
给我留言
查看公开留言
查看私人留言
随笔分类
Eclipse(3)
(rss)
EMF(1)
(rss)
GMF(2)
(rss)
Java(5)
(rss)
JEE(2)
(rss)
Netbeans(1)
(rss)
RCP
(rss)
WebService
(rss)
Websphere(1)
(rss)
XML(2)
(rss)
随笔档案
2009年4月 (1)
2008年12月 (1)
2008年11月 (12)
2007年9月 (3)
搜索
积分与排名
积分 - 26412
排名 - 1481
最新随笔
1. 修改eclipse启动图片
2. Java中synchronized的使用方法
3. MQ Java API 编程
4. Eclipse 平台体系结构
5. Netbeans版本语言设置
6. 给工程添加Nature
7. EMF基础知识积累
8. 删除默认的工具栏选项
9. 为图形增加Decoration
10. 正则表达式基础知识
最新评论
1. re: DAO设计模式
写的不错,值得学习
--李根
2. re: wait()和sleep()的区别
这是很久以前的文章吧....wait notify 也要捕获异常啊... .中断异常
--owen.peng
3. re: wait()和sleep()的区别
good article! I need this, thanks a lot!
--flamingo
4. re: 修改eclipse启动图片[未登录]
好用
--aaa
5. re: wait()和sleep()的区别
很生动
--xiaohe_mr
阅读排行榜
1. wait()和sleep()的区别(10892)
2. 修改eclipse启动图片(2555)
3. MQ Java API 编程(2502)
4. DOM与SAX的区别(转)(2049)
5. Netbeans版本语言设置(1950)
评论排行榜
1. wait()和sleep()的区别(3)
2. DAO设计模式(2)
3. 修改eclipse启动图片(1)
4. Java中synchronized的使用方法(0)
5. MQ Java API 编程(0)
MQ Java API 编程
发送器
:
import
com.ibm.mq.
*
;
public
class
Typesetter
{
public
static
void
main(String args[])
{
try
{
String hostName
=
"
ITSOG
"
;
String channel
=
"
JAVA.CLIENT.CHNL
"
;
String qManager
=
"
ITSOG.QMGR1
"
;
String qName
=
"
SAMPLE.QUEUE
"
;
/**/
/*
设置MQEnvironment 属性以便客户机连接
*/
MQEnvironment.hostname
=
hostName ;
MQEnvironment.channel
=
channel ;
MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,
MQC.TRANSPORT_WEBSPHERE MQ);
/**/
/*
连接到队列管理器
*/
MQQueueManager qMgr
=
new
MQQueueManager(qManager) ;
/**/
/*
设置打开选项以便打开用于输出的队列,如果队列管理器正在停止,我们也已设置了选项去应对不成功情况。
*/
int
openOptions
=
MQC.MQOO_OUTPUT
|
MQC.MQOO_FAIL_IF_QUIESCING ;
/**/
/*
打开队列
*/
MQQueue queue
=
qMgr.accessQueue(qName,
openOptions,
null
,
null
,
null
);
/**/
/*
设置放置消息选项我们将使用默认设置
*/
MQPutMessageOptions pmo
=
new
MQPutMessageOptions();
/**/
/*
创建消息,MQMessage 类包含实际消息数据的数据缓冲区,和描述消息的所有MQMD 参数
*/
/**/
/*
创建消息缓冲区
*/
MQMessage outMsg
=
new
MQMessage();
/**/
/*
设置MQMD 格式字段
*/
outMsg.format
=
MQC.MQFMT_STRING ;
/**/
/*
准备用户数据消息
*/
String msgString
=
"
Test Message from PtpSender program
"
;
outMsg.writeString(msgString);
/**/
/*
在队列上放置消息
*/
queue.put(outMsg, pmo);
/**/
/*
提交事务处理
*/
qMgr.commit();
System.out.println(
"
The message has been Successfully put!\n
"
);
/**/
/*
关闭队列和队列管理器对象
*/
queue.close();
qMgr.disconnect();
}
catch
(MQException ex)
{
System.out.println(
"
An MQ Error Occurred: Completion Code is :\t
"
+
ex.completionCode
+
"
\n\n The Reason Code is :\t
"
+
ex.reasonCode );
ex.printStackTrace();
}
catch
(Exception e)
{
e.printStackTrace();
}
}
}
接收器:
import
com.ibm.mq.
*
;
public
class
PtpReceiver
{
public
static
void
main(String args[])
{
try
{
String hostName
=
"
ITSOG
"
;
String channel
=
"
JAVA.CLIENT.CHNL
"
;
String qManager
=
"
ITSOG.QMGR1
"
;
String qName
=
"
SAMPLE.QUEUE
"
;
/
设置 MQEnvironment 属性以便客户机连接
*/
MQEnvironment.hostname
=
hostName ;
MQEnvironment.channel
=
channel ;
MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,
MQC.TRANSPORT_WEBSPHERE MQ);
/**/
/*
连接到队列管理器
*/
MQQueueManager qMgr
=
new
MQQueueManager(qManager) ;
/**/
/*
设置打开选项以便打开用于输出的队列,如果队列管理器停止,我们也
已设置了选项去应对不成功情况
*/
int
openOptions
=
MQC.MQOO_INPUT_SHARED
|
MQC.MQOO_FAIL_IF_QUIESCING ;
/**/
/*
打开队列
*/
MQQueue queue
=
qMgr.accessQueue(qName,
openOptions,
null
,
null
,
null
);
/**/
/*
设置放置消息选项
*/
MQGetMessageOptions gmo
=
new
MQGetMessageOptions();
/**/
/*
在同步点控制下获取消息
*/
gmo.options
=
gmo.options
+
MQC.MQGMO_SYNCPOINT ;
/**/
/*
如果在队列上没有消息则等待
*/
gmo.options
=
gmo.options
+
MQC.MQGMO_WAIT ;
/**/
/*
如果队列管理器停顿则失败
*/
gmo.options
=
gmo.options
+
MQC.MQGMO_FAIL_IF_QUIESCING ;
/**/
/*
设置等待的时间限制
*/
gmo.waitInterval
=
3000
;
/**/
/*
创建MQMessage 类
*/
MQMessage inMsg
=
new
MQMessage();
/**/
/*
从队列到消息缓冲区获取消息
*/
queue.get(inMsg, gmo) ;
/**/
/*
从消息读取用户数据
*/
String msgString
=
inMsg.readString(inMsg.getMessageLength());
System.out.println(
"
The Message from the Queue is :
"
+
msgString);
/**/
/*
提交事务
*/
qMgr.commit();
/**/
/*
关闭队列和队列管理器对象
*/
queue.close();
qMgr.disconnect();
}
catch
(MQException ex)
{
System.out.println(
"
An MQ Error Occurred: Completion Code is :\t
"
+
ex.completionCode
+
"
\n\n The Reason Code is :\t
"
+
ex.reasonCode );
ex.printStackTrace();
}
catch
(Exception e)
{
e.printStackTrace();
}
}
}
posted on 2008-11-27 23:33
白玉成
阅读(2502)
评论(0)
编辑
收藏
所属分类:
Websphere
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
Powered by:
BlogJava
Copyright © 白玉成