网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>JAVA>>新手入门>>基础入门>查看文档  
  jboss4中对各类数据库的数据源配置大全     
  文章作者:未知  文章来源:赛迪网技术社区  
  查看:71次  录入:管理员--2007-11-16  
 

jboss 4.0的开发人员版本是一个开源的应用服务器,他把hypersonicdb作为他的缺省数据库。然而,开发人员也许还要使用除了hypersonicdb以外其他种类的数据库,在这篇文章中我们将看到如何在jboss上配置使用其他的数据库。

简介

jboss4.0使用了jdbc配置文件来配置数据库连接,它为ejb和其它j2ee应用提供了数据源(data source)进行访问。如果你要使用hypersonicdb以外的数据库你就要修改这个配置文件。这篇文章将着重讲解下面的几个部分:

jboss的ejb部署描述符

oralce数据库的配置

mysql数据库的配置

sysbase数据库的配置

db2数据库的配置

infomix数据库的配置

jboss的ejb部署描述符

standardjaws.xml (位于x:\jboss4\server\default\conf)是一个映射cmp 实体ejb的标准部署描述文件。它用于配置cmp实体ejb,你也可以使用jaws.xml代替。你可以把这个文件copy到ejb .jar文件中的meta-inf目录下。这个文件用于描述下面的信息:

描述一个数据源和映射类型。

描述ejb映射的表

描述ejb的finder方法

描述类型映射

这里的数据源描述的是一个jndi名称,可以通过这个jndi来获得一个数据源连接池。jboss4缺省的数据源使用的是hypersonicdb。如果使用其他的数据源你需要修改jaws.xml文件。

standardjbosscmp-jdbc.xml(位于x:\jboss4\server\default\conf)是配置jboss cmp容器的标准部署描述文件,你也可以使用一个自定义的配置文件--jbosscmp-jdbc.xml来代替它。这个文件也放在ejb.jar文件的 meta-inf目录中。缺省使用的还是hypersonicdb作为数据库,这里也需要修改。

oracle数据库的配置

oracle以它的运行稳定和可靠成为了一个非常受欢迎的企业级数据库。要在jboss 上配置使用oracle的话我们要做的第一件事就是把oracle的jdbc驱动程序复制到classpath下。我们把这个jdbc驱动程序复制到 server/default/lib目录下。为了使用oracle的事务处理数据源我们还要把/docs/examples/jca/oracle- xa-ds.xml复制到/server/default/deploy目录下。如果使用的事非事务处理的数据源,就把 /docs/examples/jca/oracle-ds.xml文件复制到/server/default/deploy目录下。

下一步,我们需要修改oracle-de.xml配置文件。其中的标签和标签的设置如下:

oracle oci type 2 driver
  class: oracle.jdbc.driver.oracledriver 
  url: jdbc:oracle:oci8:@<database> 
  oracle oci thin type 4 driver
  class: oracle.jdbc.driver.oracledriver 
  url: jdbc:oracle:thin:@<host>:<port>:<database> 
  oracle oci xa type 2 driver
  class: oracle.jdbc.xa.client.oraclexadatasource 
  url: jdbc:oracle:thin:@<host>:<port>:<database> 
  oracle oci type 2 driver
  class: oracle.jdbc.driver.oracledriver 
  url: jdbc:oracle:oci8:@<database> 
    在connection
  

url中是安装oracle的计算机主机名,是oracle数据库的端口,是数据库名称。下一步,我们将修改standardjaws.xml 或jaws.xml配置文件,并把 和 元素这只为下面这样:

<jaws>
    <datasource>java:/oracleds</datasource>
    <type-mapping>oracle8</type-mapping>
  </jaws>
  

下一步,再修改standardjbosscmp-jdbc.xml 或 jbosscmp-jdbc.xml配置文件,设置 和 元素使用oracle。

<jbosscmp-jdbc>
    <defaults>
     <datasource>java:/oracleds</datasource>
     <datasource-mapping>oracle8</datasource-mapping>
    </defaults>
  </jbosscmp-jdbc>
  

最后我们需要修改login-config.xml文件来使用oracle,下面是login-config.xml文件的元素:

