亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? jboss建立jms應用.txt

?? 環境配置說明 Jboss4.2.3 Java ee 5 MySql5.0 安裝jdk,我的目錄為C:SunSDK 安裝jboss.我的目錄為D:jboss4.2.3 安裝mysql 配置
?? TXT
字號:
環境配置說明
Jboss4.2.3
Java ee 5
MySql5.0
安裝jdk,我的目錄為C:\Sun\SDK
安裝jboss.我的目錄為D:\jboss4.2.3
安裝mysql
配置環境變量JBOSS_HOME D:\jboss4.2.3
配置環境變量 JAVA_HOME C:\Sun\SDK\jdk
JBOSS的JMS配置
由于沒有用到集群所以用JBOSS的default應用即可。
1、配置MySQL數據庫的JNDI
將MySQL數據庫驅動拷到default\lib下JBOSS沒有自帶MySQL的數據庫驅動。
在D:\jboss4.2.3\docs\examples\jca 下的文件夾下面有很多不同數據庫引用的數
據源定義模板。將其中的 mysql-ds.xml 文件Copy到你使用的服務器下如 D:\ jboss4.2
.3\server\default\deploy。
修改 mysql-ds.xml 文件的內容使之能通過JDBC正確訪問你的MySQL數據庫如下
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<jndi-name>MySqlDS</jndi-name>

