java use apache DBCP connection pooling with mysql Database
create connection pool โดย Database Connection Pool (DBCP) Configurations
environment:
#tomcat 5.5.x
#Eclipse IDE 3.2 or hiher
#MySQL 5.0.x
#jdk 1.5 or hiher
library request :
jdbc mysql connection j :->>mysql-connector-java-5.0.7-bin.jar find download on internet
apache dbcp commons-dbcp-current-bin :->>commons-dbcp-1.4.jar find downloa on internet
step #1:
create your own 'context.xml' file and put in your app_namexxx/META-INF/ location
<Context path="/web-app-pooling" docBase="web-app-pooling" debug="5" reloadable="true" crossContext="true">
<Resource name="jdbc/Datasource_DBPerson" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="root" password="root" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/db_person"/>
</Context>
Context path= web application name
docBase = web application name
step #2
เพิ่ม tag resource เข้าไปในไฟล์ web.xml (app_namexxx/WEB-INF/)
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/Datasource_DBPerson</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
step #3
ให้นำเอาไฟล์ mysql-connector-java-5.0.7-bin.jar ไปวางไว้ที่ TOMCAT_HOME/common/lib/ เพื่อให้ webapp server โหลดและทำงาน
ส่วนไฟล์ commons-dbcp-1.4.jar ให้ add เข้าไปใน lib ตามมปรกติ (app_namexxx/WEB-INF/lib/)
step #4
เรียกใช้งาน ผ่าน connection pooling สร้างไว้ดังนี้
javax.naming.InitialContext context = new InitialContext();
// Look up the data source
javax.sql.DataSource dataSource =(javax.sql.DataSource)context.lookup ("java:comp/env/jdbc/Datasource_DBPerson");
// Get a connection from the pool
java.sql.Connection conn = dataSource.getConnection();
PreparedStatement stmt = conn.prepareStatement("select * from person_test" );
ResultSet rs = stmt.executeQuery();
while (rs.next())
{
System.out.println("id:"+rs.getString("id"));
System.out.println("fname:"+rs.getString("fname"));
System.out.println("email:"+rs.getString("email"));
.......
}
rs.close();
conn.close();
}
catch ( javax.naming.NamingException e )
{
e.printStackTrace();
}
catch ( java.sql.SQLException e )
{
e.printStackTrace();
}
======END =======
test for you
** หมายเหตุสร้าง project โดยใช้ Eclipse IDE
เพิ่มเติม:http://forums.sun.com/thread.jspa?threadID=639243
สมัครสมาชิก:
ส่งความคิดเห็น (Atom)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น