首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

OpenJMS(java讯息服务的一个实现)的使用

2012-12-18 
OpenJMS(java消息服务的一个实现)的使用Openjms的使用 jms:java message service中文名字是“java消息服务”

OpenJMS(java消息服务的一个实现)的使用

Openjms的使用

jms:java message service中文名字是“java消息服务”
Openjms是实现jms的一个开源程序,它包含一个服务器端和一堆的编程调用jar包。

官方当然有英文版的使用说明,这里只是说说我使用openjms的一些过程。
按照官方的要求,使用openjms分为4个步骤:
1、下载
2、安装
3、启动(启动服务器端)
4、使用

?

1、下载

http://nchc.dl.sourceforge.net/project/openjms/openjms/openjms-0.7.7-beta-1/openjms-0.7.7-beta-1.zip
?? 在网站上之看到只看到一个beta版本,有点失望,不过还是看看吧

?

2、安装

要求:java2运行环境
(1)解压压缩包
(2)设置环境变量
java_home java运行环境,java_home=c:\Program File\java\jdk1.6.0_17
openjms_home 解压之后的openjms路径openjms_home=e:\Program Files\openjms(建议将0.7.0这种东西去掉,在java中.号比较特殊,在加载类的时候可能导致错误)
(3)配置数据库
1)加入数据库驱动(本例中使用mysql数据库),在%OPENJMS_HOME%\bin\setenv.bat中设置
rem Configures the JDBC driver
set CLASSPATH=%OPENJMS_HOME%/extlib/mysql-connector-java-5.1.5-bin.jar(注:我是将mysql的驱动放入到openjms目录中,新建了一个外部jar包目录extlib)
2)修改数据库配置文件,$OPENJMS_HOME/config/openjms.xml
<DatabaseConfiguration>
????? <RdbmsDatabaseConfiguration
??????? driver="com.mysql.jdbc.Driver"
??????? url="jdbc:mysql://127.0.0.1:3306/openjms"
??????? user="root"
??????? password="123456" />
??? </DatabaseConfiguration>
注释掉: set JAVA_OPTS=%JAVA_OPTS% -Dderby.system.home=%OPENJMS_HOME%\db??
3)创建数据表
bin/dbtool.bat -create -config %OPENJMS_HOME%\config\openjms.xml
如果上面的批处理无法创建数据库表,请手动创建,创建数据库的脚本在$OPENJMS_HOME/db/sql中create_mysql.sql,至此,基本安装结束,准备启动

?

3、启动openjms服务器端

bin/startup.bat?? 就可以启动了,如果一切正常,将会出现
Server accepting connections on tcp://127.0.0.1:3035/?? 的类似字样
当然也在命令行中检验一下端口是否开启 netstat -an|find "3035"

?

4、应用(测试)

4-1、第一种测试方法
(1)创建一个新的java project
(2)导入需要的jar包(详细的jar包关系依赖请查看文档docs/usersguide/jars.html)
openjms-0.7.7-beta-1.jar
jms-1.1.jar
jndi-1.2.1.jar
openjms-0.7.7-beta-1.jar
openjms-common-0.7.7-beta-1.jar
openjms-net-0.7.7-beta-1.jar
commons-codec-1.3.jar
commons-logging-1.0.4.jar
concurrent-1.3.4.jar
spice-jndikit-1.2.jar
(3)利用%openjms_home%\examples\basic 中的例子测试一下
将Sender.java和Receiver.java? copy到工程当中去,带参数queue1运行Sender可以看到发送成功,然后带参数queue1运行Receiver可以看到接收到了消息,至此验证完毕。(注:这里之所以都带参数queue1运行程序,是因为在默认的配置中(%openjms_home%\config\openjms.xml),配置了目的地queue1)


4-2、第二种测试方法
cd %openjms_home%\examples\basic
build.bat(执行)
这个是讲目录中的java文件编译为class文件
1)run.bat Sender queue1
2)run.bat Receiver queue1
这个是调用发送和接受方法进行消息的传递
如果整个过程没有报错,你会看到对应的结果


?

1 楼 diggywang 2010-12-14   OpenJMS社区活跃程度、关注度、产品使用程度都远远没有ActiveMQ那么广泛。 2 楼 nick.s.ni 2010-12-15   glassFish用的是这个,还可以,只是netbeans的教程里没有远端client访问server jms 的方法,还是需要看OpenJms。
而OpenJms里的说明又不包含glassFish集成的方式。从Server和Client访问有差异。 3 楼 zelsa 2010-12-15   nick.s.ni 写道glassFish用的是这个,还可以,只是netbeans的教程里没有远端client访问server jms 的方法,还是需要看OpenJms。
而OpenJms里的说明又不包含glassFish集成的方式。从Server和Client访问有差异。
GlassFish用的是OpenMQ 4 楼 asialee 2010-12-15   是的,glassfish使用的是OpenMQ,还挺不错的。 5 楼 solomon 2011-01-25     已经做的项目用的是 ACTIVEMQ ,从介绍来看,这个管理功能不错。

热点排行