java openfire是什么, 讓我們一起了解一下?
Openfire是開(kāi)源的、基于可拓展通訊和表示協(xié)議(XMPP)、采用Java編程語(yǔ)言開(kāi)發(fā)的實(shí)時(shí)協(xié)作服務(wù)器。Openfire的效率很高,單臺(tái)服務(wù)器可支持上萬(wàn)并發(fā)用戶(hù)。
openfire的技術(shù)架構(gòu)是什么?
Openfire使用JSP+JavaBean技術(shù)實(shí)現(xiàn)管理頁(yè)面的開(kāi)發(fā)。Web服務(wù)器采用內(nèi)置的jetty作web服務(wù)器,在啟動(dòng)AdminConsolePlugin插件時(shí)調(diào)用startup()方法啟動(dòng)jetty服務(wù)器,9090為其普通端口,9091為其加密端口。
Openfire源碼目錄結(jié)構(gòu)。
1、build目錄:build目錄下收錄的是生成安裝文件(例如:rpm)所要的一些文件,例如JRE等。
2、resources目錄:resources目錄下收錄的是一些為實(shí)現(xiàn)國(guó)際化(i18n)和本地化的一些編碼文件。
3、documentation目錄:documentation目錄下收錄的是一些關(guān)于Openfire安裝和配置的信息。
4、src目錄: src文件夾就是我們想要的Openfire源代碼。
實(shí)戰(zhàn)操作,具體代碼如下:
public?void?SendIq(IQ?iq,?IqCB?cb,?object?cbArg) {undefined //?check?if?the?callback?is?null,?in?case?of?wrong?usage?of?this?class if?(cb?!=?null) {undefined TrackerData?td?=?new?TrackerData(); td.cb?=?cb; td.data?=?cbArg; m_grabbing[iq.Id]?=?td; //iq在agsxmpp中發(fā)送Iq節(jié)的時(shí)候先iq.RemoveAttribute("to") iq.RemoveAttribute("to"); } m_connection.Send(iq); } public?void?SendIq2(IQ?iq,?IqCB?cb,?object?cbArg) {undefined //?check?if?the?callback?is?null,?in?case?of?wrong?usage?of?this?class if?(cb?!=?null) {undefined TrackerData?td?=?new?TrackerData(); td.cb?=?cb; td.data?=?cbArg; m_grabbing[iq.Id]?=?td; //iq在agsxmpp中發(fā)送Iq節(jié)的時(shí)候先iq.RemoveAttribute("to") //iq.RemoveAttribute("to"); } m_connection.Send(iq); }
以上就是小編今天的分享了,希望可以幫助到大家。