oracle-JDBC连接池设置
在tomcat下创建 context.xml文件 配置 JDBC链接
context.xml
 代码
代码<?xml version="1.0" encoding="UTF-8"?>
<Context path="/">
<Resource name="jdbc/appDs" factory="org.apache.commons.dbcp.BasicDataSourceFactory"
auth="Container"
type="javax.sql.DataSource"
username="xxx"
password="xxxxxx"
driverClassName="oracle.jdbc.OracleDriver"
url="jdbc:oracle:thin:@(xxxx)"
maxActive="100"
maxIdle="30"
validationQuery="select 1 from dual"
maxWait="5000"/>
<!--name:DataSource的名称-->
<!--type:数据源对应的java类型,一般设计为javax.sql.DataSource-->
<!--username:数据库登陆名-->
<!--password:数据库登陆密码-->
<!--driverClassName:指定数据库JDBC驱动程序-->
<!--url:指定数据库的URL-->
<!--maxIdle:连接池处于空闲状态的数据库连接的最大数目,取0表示不受限制-->
<!--maxWait:连接池中数据库连接处于空闲状态的最长时间(以毫秒为单位),取0表示无限制等待时间-->
<!--maxActive:连接池处于活动状态的数据库连接的最大数目,去0表示不受限制-->
</Context>
<Context path="/">
<Resource name="jdbc/appDs" factory="org.apache.commons.dbcp.BasicDataSourceFactory"
auth="Container"
type="javax.sql.DataSource"
username="xxx"
password="xxxxxx"
driverClassName="oracle.jdbc.OracleDriver"
url="jdbc:oracle:thin:@(xxxx)"
maxActive="100"
maxIdle="30"
validationQuery="select 1 from dual"
maxWait="5000"/>
<!--name:DataSource的名称-->
<!--type:数据源对应的java类型,一般设计为javax.sql.DataSource-->
<!--username:数据库登陆名-->
<!--password:数据库登陆密码-->
<!--driverClassName:指定数据库JDBC驱动程序-->
<!--url:指定数据库的URL-->
<!--maxIdle:连接池处于空闲状态的数据库连接的最大数目,取0表示不受限制-->
<!--maxWait:连接池中数据库连接处于空闲状态的最长时间(以毫秒为单位),取0表示无限制等待时间-->
<!--maxActive:连接池处于活动状态的数据库连接的最大数目,去0表示不受限制-->
</Context>
调用实例
 代码
代码 1 //tomcat启动时会自动建立数据源xxxxx
2
3 //说明:应用tomcat5.5以上的版本
4
5 //获得连接对象如下:
6
7 package com.datasource;
8
9 import java.sql.Connection;
10 import java.sql.SQLException;
11
12 import javax.naming.*;
13 import javax.sql.DataSource;
14
15 public class Conn
16 {
17 public Connection getConn() throws SQLException
18 {
19 DataSource ds = null;
20 try {
21 Context ctx = new InitialContext();
22 ds = (DataSource)ctx.lookup("java:comp/env/myDS");
23 } catch (Exception e) {
24 e.printStackTrace();
25 }
26 return ds.getConnection();
27 }
28 }
2
3 //说明:应用tomcat5.5以上的版本
4
5 //获得连接对象如下:
6
7 package com.datasource;
8
9 import java.sql.Connection;
10 import java.sql.SQLException;
11
12 import javax.naming.*;
13 import javax.sql.DataSource;
14
15 public class Conn
16 {
17 public Connection getConn() throws SQLException
18 {
19 DataSource ds = null;
20 try {
21 Context ctx = new InitialContext();
22 ds = (DataSource)ctx.lookup("java:comp/env/myDS");
23 } catch (Exception e) {
24 e.printStackTrace();
25 }
26 return ds.getConnection();
27 }
28 }
测试代码
 代码
代码 1 //测试如下:
2
3 import java.io.IOException;
4 import java.sql.Connection;
5 import java.sql.ResultSet;
6 import java.sql.SQLException;
7 import java.sql.Statement;
8
9 import javax.servlet.ServletException;
10 import javax.servlet.http.HttpServlet;
11 import javax.servlet.http.HttpServletRequest;
12 import javax.servlet.http.HttpServletResponse;
13
14 import com.datasource.Conn;
15
16 public class Get extends HttpServlet {
17
18
19 public void doGet(HttpServletRequest request, HttpServletResponse response)
20 throws ServletException, IOException {
21
22 this.doPost(request, response);
23 }
24
25
26 public void doPost(HttpServletRequest request, HttpServletResponse response)
27 throws ServletException, IOException {
28 Conn conn = new Conn();
29 try {
30 Connection c = conn.getConn();
31 Statement st = c.createStatement();
32 ResultSet rs = st.executeQuery("select * from student");
33 while(rs.next()) {
34 System.out.println(rs.getInt(1));
35 System.out.println(rs.getString("name"));
36 }
37 } catch (SQLException e) {
38 e.printStackTrace();
39 }
40
41 }
42
43 }
2
3 import java.io.IOException;
4 import java.sql.Connection;
5 import java.sql.ResultSet;
6 import java.sql.SQLException;
7 import java.sql.Statement;
8
9 import javax.servlet.ServletException;
10 import javax.servlet.http.HttpServlet;
11 import javax.servlet.http.HttpServletRequest;
12 import javax.servlet.http.HttpServletResponse;
13
14 import com.datasource.Conn;
15
16 public class Get extends HttpServlet {
17
18
19 public void doGet(HttpServletRequest request, HttpServletResponse response)
20 throws ServletException, IOException {
21
22 this.doPost(request, response);
23 }
24
25
26 public void doPost(HttpServletRequest request, HttpServletResponse response)
27 throws ServletException, IOException {
28 Conn conn = new Conn();
29 try {
30 Connection c = conn.getConn();
31 Statement st = c.createStatement();
32 ResultSet rs = st.executeQuery("select * from student");
33 while(rs.next()) {
34 System.out.println(rs.getInt(1));
35 System.out.println(rs.getString("name"));
36 }
37 } catch (SQLException e) {
38 e.printStackTrace();
39 }
40
41 }
42
43 }
 
                    
                     
                    
                 
                    
                
 

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号