JBOSS管理数据库连接

一、普通JDBC方式:

    static final String DB_DRIVER_CLASS = "com.mysql.jdbc.Driver";
static final String DB_URL =
"mysql://localhost:3306/JBossatWorkDB?autoReconnect=true";

Connection connection = null;

try {
// Load the Driver.
Class.forName(DB_DRIVER_CLASS).newInstance( );

// Connect to the database.
connection = DriverManager.getConnection(DB_URL);

} catch (SQLException se) {
...
} catch (...) {
...
}

二、通过JBOSS管理
1、配置文件jaw-ds.xml
<datasources>
<local-tx-datasource>
<jndi-name>JBossAtWorkDS</jndi-name>
<connection-url>jdbc:hsqldb:hsql://localhost:1701</connection-url>
<driver-class>org.hsqldb.jdbcDriver</driver-class>
<user-name>sa</user-name>
<password></password>
<min-pool-size>5</min-pool-size>
<max-pool-size>20</max-pool-size>
<idle-timeout-minutes>0</idle-timeout-minutes>
<track-statements/>
<metadata>
<type-mapping>Hypersonic SQL</type-mapping>
</metadata>
<depends>jboss:service=Hypersonic-JAW,database=jawdb</depends>
</local-tx-datasource>
.......

2、JNDI查寻器ServiceLocator.java:
package com.jbossatwork.util;

import javax.naming.*;
import javax.sql.*;

public class ServiceLocator {
private ServiceLocator( ) { }

public static DataSource getDataSource(String dataSourceJndiName)
throws ServiceLocatorException {

DataSource dataSource = null;
try {
Context ctx = new InitialContext( );
dataSource = (DataSource) ctx.lookup(dataSourceJndiName);

} catch (ClassCastException cce) {
throw new ServiceLocatorException(cce);
} catch (NamingException ne) {
throw new ServiceLocatorException(ne);
}
return dataSource;
}
}

3、通过JBOSS连接:

static final String DATA_SOURCE= "java:comp/env/jdbc/JBossAtWorkDS"; DataSource dataSource = null; Connection conn = null; try { // Load the Driver. dataSource = ServiceLocator.getDataSource(DATA_SOURCE); // Connect to the database. conn = dataSource.getConnection( ); } catch (SQLException se) { ... } catch (ServiceLocatorException sle) { ... }

 

转载于:https://www.cnblogs.com/beta2013/archive/2009/02/26/3377369.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值