1. Resin对数据库缓冲池的支持很好。在这里,它提供了DBPool对缓冲池做了封装。实际使用时,只要在resin.conf这样配置:
<dbpool.sql> 
   <id>ORCL</id> 
   <driver>oracle.jdbc.driver.OracleDriver</driver> 
   <url>jdbc:oracle:thin:@localhost:1521:SMTH</url> 
   <!-- <url>jdbc:oracle:oci8:@SMTH</url> --> 
   <user>scott</user> 
   <password>tiger</password> 
   <max-connections>5</max-connections>
</dbpool.sql>
然后,在你的jsp或者servlet中就可以这样子使用了: 
先导入 com.caucho.sql.*包,然后如下直接得到连接:
<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="com.caucho.sql.*" %>
<%
java.sql.Connection conn = DBPool.getPool("ORCL").getConnection();
%>
2. 按照ejb的方法用从Context中直接找到的DataSource对象中得到连接通用性比较好。
<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="javax.naming.*" %>
<%
javax.naming.Context ctx = new javax.naming.InitialContext(); 
javax.sql.DataSource ds = (javax.sql.DataSource)ctx.lookup("java:comp/jdbc/EmployeeDB"); 
java.sql.Connection conn = ds.getConnection();
java.sql.Statement stmt = conn.createStatement();
String strSql = "select * from yydl";
java.sql.ResultSet rs = stmt.executeQuery(strSql);
while(rs.next()){ 
   out.println(rs.getString(1)); 
   out.println(rs.getString(2)); 
}
rs.close(); 
stmt.close();
conn.close();
ctx.close();
%>
在Resin中如下配置jdbc就可以了:
<resource-ref> 
<res-ref-name>jdbc/EmployeeDB</res-ref-name> 
<res-type>javax.sql.DataSource</res-type> 
<init-param driver-name="com.caucho.jdbc.mysql.Driver"/> 
<init-param url="jdbc:mysql_caucho://localhost:3306/test"/> 
<init-param user="name"/> 
<init-param password="password"/> 
<init-param max-connections="20"/> 
<init-param max-idle-time="30"/> 
</resource-ref>