目的:jdbc基本操作过程:打开数据库,操作数据库,关闭数据库,连接只有操作数据库不同。为了解决不必要的资源浪费,使用数据源来减少打开和关闭数据库的操作
1、通过Connection Pool 管理数据库连接
2、通过DataSource 去管理Connection Pool
3、DataSource 被JNDI 绑定 (java 命名 目录 借口)
2、通过DataSource 去管理Connection Pool
3、DataSource 被JNDI 绑定 (java 命名 目录 借口)
第一步,copy数据库驱动程序到Tomcat\lib目录.
第二步,修改Tomcat\conf\context.xml文件。
<Context> <!-- Default set of monitored resources --> <WatchedResource>WEB-INF/web.xml</WatchedResource> <Resource name="jdbc/test" auth="Container" type="javax.sql.DataSource" maxActive="30" maxIdle="30" maxWait="-1" username="hdty_system" password="hdty_system" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:orcl" /> </Context>第三步,更新应用程序目录WEB-INF/web.xml文件,添加如下内容。
<resource-ref> <description>db connection</description> <res-ref-name>jdbc/test</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref>第四步,测试数据源配置成功。
<%@ page contentType="text/html" pageEncoding="GB2312" %> <%@ page import="java.sql.*"%> <%@ page import="javax.sql.DataSource"%> <%@ page import="javax.naming.*"%> <html> <body> <% Connection connection = null; Context context = null; DataSource dataSource = null; context = new InitialContext(); dataSource = (DataSource) context.lookup("java:/comp/env/jdbc/test"); if (dataSource != null) { connection = dataSource.getConnection(); } out.println(connection ); Statement s = connection.createStatement(); ResultSet rs = s.executeQuery("select * from 表"); rs.next(); out.println(rs.getString(2)); %> </body> </html>