1.直接JDBC获取
2.采用配置数据源,通过命令服务JNDI获取
针对第一种方式,代码形式如下:
public class DBConnection{
private static String url="jdbc:sqlserver://localhost:1433;databaseName=MailBox";
private static String driver="com.microsoft.sqlserver.jdbc.SQLServerDriver";
private static String username="sa";
private static String password="wsh";
private static Connection conn;
static{
try {
Class.forName(driver);
} catch (ClassNotFoundException e) { e.printStackTrace(); }
}
public static Connection getconn(){
try {
conn=DriverManager.getConnection(url,username,password);
} catch (SQLException e) { e.printStackTrace(); }
return conn;
}
针对第二种方式,以TOMCAT6配置方式为例
第一步,在tomcate/conf/context下面加入以下资源定义标签,包含JNDI命名,授权,类型,数据库驱动类,数据库连接路径,帐号,密码,最大活动数,最小空闲数,最大等待数等信息
<Resource name="jdbc/mydb"
auth="Container"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@localhost:1521:mydb"
username="bmgis"
password="bmgis"
maxActive="100"
maxIdle="30"
maxWait="10000" />
第二步,在web.xml下配置资源定义指定的位置,JNDI名必须与之前定义的JNDI名保持一致!
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/mydb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
第三步,调用获取
创建上下文
Context initContext = new InitialContext();
获取数据源
DataSource ds = (DataSource)envContext.lookup("java:/comp/env/jdbc/mydb");
最后获取数据库连接
Connection conn = ds.getConnection();
注:Tomcat5.x,配置数据源方式与TOMCAT6有些不一样!