1、JBOSS数据库配置大全JBOSS数据库配置大全Jboss 4.0的开发人员版本是一个开源的应用服务器, 他把HypersonicDB作为他的缺省数据库。然而,开发人员 也许还要使用除了 HypersonicDB以外其他种类的数据库, 在这篇文章中我们将看到如何在 Jboss上配置使用其他的数据库。简介Jboss4.0使用了 JDBC配置文件来配置数据库连接, 它为EJB和其它J2EE应用提供了数据源(data source)进行访 问。如果你要使用 HypersonicDB以外的数据库你就要修改 这雠渲梦募 U馄 恼陆 胖亟步庀旅娴募父霾糠郑 ?BRJboss的EJB部署描述符Oralce数
2、据库的配置MySQL数据库的配置Sysbase数据库的配置DB2数据库的配置Infomix数据库的配置Jboss的EJB部署描述符standardjaws.xml (位于 X:jboss4serverdefaultconf ) 是一个映射CMP实体EJB的标准部署描述文件。它用于配 置CMP实体EJB,你也可以使用jaws.xml代替。你可以把 这个文件 copy 到 ejb .jar 文件中的 META-INF 目录下。这个 文件用于描述下面的信息:描述一个数据源和映射类型。描述 EJB 映射的表描述 EJB 的 finder 方法描述类型映射这里的数据源描述的是一个 JNDI 名称,可以通
3、过这个 JNDI 来获得一个数据源连接池。 Jboss4 缺省的数据源使用 的是 HypersonicDB 。如果使用其他的数据源你需要修改 jaws.xml 文件。standardjbosscmp-jdbc.xml (位于 X:jboss4serverdefaultconf )是配置 Jboss CMP 容器的标 准部署描述文件,你也可以使用一个自定义的配置文件 -jbosscmp-jdbc.xml 来代替它。这个文件也放在 EJB.jar 文 件的 META-INF 目录中。 缺省使用的还是 HypersonicDB 作 为数据库,这里也需要修改。Oracle 数据库的配置Oracle 以
4、它的运行稳定和可靠成为了一个非常受欢迎 的企业级数据库。要在 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 文件复制到 /serv
5、er/default/deploy 目录下。下一步,我们需要修改 oracle-de.xml配置文件。其中的v driver-class/ 标签和v connection-url/ 标签的设置如下: Oracle OCI Type 2 DriverClass: oracle.jdbc.driver.OracleDriverURL: jdbc:oracle:oci8: v database Oracle OCI Thin Type 4 DriverClass: oracle.jdbc.driver.OracleDriverURL: jdbc:oracle:thin: v host : v por
6、t : v database Oracle OCI XA Type 2 DriverClass: oracle.jdbc.xa.client.OracleXADataSourceURL: jdbc:oracle:thin: v host : v port : v database Oracle OCI Type 2 DriverClass: oracle.jdbc.driver.OracleDriverURL: jdbc:oracle:oci8: v database 在Connection URL 中v host 是安装 Oracle的计算机 主机名,v port 是oracle数据库的端口
7、,v database 是 数据库名称。下一步,我们将修改 standardjaws.xml 或 jaws.xml 配置文件,并把v datasource 和 vtype-mapping 元素这只为下面这样:v jaws v datasource java:/OracleDS v /datasource v type-mapping Oracle8 v /type-mapping v /jaws 下一步,再修改 standardjbosscmp-jdbc.xml 或 jbosscmp-jdbc.xml 配置文件,设置v datasource 和 v datasource-mapping 元素使
8、用 Oracle 。v jbosscmp-jdbc v defaults v datasource java:/OracleDS v /datasource v datasource-mapping Oracle8 v /datasource-mappingv /defaults v /jbosscmp-jdbc 最后我们需要修改 login-config.xml 文件来使用 Oracle , 下面是 login-config.xml 文件的v application-policy 元素:v application-policy name = OracleDbRealm v authentic
9、ation v login-module code =org.jboss.resource.security.ConfiguredIdentityLoginModul e flag = required sa v /module-option sa vv /module-option v module-option name = principal v module-option name = userName /module-option v module-option name = password v module-option name =managedConnectionFactor
10、yName jboss.jca:service=LocalTxCM,name=OracleDSv /module-option v /login-module v /authentication v /application-policy 修改了 oracle-ds.xml, standardjaws.xml, standardjbosscmp-jdbc.xml, 和 login-config.xml 文件之后就可以再 Jboss4 中使用 Oracle 了。MySQL 数据库配置MySQL 是一个开放源代码的数据库,有很多开源项目 和小型的社团都在使用它。要在 Jboss4 中使用 MySQ
11、L 的 话首先要把 MySQL 的 JDBC 驱动放到 CLASSPATH 中。同 样,把它复制到 /server/default/lib 目录下,再把 /docs/examples/jca/mysql-ds.xml 复制到 /server/default/deploy 目录下。修改 mysql-ds.xml 文件,设 置v driver-class/ 为 com.mysql.jdbc.Driver 再把v connection-url/ 设置为jdbc:mysql: v mysqlhost / v database ,其中 v mysqlhost 是数据库主机名v database 是数据库
12、名。 然后需要设置 standardjaws.xml 或 jaws.xml文件的v datasource 和元素:v jaws v datasource java:/MySqlDS v /datasource v type-mapping mySql v /type-mapping v /jaws 同样也需要把 standardjbosscmp-jdbc.xml 或 jbosscmp-jdbc.xml 文件的v datasource 和 v datasource-mapping 元素设置为下面这样:v jbosscmp-jdbc v defaults v datasource java:/My
13、SqlDS v /datasource v datasource-mapping mySql v /datasource-mapping v /defaults v /jbosscmp-jdbc 最后再修改 login-config.xml 文件来使用 MySQL :v application-policy name = MySqlDbRealm v authentication v login-module code =org.jboss.resource.security.ConfiguredIdentityLoginModul e flag = required sa v /module
14、-option sa v /module-optionv /module-option v module-option name =principal v module-option name =userNamev module-option name =passwordv module-option name=managedConnectionFactoryName jboss.jca:service=LocalTxCM,name=MySqlDS v /module-option v /login-module v /authentication v /application-policy
15、修改了 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 复
16、制到 /server/default/deploy 目录下。修改 sybase-ds.xml 文件把v driver-class/ 设置为 com.sybase.jdbc2.jdbc.SybDriver 再把 v connection-url/ 设置为 jdbc:sybase:Tds: v host : v port /v database ,其中 v host v port v database 分别为主机名、端口名和数据库名。同样需要修改 standardjaws.xml 或 jaws.xml 文件的 v datasource 和 v type-mapping 元素:v jaws v da
17、tasource java:/SybaseDS v /datasource v type-mapping Sybase v /type-mapping v /jaws 再修改 standardjbosscmp-jdbc.xml 或jbosscmp-jdbc.xml 文件的 v datasource 和 v datasource-mapping 元素:v jbosscmp-jdbc v defaults v datasource java:/SybaseDS v /datasource v datasource-mapping Sybase v /datasource-mapping v /de
18、faults v /jbosscmp-jdbc 最后修改 login-config.xml 文件来使用 Sysbase 数据库 . 设置 v application-policy/ 元素:v application-policy name = SybaseDbRealm v authentication v login-module code =org.jboss.resource.security.ConfiguredIdentityLoginModul eflag = required vmodule-option name =principal sav /module-optionv m
19、odule-option name = userName sa vv /module-option /module-option v module-option name = passwordv module-option name = managedConnectionFactoryName jboss.jca:service=LocalTxCM,name=SybaseDS v /module-option v /login-module v /authentication v /application-policy 修改了 sybase-ds.xml, standardjaws.xml,
20、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 目录下,然后修改v driver-class/ 元素位 COM.i
21、bm.db2.jdbc.app.DB2Driver , v connection-url/ 元素为 jdbc:db2:其中的v database 元 素代表数据库服务名。v jaws v datasource java:/DB2DS v /datasource v type-mapping DB2 v/type-mapping v /jaws 下面是相应的 standardjbosscmp-jdbc.xml ( 或 jbosscmp-jdbc.xml) 文件 :v jbosscmp-jdbc v defaults v datasource java:/DB2DS v /datasource v
22、 datasource-mapping DB2 v /datasource-mappingv /defaults v /jbosscmp-jdbc 最后在 login-config.xml 文件中加上下面的内容:v application-policy name = DB2DbRealm v authentication v login-module code =org.jboss.resource.security.ConfiguredIdentityLoginModul e flag = required v module-option name =principal sa v /modu
23、le-option v module-option name =userName sa v /module-option v module-option name =password v /module-option v module-option name=managedConnectionFactoryName jboss.jca:service=LocalTxCM,name=DB2DS v /module-option v /login-module v /authentication v /application-policy 完成上面的配置就可以在 Jboss 上使用 DB2 了In
24、formix 数据库配置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 文件。driver-class/ 元素设置为:com.informix.jdbcf
25、xDriver 把v connection-url/ 元素设置为jdbc:informix-sqli: v host : v port :informixserver= v ifx_server ,其中,v host , v port , v ifx_server 分别代表数据库主机 名、数据库端口和数据库服务名。 然后修改 standardjaws.xml 或 jaws.xml 文件的v datasource 和 v type-mapping 元素:v post v jaws v datasource java:/lnformixDS v /datasource v type-mapping
26、 InformixDB v /type-mapping v /jaws 把 standardjbosscmp-jdbc.xml 或 jbosscmp-jdbc.xml 文件中的 v datasource 和 v datasource-mapping 元 素设置为下面这样:v jbosscmp-jdbc v defaults v datasource java:/lnformixDS v /datasource v datasource-mapping InformixDB v/datasource-mapping v /defaults v /jbosscmp-jdbc 最后在login-co
27、nfig.xml 文件中加入v application-policy/ 元素:v application-policy name = InformixDbRealm v authentication v login-module code =org.jboss.resource.security.ConfiguredIdentityLoginModul e sa v /module-optionflag = required v module-option name = principal vmodule-option name = userName savv /module-option/m
28、odule-option v module-option name = password v module-option name =managedConnectionFactoryName jboss.jca:service=LocalTxCM,name=InformixDS v /module-option v /login-module v /authentication v /application-policy 这样,你就可以在 Jboss4 中使用 Informix 数据库了。 结论Jboss4 默认情况下使用的是 Hypersonic 数据库,但如 你所见我们只要简单的修改几个配置文件就可以使用市面 上流行的其他数据库了。