DBCP连接池
tomcat/conf/context.xml中配置,在Context元素最下面配置如下元素:
<Resource name="ds_mysql"
type="javax.sql.DataSource"
maxActive="50" maxIdle="5" maxWait="5000"
username="root" password="root"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/test" />
maxActive:最大活动数量。表示最多允许打开的连接数量。
maxIdle:最大保存数量。表示最多允许保存在内存中的连接数量。
maxWait:最大等待时间。当活动数已满,等待获取连接时的最长等待时间
注意:在tomcatlib目录中要加入dbcp的jia包和mysql的jar包。
使用方式一:
我们可以在ServletContextListener的contextInitialized方法中写如下代码
public void contextInitialized(ServletContextEvent sce){ try{ Context context = new InitialContext(); //使用了jndi DataSource ds = context.lookup("java:comp/env/ds_mysql"); sce.getServletContext.setAttribute("dataSource", ds"); }catch(Exception e){ e.printStackTrace(); } }
使用方式二:
public class ConnectionFactory { private static DataSource ds; static { Context context = new InitialContext(); // 使用了jndi ds = context.lookup("java:comp/env/ds_mysql"); } public static Connection getConnection() { try { return ds.getConnection(); } catch (Exception e) { e.printStackTrace(); } return null; } }这样就可以在tomcat其它地方使用配置好的数据源了。