设为首页 收藏本站
查看: 495|回复: 0

[经验分享] 【总结】关于tomcat+6.0中使用连接池的问题

[复制链接]

尚未签到

发表于 2017-2-7 10:42:48 | 显示全部楼层 |阅读模式
以前中练习时,遇到使用连接池时没有怎么在意觉得还是比较容易,没有很在意,觉得就是那个几个的配置问题简单的很!!!
这次做博客系统的时候,觉得开始用连接池。可是当我把所有的配置都配置好后,开始验证的时候,就出现了一系列的问题,其中一个最让我纠结的文件就是这个javax.naming.NoInitialContextException。这是尼玛错误 DSC0000.gif ??纠结了我起码三个小时都没有解决,哎。。。 DSC0001.gif 悲剧!!!上网查资料,到论坛上提问,都没有解决!!! DSC0002.gif
等过了一会儿,我突然脑中灵光一闪,既然java代码中不可以,那jsp中呢??等我在jsp中尝试的时候又遇到了Cannot load JDBC driver class 'com.microsoft.sqlserver.jdbc.SQLServerDriver'这个错误??为什么找不到驱动??我这里明明已经把该驱动复制到WEB-INF/lib中了啊??为什么还有错误呢??想不通!!然后又百度??找到了答案,要把该驱动复制到tomcat目录的lib下!!哎。。终于可以了!!感谢上帝!!感谢百度!!!!
下面是关于在 tomcat 6.0中的使用连接池的相关的配置!!!
一般可以这三个文件中可以配置:tomcat目录下的conf/context.xml、server.xml和webapps/app../META-INF/context.xml中进行配置:

<Context reloadable="true">  <WatchedResource>WEB-INF/web.xml</WatchedResource><Resource name="jdbc/server"  auth="Container"  type="javax.sql.DataSource"  driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"  url="jdbc:sqlserver://localhost:1433;databaseName=blog"  username="sa"  password="SQL2005"  maxActive="100"  maxIdle="30"  maxWait="10000" /></Context>
然后是web.xml中的配置:
<resource-ref>  <description>DBConnection</description><res-ref-name>jdbc/server</res-ref-name><res-type>javax.sql.DataSource</res-type><res-auth>Container</res-auth></resource-ref>
注意:在web.xml中的<res-ref-name>中的值要和Resource中的name的名字一样
最后是测试代码了:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@page import="java.sql.*"%> <%@page import="javax.naming.*"%> <%@page import="javax.sql.DataSource"%> <html> <head> <title>Tomcat Connection Pool Test</title> </head> <body> <% try { Context ctx = new InitialContext(); Context envContext = (Context) ctx.lookup("java:/comp/env"); DataSource ds = (DataSource) envContext.lookup("jdbc/server"); Connection conn = ds.getConnection(); out.println(conn); conn.close(); } catch (NamingException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } %> </body> </html>  由于在Tomcat中配置了数据源,可以通过(DataSource)envCtx.lookup(''java:/comp/env/jdbc")来查找这个资料源。查找到这个资料源,就可以通过Connection conn = ds.getConnection()的方法来获得一个到数据库的连接。
  在这里测试代码一定要在jsp中使用
同时并在tomcat的lib下和WebRoot/WEB-INF/lib下加入上驱动文件
Tomcat配置时连接池驱动包必须放在tomcat目录下的lib里。这是因为Tomcat连接池是在Tomcat启动时就创建了,那里还没有加载项目里的驱动包。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-338718-1-1.html 上篇帖子: Tomcat中的类装载器对Servlet程序的装载机制 下篇帖子: TextArea提交失败(Tomcat 关于表单提交数据量过大导致数据丢失的问题)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表