Jboss数据源的配置
Jboss 有一个默认的数据源 DefaultDS ,他使用 Jboss 内置的 HSQLDB 数据库。实际应用中你可能使用不同的数据库,如 MySql 、 MsSqlServer 、 Oracle 等。各种数据库的数据源配置模版你可以在 [Jboss 安装目录 ]\docs\examples\jca 目录中找到,默认名称为:数据库名 + -ds.xml 。不管你使用那种数据库都需要把他的驱动类 Jar 包放置在 [Jboss 安装目录 ]\server\default\lib 目录下,放置后需要启动 Jboss 服务器。
本实例使用的数据库是 mysql- 5.0.22 和 Ms Sql Server2000 ,使用驱动 Jar 包如下:
Mysql : mysql-connector-java- 3.1.13 -bin.jar Ms Sql Server2000 : msbase.jar, mssqlserver.jar, msutil.jar 。
下面介绍 Mysql 和 Ms Sql Server2000 的数据源配置,数据源配置文件的取名格式必须为 xxx–ds.xml , 如 :mysql-ds.xml , mssqlserver-ds.xml , oracle-ds.xml 。
数据源文件配置好后需要放置在 [jboss 安装目录 ]/server/ config-name /deploy 目录下 , 本教程采用的配置名为: default , 所以路径为 [jboss 安装目录 ]/server/default/deploy 目录
MySql 数据源的配置
下面定义一个名为 DefaultMySqlDS 的 Mysql 数据源,连接数据库为 zhaosoft ,数据库登录用户名为 root ,密码为 admin ,数据库驱动类为 org.gjt.mm.mysql.Driver 。大家只需修改数据库名及登录用户名密码就可以直接使用。
mysql-ds.xml
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<jndi-name>zhaosoft</jndi-name>
<connection-url>jdbc:mysql://localhost:3306/foshanshop?useUnicode=true&characterEncoding=GBK
</connection-url>
<driver-class>org.gjt.mm.mysql.Driver</driver-class>
<user-name>root</user-name>
<password>admin</password>
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter
</exception-sorter-class-name>
<metadata>
<type-mapping>mySQL</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>
Ms Sql Server2000 数据源的配置
下面定义一个名为 MSSQLDS 的 Ms Sql Server 数据源,连接数据库为 foshanshop ,数据库登录用户名为 sa ,密码为 sa ,数据库驱动类为 com.microsoft.jdbc.sqlserver.SQLServerDriver 。大家只需修改数据库名及登录用户名、密码就可以直接使用。
mssqlserver-ds.xml
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<jndi-name>zhaosoft</jndi-name>
<connection-url>jdbc:microsoft:sqlserver:// localhost:1433;DatabaseName=foshanshop </connection-url>
<driver-class>com.microsoft.jdbc.sqlserver.SQLServerDriver</driver-class>
<user-name>sa</user-name>
<password>sa</password>
<metadata>
<type-mapping>MS SQLSERVER2000</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>
Oralce9i 数据源的配置
下面定义一个名为 OracleDS 的 Oracle9i 数据源,连接数据库为 FS ,数据库登录用户名为 root ,密码为 admin , 数据库驱动类为 oracle.jdbc.driver.OracleDriver 。大家只需修改数据库名及登录用户名密码就可以直接使用。
oracle-ds.xml
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<jndi-name>zhaosoft</jndi-name>
<connection-url>jdbc:oracle:thin:@nd:1521:FS</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>root</user-name>
<password>admin</password>
<SetBigStringTryClob>true</SetBigStringTryClob>
<exception-sorter-class-name>
org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
<metadata>
<type-mapping>Oracle9i</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>
数据源发布后,你可以在 http://localhost:8080/jmx-console/ 找到他,如下图:
你可以点击 name=DefaultMySqlDS,service=ManagedConnectionPool 进入连接池属性修改界面。其中 MaxSize 属性指定了最大连接数, InUseConnectionCount 代表目前正在使用的连接数,一旦 InUseConnectionCount 大于 MaxSize ,数据库连接将会报错,这种情况一般都是因为手工操作 jdbc ,在使用完后没有立刻释放掉连接引起的。