Tomcat 6.0.20数据源配置
转自:http://9771104.blog.163.com/blog/static/1944662200991803817362/
我的Tomcat 6.0.20 安装路径: D:\Tomcat 6.0
1、 配置 conf\context.xml 文件
<Resource name="jdbc/mysql_pool" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="root" password="sunjie" driverClassName="org.gjt.mm.mysql.Driver" url="jdbc:mysql://localhost:3306/testweb" /> 注释: (总共分4栏翻译) (1)、 JNDI 连接用户名,作者、类型 (2)、 连接时各大小、各等待时间 (3)、 连接数据库的用户名、密码、以及驱动程序 (4)、 连接数据库地址我使用的是: testweb数据库 在conf\context.xml 文件中 </Context>之前,加上以上内容 |
2、 配置 conf\web.xml 文件
<resource-ref> <description>DB Connection</description> <res-ref-name>jdbc/mysql_pool</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> 注释: (总共分3栏翻译) (1)、 JNDI 连接用户名 与上面的Context.xml中的name匹配 (2)、 JNDI 连接类型 与上面的Context.xml中的type匹配 (3)、 JNDI 连接作者 与上面的Context.xml中的auth匹配 description中不做任何解释,可以自行修改,也可以不修改所内容,使用本人默认的。 在conf\context.xml 文件中 </web-app>之前,加上以上内容 |
3、 测试是否成功 (保存: test.jsp )
<%@ page contentType="text/html;charset=gb2312"%> <%@ page imp <%@ page imp <%@ page imp <%! final String JNDINAME = "java:comp/env/jdbc/mysql_pool" ; %> <% Connection conn = null ; try { Context ctx = new InitialContext() ; // 初始化查找命名空间 DataSource ds = (DataSource)ctx.lookup(JNDINAME) ; // 找到DataSource conn = ds.getConnection() ; } catch(Exception e) { System.out.println(e) ; } %> <%=conn%> //打印连接是否成功 注释: 启动Tomcat 6.0.20 ,在地址栏输入: http://localhost:8080/test/test.jsp 如果出现以下表示成功配置tomcat 6.0.20 数据源
jdbc:mysql://localhost:3306/testweb 等等什么的, 出现的提示与原先的配置一样。 |
4、 如果你不确定的话,可以增中如下代码
注释: 在<%=conn%> 后面,增加如下查询代码,使用的是admin表,其中有ID,name,pass三个字段,具体情况根据自己的情况而定。 <table border=1> <tr> <td>用户ID:</td> <td>用户名:</td> <td>密码:</td> </tr> <% String sql="select * from admin"; PreparedStatement pstat=conn.prepareStatement(sql); ResultSet rs=pstat.executeQuery(); while(rs.next()) { int id=rs.getInt(1); String name=rs.getString(2); String pass=rs.getString(3); %> <tr> <td><%=id%></td> <td><%=name%></td> <td><%=pass%></td> </tr> <% } %> </table> |
错误(1)、 org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC driver class 'org.gjt.mm.mysql.Driver'
解决办法: 把连接数据库的驱动程序,拷贝到Tomcat的lib文件夹下,就可以。