| 
				
				
					|  |  
					|  |  
					
				 
					|  |  
					|   |  
					|  |  
					|  |  
					|  |  
					|  |  
					|  |  
					|  |  
					|  |  
					|  |  
					|  |  
					| 
							
								| 6만원 이상 무료배송 |  
								|  |  
								| 주문하시는 총상품금액의 합계가
 6만원 이상일 경우
 택배비가 무료입니다.
 |  |  
					|  |  
					|  |  |  | 
	
		|  |  
		|  |  
		|  
				
					| [JAVA] DBCP Example (BasicDataSourceExample.java) |  |  
		|  |  
		|  
				
					| 작성자: 
						
							어라
						
						  
						
							작성일: 2009-07-07 09:38  
						
						조회: 13438  
						댓글: 0 |  |  
		|  |  
		| 
				
					| /* * Copyright 1999-2004 The Apache Software Foundation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
 
 import javax.sql.DataSource;
 import java.sql.Connection;
 import java.sql.Statement;
 import java.sql.ResultSet;
 import java.sql.SQLException;
 
 //
 // Here are the dbcp-specific classes.
 // Note that they are only used in the setupDataSource
 // method. In normal use, your classes interact
 // only with the standard JDBC API
 //
 import org.apache.commons.dbcp.BasicDataSource;
 
 //
 // Here's a simple example of how to use the BasicDataSource.
 // In this example, we'll construct the BasicDataSource manually,
 // but you could also configure it using an external conifguration file.
 //
 
 //
 // Note that this example is very similiar to the PoolingDriver
 // example.
 
 //
 // To compile this example, you'll want:
 //  * commons-pool.jar
 //  * commons-dbcp.jar
 //  * j2ee.jar (for the javax.sql classes)
 // in your classpath.
 //
 // To run this example, you'll want:
 //  * commons-collections.jar
 //  * commons-pool.jar
 //  * commons-dbcp.jar
 //  * j2ee.jar (for the javax.sql classes)
 //  * the classes for your (underlying) JDBC driver
 // in your classpath.
 //
 // Invoke the class using two arguments:
 //  * the connect string for your underlying JDBC driver
 //  * the query you'd like to execute
 // You'll also want to ensure your underlying JDBC driver
 // is registered.  You can use the "jdbc.drivers"
 // property to do this.
 //
 // For example:
 //  java -Djdbc.drivers=oracle.jdbc.driver.OracleDriver \
 //       -classpath commons-collections.jar:commons-pool.jar:commons-dbcp.jar:j2ee.jar:oracle-jdbc.jar:. \
 //       ManualPoolingDataSourceExample
 //       "jdbc:oracle:thin:scott/tiger@myhost:1521:mysid"
 //       "SELECT * FROM DUAL"
 //
 public class BasicDataSourceExample {
 
 public static void main(String[] args) {
 // First we set up the BasicDataSource.
 // Normally this would be handled auto-magically by
 // an external configuration, but in this example we'll
 // do it manually.
 //
 System.out.println("Setting up data source.");
 DataSource dataSource = setupDataSource(args[0]);
 System.out.println("Done.");
 
 //
 // Now, we can use JDBC DataSource as we normally would.
 //
 Connection conn = null;
 Statement stmt = null;
 ResultSet rset = null;
 
 try {
 System.out.println("Creating connection.");
 conn = dataSource.getConnection();
 System.out.println("Creating statement.");
 stmt = conn.createStatement();
 System.out.println("Executing statement.");
 rset = stmt.executeQuery(args[1]);
 System.out.println("Results:");
 int numcols = rset.getMetaData().getColumnCount();
 while(rset.next()) {
 for(int i=1;i<=numcols;i++) {
 System.out.print("\t" + rset.getString(i));
 }
 System.out.println("");
 }
 } catch(SQLException e) {
 e.printStackTrace();
 } finally {
 try { rset.close(); } catch(Exception e) { }
 try { stmt.close(); } catch(Exception e) { }
 try { conn.close(); } catch(Exception e) { }
 }
 }
 
 public static DataSource setupDataSource(String connectURI) {
 BasicDataSource ds = new BasicDataSource();
 ds.setDriverClassName("oracle.jdbc.driver.OracleDriver");
 ds.setUsername("scott");
 ds.setPassword("tiger");
 ds.setUrl(connectURI);
 return ds;
 }
 
 public static void printDataSourceStats(DataSource ds) throws SQLException {
 BasicDataSource bds = (BasicDataSource) ds;
 System.out.println("NumActive: " + bds.getNumActive());
 System.out.println("NumIdle: " + bds.getNumIdle());
 }
 
 public static void shutdownDataSource(DataSource ds) throws SQLException {
 BasicDataSource bds = (BasicDataSource) ds;
 bds.close();
 }
 }
 
 |  |  
		|  |  
		|  |  
		|  |  
		| * 관련 댓글 한말씀 부탁합니다. |  
		|  |  |