<application-policy name = "oracledbrealm"> 
    <authentication> 
     <login-module code = 
   "org.jboss.resource.security.configuredidentityloginmodule" 
                flag = "required"> 
       <module-option name = "principal">sa</module-option> 
       <module-option name = "username">sa</module-option> 
       <module-option name = "password"></module-option> 
       <module-option name ="managedconnectionfactoryname"> 
            jboss.jca:service=localtxcm,name=oracleds 
       </module-option> 
     </login-module> 
    </authentication> 
  </application-policy>
  

修改了oracle-ds.xml, standardjaws.xml, standardjbosscmp-jdbc.xml,和login-config.xml 文件之后就可以再jboss4中使用oracle了。

mysql数据库配置

mysql是一个开放源代码的数据库,有很多开源项目和小型的社团都在使用它。要在jboss4中使用mysql的话首先要把mysql的jdbc驱动放到classpath中。同样,把它复制到/server/default/lib目录下,再把/docs/examples/jca/mysql- ds.xml复制到/server/default/deploy目录下。修改mysql-ds.xml文件,设置为 com.mysql.jdbc.driver再把设置为jdbc:mysql:///,其中是数据库主机名是数据库名。 然后需要设置standardjaws.xml 或 jaws.xml文件的和元素:

<jaws>
   <datasource>java:/mysqlds</datasource> 
   <type-mapping>mysql</type-mapping>
  </jaws>
  

同样也需要把standardjbosscmp-jdbc.xml 或 jbosscmp-jdbc.xml文件的 和 元素设置为下面这样:

<jbosscmp-jdbc>
    <defaults>
      <datasource>java:/mysqlds</datasource>
      <datasource-mapping>mysql</datasource-mapping>
   </defaults>
  </jbosscmp-jdbc>
  

最后再修改login-config.xml文件来使用mysql:

<application-policy name = "mysqldbrealm"> 
    <authentication> 
     <login-module code = 
   "org.jboss.resource.security.configuredidentityloginmodule" 
                flag = "required"> 
       <module-option name ="principal">sa</module-option> 
       <module-option name ="username">sa</module-option> 
       <module-option name ="password"></module-option> 
       <module-option name ="managedconnectionfactoryname"> 
        jboss.jca:service=localtxcm,name=mysqlds 
       </module-option> 
     </login-module> 
    </authentication> 
  </application-policy>
  

修改了mysql-ds.xml, standardjaws.xml, standardjbosscmp-jdbc.xml,和 login-config.xml 文件就可以在jboss上使用mysql了。

sysbase数据库配置

sybase adaptive server enterprises(ase)是sysbase公司的数据库服务器。ase可以在unix和linux平台上使用。同样我们要把它的数据库驱动放到 classpath中,把它复制到/server/default/lib目录下,然后把/docs/examples/jca/sybase- ds.xml 复制到/server/default/deploy目录下。修改sybase-ds.xml文件把设置为 com.sybase.jdbc2.jdbc.sybdriver再把设置为 jdbc:sybase:tds::/,其中分别为主机名、端口名和数据库名。同样需要修改standardjaws.xml 或 jaws.xml 文件的 和 元素:

<jaws>
   <datasource>java:/sybaseds</datasource>
   <type-mapping>sybase</type-mapping>
  </jaws>
  

再修改standardjbosscmp-jdbc.xml 或 jbosscmp-jdbc.xml 文件的 和 元素:

<jbosscmp-jdbc>
    <defaults>
     <datasource>java:/sybaseds</datasource>
     <datasource-mapping>sybase</datasource-mapping>
    </defaults>
  </jbosscmp-jdbc>
  

最后修改login-config.xml 文件来使用sysbase数据库.设置 元素:

  <application-policy name = "sybasedbrealm"> 
    <authentication> 
     <login-module code = 
   "org.jboss.resource.security.configuredidentityloginmodule" 
                flag = "required"> 
       <module-option name ="principal">sa</module-option> 
       <module-option name = "username">sa</module-option> 
       <module-option name = "password"></module-option> 
       <module-option name = "managedconnectionfactoryname"> 
            jboss.jca:service=localtxcm,name=sybaseds 
       </module-option> 
     </login-module> 
    </authentication> 
  </application-policy>
  

修改了sybase-ds.xml, standardjaws.xml, standardjbosscmp-jdbc.xml, 和login-config.xml文件后就可以在jboss中使用sysbase了。

db2数据库配置