<connection-url> jdbc:mysql://localhost:3306/test</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>root</user-name>
<password>rootpassword</password>
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MyS
QLExceptionSorter</exception-sorter-class-name>
<metadata>
<type-mapping>mySQL</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>
這里定義了一個名為MySqlDS的數據源其參數包括JDBC的URL 驅動類名用戶名
及密碼等。
通過配置后就可以通過JNDI名java:MySqlDS 訪問到配置的Mysql數據庫。
2、配置JBOSS的JMS環境
將D:\jboss4.2.3\docs\examples\jms下的mysql-jdbc2-service.xml拷到D:\jbos
s4.2.3\server\default\deploy\jms 下。并將數據庫DataSourceBinding 改成name=M
ySqlDS連到你的MySql數據庫
將D:\jboss4.2.3\server\default\deploy\jms 目錄下的hsqldb-jdbc-state-servic
e文件改名為mysql-jdbc-state-service.xml 并將<depends optional-attribute-name
="ConnectionManager">jboss.jca:service=DataSourceBinding,name=MySqlDS<
/depends>
該成name=MySqlDS用于連接你的MySql的數據庫。
啟動JBOSS后在控制臺將會看到類似如下的信息就表示默認的JMS的jndi名已經綁定了
。JMS的配置成功了。
10:14:42,343 INFO [ConnectionFactoryBindingService] Bound ConnectionM
anager 'jboss.jca:service=DataSourceBinding,name=DefaultDS' to JNDI name 'j
ava:DefaultDS'
10:14:42,984 INFO [ConnectionFactoryBindingService] Bound ConnectionM
anager 'jboss.jca:service=ConnectionFactoryBinding,name=JmsXA' to JNDI nam
e 'java:JmsXA'
10:14:43,171 INFO [ConnectionFactoryBindingService] Bound ConnectionM
anager 'jboss.jca:service=DataSourceBinding,name=MySqlDS' to JNDI name 'ja
va:MySqlDS'
10:14:43,968 INFO [A] Bound to JNDI name: queue/A
10:14:44,000 INFO [B] Bound to JNDI name: queue/B
10:14:44,000 INFO [C] Bound to JNDI name: queue/C
10:14:44,000 INFO [D] Bound to JNDI name: queue/D
10:14:44,015 INFO [ex] Bound to JNDI name: queue/ex
10:14:44,046 INFO [testTopic] Bound to JNDI name: topic/testTopic
10:14:44,046 INFO [securedTopic] Bound to JNDI name: topic/securedTopi
c
10:14:44,062 INFO [testDurableTopic] Bound to JNDI name: topic/testDura
bleTopic
10:14:44,062 INFO [testQueue] Bound to JNDI name: queue/testQueue
10:14:44,140 INFO [myQueue] Bound to JNDI name: queue/myQueue
10:14:44,203 INFO [UILServerILService] JBossMQ UIL service available at :
/127.0.0.1:8093
連接到MySQL數據庫也可以看到默認的建了幾個以jms_開頭的數據表。用語保存jm
s的用戶信息和持久化消息。
JBOSS的JMS實例
JBOSS的JMS環境建立好了以后我們就可以寫幾個發送接受JMS的程序來驗證一下。
當你發送一個消息你不能直接發送到對此消息感興趣的接受者。而是你發送到一個目的
地。對此消息感興趣的接受者必須連接到目的地得到此消息或在目的地設置訂閱。
在JMS中有兩種域topics 和queues 。
*一個消息發送到一個topics 可以有多個客戶端。用topic發布允許一對多或多對多
通訊通道。消息的產生者被叫做publisher, 消息接受者叫做subscriber。
*queue 是另外一種方式僅僅允許一個消息傳送給一個客戶。一個發送者將消息放在消
息隊列中接受者從隊列中抽取并得到消息消息就會在隊列中消失。第一個接受者抽取并得
到消息后其他人就不能在得到它。
為了能發送和接收消息必須得到一個JMS連接。該連接是使用JMS Provider得到連接
的在得到連接之后建立一個會話(Session)。然后再建立publisher/sender 來發送消息
或subscriber/receiver來接收消息。
運行時如果使用topic 那么publisher 或subscriber 通過一個topic來關聯如果使用
queue 則sender 或receiver通過queue來關聯起來。
通常在JMS框架中運轉的方法如下
(1) 得到一個JNDI初始化上下文(Context)
(2) 根據上下文來查找一個連接工廠TopicConnectFactory/ QueueConnectionFacto
ry (有兩種連接工廠根據是topic/queue來使用相應的類型)
(3) 從連接工廠得到一個連接(Connect 有兩種[TopicConnection/ QueueConnectio
n]);
(4) 通過連接來建立一個會話(Session);
(5) 查找目的地(Topic/ Queue);
(6) 根據會話以及目的地來建立消息制造者(TopicPublisher/QueueSender)和消費者(
TopicSubscriber/ QueueReceiver).
為了得到一個連接和得到一個目的地用來關聯publisher/sender 或subscriber/recei
ver 必須用provider-specific參數。
在D:\jboss4.2.3\server\default\deploy\jms下的jbossmq-destinations-service.
xml是在配置JMS目的地的xml文件。在文件中已經存在幾個缺省的目的地所以你比較容易
明白怎樣增加到文件中
1、 topics例子
package com.msg;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.jms.TopicConnectionFactory;
import javax.jms.TopicConnection;
import javax.jms.TopicSession;
import javax.jms.TopicPublisher;
import javax.jms.Topic;
import javax.jms.TextMessage;
import javax.jms.Session;
import javax.jms.JMSException;
import java.util.Hashtable;
public class HelloPublisher {
TopicConnection topicConnection;
TopicSession topicSession;
TopicPublisher topicPublisher;
Topic topic;
public HelloPublisher(String factoryJNDI, String topicJNDI)
throws JMSException, NamingException {
Hashtable props = new Hashtable();
props.put(Context.INITIAL_CONTEXT_FACTORY,
"org.jnp.interfaces.NamingContextFactory");
props.put(Context.PROVIDER_URL, "localhost:1099");
props.put("java.naming.rmi.security.manager", "yes");
props.put(Context.URL_PKG_PREFIXES, "org.jboss.naming");
Context context = new InitialContext(props);
TopicConnectionFactory topicFactory = (TopicConnectionFactory) c
ontext
.lookup(factoryJNDI);
topicConnection = topicFactory.createTopicConnection();
topicSession = topicConnection.createTopicSession(false,
Session.AUTO_ACKNOWLEDGE);
topic = (Topic) context.lookup(topicJNDI);
topicPublisher = topicSession.createPublisher(topic);
}
public void publish(String msg) throws JMSException {
TextMessage message = topicSession.createTextMessage();
message.setText(msg);
topicPublisher.publish(topic, message);
}
public void close() throws JMSException {
topicSession.close();
topicConnection.close();
}
public static void main(String[] args) {
try {
HelloPublisher publisher = new HelloPublisher("ConnectionFa
ctory",
"topic/testTopic");
for (int i = 1; i < 11; i++) {
String msg = "Hello World no. " + i;
System.out.println("Publishing message: " + msg);
publisher.publish(msg);
}
publisher.close();
} catch (Exception ex) {
System.err
.println("An exception occurred while testing HelloP
ublisher25: "
+ ex);
ex.printStackTrace();
}
}
}
package com.msg;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.jms.TopicConnectionFactory;
import javax.jms.TopicConnection;
import javax.jms.TopicSession;
import javax.jms.TopicSubscriber;
import javax.jms.Topic;
import javax.jms.Message;
import javax.jms.TextMessage;
import javax.jms.Session;
import javax.jms.MessageListener;
import javax.jms.JMSException;
public class HelloSubscriber implements MessageListener {
TopicConnection topicConnection;
TopicSession topicSession;
TopicSubscriber topicSubscriber;
Topic topic;
public HelloSubscriber(String factoryJNDI, String topicJNDI)
throws JMSException, NamingException {
Context context = new InitialContext();
TopicConnectionFactory topicFactory = (TopicConnectionFactory) c
ontext
.lookup(factoryJNDI);
topicConnection = topicFactory.createTopicConnection();
topicSession = topicConnection.createTopicSession(false,Session.AUTO_ACKNOWLEDGE);
topic = (Topic) context.lookup(topicJNDI);
topicSubscriber = topicSession.createSubscriber(topic);
topicSubscriber.setMessageListener(this);
System.out.println("HelloSubscriber subscribed to topic: " + topic
JNDI);
topicConnection.start();
}
public void onMessage(Message m) {
try {
String msg = ((TextMessage) m).getText();
System.out.println("HelloSubscriber got message: " + msg);
} catch (JMSException ex) {
System.err.println("Could not get text message: " + ex);
ex.printStackTrace();
}
}
public void close() throws JMSException {
topicSession.close();
topicConnection.close();
}
public static void main(String[] args) {
try {
HelloSubscriber subscriber = new HelloSubscriber(
"TopicConnectionFactory", "topic/testTopic");
} catch (Exception ex) {
System.err.println("An exception occurred while testing HelloS
ubscriber: "
+ ex);
ex.printStackTrace();
}
}
}
2、 queues 例子
package com.msg;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.jms.QueueConnectionFactory;
import javax.jms.QueueConnection;
import javax.jms.QueueSession;
import javax.jms.QueueSender;
import javax.jms.Queue;
import javax.jms.TextMessage;
import javax.jms.Session;
import javax.jms.JMSException;
import java.util.Hashtable;
public class HelloQueue {
QueueConnection queueConnection;
QueueSession queueSession;
QueueSender queueSender;
Queue queue;
public HelloQueue(String factoryJNDI, String topicJNDI)throws JMSException, NamingException {
Hashtable props = new Hashtable();
props.put(Context.INITIAL_CONTEXT_FACTORY,
"org.jnp.interfaces.NamingContextFactory");
props.put(Context.PROVIDER_URL, "localhost:1099");
props.put("java.naming.rmi.security.manager", "yes");
props.put(Context.URL_PKG_PREFIXES, "org.jboss.naming");
Context context = new InitialContext(props);
QueueConnectionFactory queueFactory = (QueueConnectionFactory)
context
.lookup(factoryJNDI);
queueConnection = queueFactory.createQueueConnection();
queueSession = queueConnection.createQueueSession(false,
Session.AUTO_ACKNOWLEDGE);
queue = (Queue) context.lookup(topicJNDI);
queueSender = queueSession.createSender(queue);
}
public void send(String msg) throws JMSException {
TextMessage message = queueSession.createTextMessage();
message.setText(msg);
queueSender.send(queue, message);
}
public void close() throws JMSException {
queueSession.close();
queueConnection.close();
}
public static void main(String[] args) {
try {
HelloPublisher publisher = new HelloPublisher("ConnectionFacto
ry",
"topic/testTopic");
for (int i = 1; i < 11; i++) {
String msg = "Hello World no. " + i;
System.out.println("Publishing message: " + msg);
publisher.publish(msg);
}
publisher.close();
} catch (Exception ex) {
System.err
.println("An exception occurred while testing HelloPub
lisher25: "
+ ex);
ex.printStackTrace();
}
}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产综合视频在线观看| 国产不卡在线播放| 国产精品久久精品日日| 国产午夜精品在线观看| 日本一区二区免费在线观看视频| 欧美大片国产精品| 久久久久久亚洲综合| 国产午夜精品福利| 欧美激情在线观看视频免费| 国产色产综合色产在线视频| 中文字幕在线不卡一区| 亚洲免费在线观看视频| 亚洲一二三四久久| 日本三级韩国三级欧美三级| 日韩精品一二区| 国产精品资源网| 波多野结衣91| 在线不卡免费欧美| 精品成人一区二区三区| 亚洲欧洲日韩女同| 日韩av在线发布| 国产在线不卡一卡二卡三卡四卡| 成人少妇影院yyyy| 欧美亚洲国产一区在线观看网站| 欧美疯狂性受xxxxx喷水图片| 精品国产自在久精品国产| 国产精品你懂的在线欣赏| 午夜精品在线视频一区| 国产乱淫av一区二区三区| 91在线国产观看| 日韩一卡二卡三卡四卡| 国产精品久久久一本精品| 五月天中文字幕一区二区| 国产成人综合网| 欧美天堂亚洲电影院在线播放| 精品国产乱码久久久久久老虎| 亚洲色图视频网站| 精品一区二区三区日韩| 在线视频观看一区| 久久精品人人爽人人爽| 天天操天天干天天综合网| 国v精品久久久网| 欧美日韩国产成人在线免费| 日本一区二区综合亚洲| 日韩国产精品久久久| av激情亚洲男人天堂| 欧美电视剧在线观看完整版| 亚洲麻豆国产自偷在线| 国产精品一区二区久久不卡 | 欧美mv日韩mv国产网站| 亚洲啪啪综合av一区二区三区| 国产综合久久久久久鬼色| 精品视频1区2区| 亚洲美女一区二区三区| 成人久久18免费网站麻豆| 精品人在线二区三区| 肉丝袜脚交视频一区二区| 99久久国产综合精品女不卡| 国产欧美一区二区三区网站| 麻豆成人av在线| 日韩一卡二卡三卡四卡| 同产精品九九九| 欧美日韩国产首页| 一区二区三区四区在线免费观看| 粉嫩高潮美女一区二区三区| 精品sm捆绑视频| 韩国成人福利片在线播放| 91精品国产综合久久精品| 亚洲福利一区二区| 欧洲av在线精品| 亚洲午夜一区二区| 91久久精品国产91性色tv | 一区二区三区国产精华| 91同城在线观看| 一色屋精品亚洲香蕉网站| 波多野结衣的一区二区三区| 国产精品无码永久免费888| 国产宾馆实践打屁股91| 国产亚洲欧美日韩俺去了| 黑人精品欧美一区二区蜜桃 | 91香蕉视频在线| 亚洲日本欧美天堂| 色婷婷综合久久久| 亚洲6080在线| 日韩精品一区二区三区swag| 久久国产精品99久久人人澡| wwwwxxxxx欧美| 国产成人免费9x9x人网站视频| 中文字幕在线不卡| 欧洲一区二区av| 免费成人你懂的| 国产日产欧美一区| 不卡视频免费播放| 亚洲国产欧美在线| 精品久久久久久久一区二区蜜臀| 国产精品99久久久| 亚洲精品国产a久久久久久| 在线观看av不卡| 久久91精品久久久久久秒播| 日本一区二区三区电影| 日本韩国欧美国产| 青青草原综合久久大伊人精品优势| 精品福利视频一区二区三区| av不卡免费电影| 人妖欧美一区二区| 国产日韩欧美a| 欧美日韩高清一区二区| 九一九一国产精品| 亚洲精品国产高清久久伦理二区| 91精品国产综合久久香蕉的特点 | 国产美女av一区二区三区| 亚洲日本va在线观看| 在线播放91灌醉迷j高跟美女 | 日韩一卡二卡三卡| 91亚洲国产成人精品一区二三| 日本中文在线一区| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 欧美日韩精品电影| 成人黄色国产精品网站大全在线免费观看| 亚洲一区二区三区四区五区黄| 欧美精品一区二区三区高清aⅴ | 色94色欧美sute亚洲线路一ni| 久久国产精品99精品国产| 亚洲精品成人在线| 久久久久久99久久久精品网站| 欧美系列一区二区| www.一区二区| 国内精品第一页| 日韩avvvv在线播放| 亚洲精品精品亚洲| 中文字幕一区二区三区不卡在线 | 国产精品女同一区二区三区| 欧美一区二区三区公司| 色琪琪一区二区三区亚洲区| 国产不卡一区视频| 久久福利视频一区二区| 丝瓜av网站精品一区二区| 亚洲日本韩国一区| 国产精品国产三级国产普通话99 | 丝袜美腿亚洲综合| 一区二区三区四区国产精品| 国产色产综合产在线视频 | 99久久99久久免费精品蜜臀| 麻豆国产一区二区| 奇米色一区二区| 日韩精品一卡二卡三卡四卡无卡| 亚洲美女屁股眼交| 夜夜揉揉日日人人青青一国产精品| 国产精品视频一二三区| 亚洲国产精品黑人久久久| 欧美精品一区二| 久久精品人人做人人综合| 久久这里都是精品| 国产日韩精品视频一区| 日本一区二区免费在线| 国产精品免费aⅴ片在线观看| 国产丝袜美腿一区二区三区| 久久九九久久九九| 中文欧美字幕免费| 亚洲精品综合在线| 亚洲一二三四区| 日本伊人色综合网| 蜜臀久久久久久久| 国产精品一二一区| 99久久久久久99| 欧美午夜理伦三级在线观看| 欧美电影一区二区三区| 日韩久久久精品| 国产午夜精品在线观看| 自拍偷拍亚洲综合| 亚洲妇女屁股眼交7| 久久99久久99小草精品免视看| 激情五月婷婷综合网| 岛国精品在线播放| 色综合久久久久综合体| 91精品欧美久久久久久动漫| 久久综合色8888| 中文字幕日本乱码精品影院| 午夜久久久久久| 国产一区二区三区黄视频| 91在线观看污| 9191精品国产综合久久久久久| 久久天天做天天爱综合色| 亚洲欧洲日产国码二区| 日韩va欧美va亚洲va久久| 成人免费高清在线观看| 欧美日韩第一区日日骚| 久久夜色精品国产欧美乱极品| 亚洲日本在线a| 久久福利视频一区二区| 91年精品国产| 26uuu亚洲综合色欧美| 亚洲永久免费av| 国产风韵犹存在线视精品| 欧美日韩一区二区三区不卡| 精品久久人人做人人爱| 亚洲国产aⅴ天堂久久| 粉嫩久久99精品久久久久久夜| 欧美精品v日韩精品v韩国精品v| 欧美激情中文不卡|