基于python使用tibco ems代碼實例
這篇文章主要介紹了基于python使用tibco ems代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
TIBCO Enterprise Message Service 是一個消息服務(wù)器產(chǎn)品
完全支持JMS的通訊協(xié)議,在運行速度和消息吞吐量上表現(xiàn)非常出色,
對于Windows、Linux、Mac、AIX平臺都提供支持
代碼如下
#encoding=utf-8 import jpype jvmpath=r"C:\Program Files\Java\jre1.8.0_161\bin\server\jvm.dll" class EmsHelper(object): def __init__(self, server= "tcp://localhost:7222",user="admin",pwd=""): gemsjar = r"E:\EDriver\software\JAVA\jar\Gems.jar;D:\tibco\bw5\ems\8.2\lib\tibjms.jar;D:\tibco\bw5\ems\8.2\lib\tibcrypt.jar;D:\tibco\bw5\ems\8.2\lib\slf4j-api-1.4.2.jar;D:\tibco\bw5\ems\8.2\lib\slf4j-simple-1.4.2.jar;D:\tibco\bw5\ems\8.2\lib\tibjmsadmin.jar;D:\tibco\bw5\ems\8.2\lib\jms-2.0.jar;D:\tibco\bw5\ems\8.2\lib\jndi.jar" #gemsjar = r"D:\tibco\bw5\ems\8.2\lib\jms-2.0.jar;E:\EDriver\software\JAVA\jar\tibjms.jar" jvmArg = "-Djava.class.path=.;%s" % gemsjar jpype.startJVM(jvmpath,jvmArg) self.TibjmsConnection = jpype.JClass('com.tibco.tibjms.TibjmsConnection') self.TibjmsConnectionFactory = jpype.JClass('com.tibco.tibjms.TibjmsConnectionFactory') def SendQueueMsg(self,qname="testq",msgstr=str({'id':1,'name':"tname"})): connfac = self.TibjmsConnectionFactory(server) conn=connfac.createConnection(user,pwd) session=conn.createSession(0,1) dest=session.createQueue(qname) msgProducer = session.createProducer(None) msg = session.createTextMessage() msg.setText(msgstr) msgProducer.send(dest, msg) conn.close() def ShowQueueMsg(self,qname="testq",maxlen=5): connfac = self.TibjmsConnectionFactory(server) conn=connfac.createConnection(user,pwd) session=conn.createSession() queue = session.createQueue(qname) browser = session.createBrowser(queue) msgs = browser.getEnumeration() num = 0 while(msgs.hasMoreElements()): num+=1 message =msgs.nextElement() print message.getText() if(num>=maxlen): break browser.close() conn.close() def HandleOneQueueMsg(self,qname="testq"): connfac = self.TibjmsConnectionFactory(server) conn=connfac.createConnection(user,pwd) session=conn.createSession() queue = session.createQueue(qname) dest=session.createQueue(qname) msgConsumer = session.createConsumer(dest) conn.start() msg = msgConsumer.receive() msg.acknowledge() self.HandleMsg(msg.getText()) conn.close() def HandleMsg(self,msgstr): print "message is : ",msgstr if __name__ == '__main__': server,user,pwd,qname,msgstr="tcp://localhost:7222","admin","","testq",str({'id':1,'name':"tname"}) eh=EmsHelper(server,user,pwd) eh.HandleQueueMsg()
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 對python中字典keys,values,items的使用詳解
- Python3下錯誤AttributeError: ‘dict’ object has no attribute’iteritems‘的分析與解決
- Python中使用items()方法返回字典元素對的教程
- Python中dictionary items()系列函數(shù)的用法實例
- Python實現(xiàn)直播推流效果
- 使用Python實現(xiàn) 學(xué)生學(xué)籍管理系統(tǒng)
- 基于Python獲取城市近7天天氣預(yù)報
- python NumPy ndarray二維數(shù)組 按照行列求平均實例
- 解決python中的冪函數(shù)、指數(shù)函數(shù)問題
相關(guān)文章
Python 網(wǎng)絡(luò)編程之UDP發(fā)送接收數(shù)據(jù)功能示例【基于socket套接字】
這篇文章主要介紹了Python 網(wǎng)絡(luò)編程之UDP發(fā)送接收數(shù)據(jù)功能,結(jié)合實例形式分析了Python使用socket套接字實現(xiàn)基于UDP協(xié)議的數(shù)據(jù)發(fā)送端與接收端相關(guān)操作技巧,需要的朋友可以參考下2019-10-10pytorch中常用的乘法運算及相關(guān)的運算符(@和*)
pytorch是深度學(xué)習(xí)框架,而深度學(xué)習(xí)其實本質(zhì)就是一大堆矩陣乘法,最后用來模擬一個高維擬合函數(shù),下面這篇文章主要給大家介紹了關(guān)于pytorch中常用的乘法運算及相關(guān)的運算符(@和*)的相關(guān)資料,需要的朋友可以參考下2022-01-01python-opencv中的cv2.inRange函數(shù)用法說明
這篇文章主要介紹了python-opencv中的cv2.inRange函數(shù)用法說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04Python如何在main中調(diào)用函數(shù)內(nèi)的函數(shù)方式
這篇文章主要介紹了Python如何在main中調(diào)用函數(shù)內(nèi)的函數(shù)方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06python?pandas數(shù)據(jù)處理之刪除特定行與列
Pandas是數(shù)據(jù)科學(xué)中的利器,你可能想到的數(shù)據(jù)處理騷操作,貌似用Pandas都能夠?qū)崿F(xiàn),下面這篇文章主要給大家介紹了關(guān)于python?pandas數(shù)據(jù)處理之刪除特定行與列的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-08-08解決python logging遇到的坑 日志重復(fù)打印問題
這篇文章主要介紹了解決python logging遇到的坑 日志重復(fù)打印問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03Kears 使用:通過回調(diào)函數(shù)保存最佳準(zhǔn)確率下的模型操作
這篇文章主要介紹了Kears 使用:通過回調(diào)函數(shù)保存最佳準(zhǔn)確率下的模型操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06