ibm的db2是一个完善、使用方便的数据库服务器,它可以在linux,unix和windows平台上使用。在jboss4上使用db2只要把 db2java.zip复制到/server/default/lib目录下。然后复制/docs/examples/jca/db2-ds.xml到 /server/default/deploy目录下,然后修改 元素位 com.ibm.db2.jdbc.app.db2driver , 元素为 jdbc:db2:其中的元素代表数据库服务名。

       java:/db2ds     db2   
  

下面是相应的 standardjbosscmp-jdbc.xml (或 jbosscmp-jdbc.xml)文件:

  <jbosscmp-jdbc>
    <defaults>
     <datasource>java:/db2ds</datasource>
     <datasource-mapping>db2</datasource-mapping>
    </defaults>
  </jbosscmp-jdbc>
  

最后在login-config.xml文件中加上下面的内容:

  <application-policy name = "db2dbrealm"> 
    <authentication> 
     <login-module code = 
   "org.jboss.resource.security.configuredidentityloginmodule"
                flag = "required"> 
       <module-option name = 
  "principal">sa</module-option>
       <module-option name = 
  "username">sa</module-option> 
       <module-option name = 
  "password"></module-option> 
       <module-option name ="managedconnectionfactoryname"> 
            jboss.jca:service=localtxcm,name=db2ds 
       </module-option> 
     </login-module> 
    </authentication> 
  </application-policy>
  

完成上面的配置就可以在jboss上使用db2了

informix 数据库配置

ibm的infoxmix数据库服务器用于作为数据仓库、分析和报告。在jboss4上使用informix数据库,首先要把它相应的数据库jdbc驱动复制到/server/default/lib目录下,然后,把/docs/examples/jca/informix-ds.xml 复制到 /server/default/deploy目录下,如果你使用的是事务的(xa)jdbc就复制那个 /docs/examples/jca/informix-xa-ds.xml文件。

下一步要作的就是修改这个informix-ds.xml文件,把元素设置为:com.informix.jdbc.ifxdriver把元素设置为jdbc:informix-sqli://::informixserver=, 其中,,,分别代表数据库主机名、数据库端口和数据库服务名。然后修改standardjaws.xml 或 jaws.xml文件的 和 元素:

  <post>
  <jaws>
    <datasource>java:/informixds</datasource>
    <type-mapping>informixdb</type-mapping>
  </jaws>
  

把standardjbosscmp-jdbc.xml 或 jbosscmp-jdbc.xml文件中的 和 元素设置为下面这样:

  <jbosscmp-jdbc>
    <defaults>
     <datasource>java:/informixds</datasource>
     <datasource-mapping>informixdb</datasource-mapping>
    </defaults>
  </jbosscmp-jdbc>
  

最后在login-config.xml文件中加入元素:

  <application-policy name = "informixdbrealm"> 
    <authentication> 
    <login-module code = 
    "org.jboss.resource.security.configuredidentityloginmodule" 
                flag = "required"> 
       <module-option name = "principal">sa</module-option>
       <module-option name = "username">sa</module-option> 
       <module-option name = "password"></module-option> 
       <module-option name ="managedconnectionfactoryname"> 
        jboss.jca:service=localtxcm,name=informixds 
       </module-option> 
     </login-module> 
    </authentication> 
  </application-policy>
  

这样,你就可以在jboss4中使用informix数据库了。

结论

jboss4默认情况下使用的是hypersonic数据库,但如你所见我们只要简单的修改几个配置文件就可以使用市面上流行的其他数据库了。

 
 
上一篇: 基于web2.0的ajax十大安全漏洞以及成因    下一篇: spring+hibernate+struts优势地位凸显
  相关文档
hibernate投入jboss怀抱 11-17
[webservices]xfire web服务的单元测试 11-17
java 库的建立方法及其实例(1) 11-17
java智能卡基础篇 11-17
使用netbeans 的五大理由 11-17
javaserver pages second edition 11-17
mini java编译器(一)——任务概述 11-17
一个体现java接口及工厂模式优点的例子 11-17
java抽取word,pdf的四种武器 11-17
java的多功能运算符 11-17
基础:关于ejb返回值的最好的解决方案 12-28
jbi-java 实现 soa 的标准途径 11-17
tomcat深入??内部结构描述 11-17
jsp高级编程5 11-17
jsp语法手册 11-17
让自己学会写的一个在线升级的程序 11-17
使用game api函数制作二维动作游戏 11-16
setutchours 方法 11-16
用javabean数据组件集成jsf应用程序与ejb(3) 11-17
全面保护你的java程序安全 11-16
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
技术电话:13616026886
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息