Tomcat 配置的数据源,测试连接数据库报告类转换错误。
-
tomcat 配置的数据源如下:
写的测试类如下: package com.telenav.Brant; import java.sql.ResultSet; import java.sql.SQLException; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.sql.DataSource; import com.mysql.jdbc.Connection; import com.mysql.jdbc.Statement; public class ConnectDB { public ConnectDB(){} public static void testDB(){ try { Context ctx = new InitialContext(); DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/TestDB"); Connection con = (Connection) ds.getConnection(); Statement stmt = (Statement) con.createStatement(); ResultSet rs = stmt.executeQuery("select * from user"); while(rs.next()){ System.out.println(rs.getString(2)); } } catch (NamingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } 报错如下: 2011-6-19 15:08:28 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() for servlet jsp threw exception java.lang.ClassCastException: org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper cannot be cast to com.mysql.jdbc.Connection at com.telenav.Brant.ConnectDB.testDB(ConnectDB.java:21) at org.apache.jsp.index_jsp._jspService(index_jsp.java:81) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.jasper.servlet.JspServletWrapper.service 我估计是import进来的类不对,可能是引入的包比较少,所以eclipse自动提示的类不匹配,有没有高手告诉我使用tomcat数据源配置连接数据库,在类中都要引入什么包中的什么类? 展开
全部评论(5条)
-
- 昆明医疗 2011-06-19 00:00:00
- 连接包导出项目lib下了吗?发布的时候一定要导入呢
-
赞(3)
回复(0)
-
- iar1988 2011-06-19 00:00:00
- 你试下注册驱动的时候不要用Class.forName(); 换一种方式。好像是DirverManager什么的 记不太清 你试试吧
-
赞(12)
回复(0)
-
- 天天说everyday 2011-06-19 00:00:00
- 你需要把你的mysql数据库的jar“mysql-connector-java-3.2.0-alpha-bin.jar”拷到tomcat根目录下的common\lib下面去
-
赞(11)
回复(0)
-
- lwlo838 2011-06-19 00:00:00
- 文件夹:build-存放编译后的class文件 nbproject-存放项目的具体配置文件 src-java源代码存放文件夹 test-JUnit测试文件存放位置 Build.xml构建描述文件,因为Netbeans的编译打包是基于ant的,build就是ant实现自动编译打包的描述文件。 manifest.mf是打包的时候需要的一个清单文件,是对打包后的jar包中的文件的一个描述下文件。 original.java,.netbeans_automatic_build,这两个文件不知道你用的什么Netbeans版本,在我的版本中并未生成此文件。 build-impl.xml是对Build.xml文件的具体描述,Build.xml其实并未实现具体的ant构建脚本,具体是在该文件中实现的,如果你看过build.xml的源代码,就会发现一句<import file="nbproject/build-impl.xml"/>,这你就知道是什么意思了。
-
赞(11)
回复(0)
-
- 叶子酱油 2017-11-24 14:15:38
- Connection con = (Connection) ds.getConnection(); Connection 应该是 java.sql.Connection. 但是你用的是: com.mysql.jdbc.Connection tomcat的数据源的PoolGuardConnectionWrapper 实现的是 java.sql.Connection. 你把它转换为 com.mysql.jdbc.Connection肯定出错 Statement 必须用 java.sql.Statement
-
赞(11)
回复(0)
热门问答
- Tomcat 配置的数据源,测试连接数据库报告类转换错误。
- tomcat 配置的数据源如下:
写的测试类如下: package com.telenav.Brant; import java.sql.ResultSet; import java.sql.SQLException; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.sql.DataSource; import com.mysql.jdbc.Connection; import com.mysql.jdbc.Statement; public class ConnectDB { public ConnectDB(){} public static void testDB(){ try { Context ctx = new InitialContext(); DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/TestDB"); Connection con = (Connection) ds.getConnection(); Statement stmt = (Statement) con.createStatement(); ResultSet rs = stmt.executeQuery("select * from user"); while(rs.next()){ System.out.println(rs.getString(2)); } } catch (NamingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } 报错如下: 2011-6-19 15:08:28 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() for servlet jsp threw exception java.lang.ClassCastException: org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper cannot be cast to com.mysql.jdbc.Connection at com.telenav.Brant.ConnectDB.testDB(ConnectDB.java:21) at org.apache.jsp.index_jsp._jspService(index_jsp.java:81) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.jasper.servlet.JspServletWrapper.service 我估计是import进来的类不对,可能是引入的包比较少,所以eclipse自动提示的类不匹配,有没有高手告诉我使用tomcat数据源配置连接数据库,在类中都要引入什么包中的什么类? 展开
- 医保软件打不开,提示,数据库连接错误
- 药店这个电脑主板坏了。把硬盘挂到别的电脑上用的,现在别的都可以用,医保软件打不开,提示,数据库连接错误。。下面的怎么操作啊。急,,... 药店这个电脑主板坏了。把硬盘挂到别的电脑上用的,现在别的都可以用,医保软件打不开,提示,数据库连接错误。。下面的怎么操作啊。急 ,, 展开
- mysql-font连接数据库失败,SQR执行错误1251
- mysql-font出现了这种错误,他让我upgrade,可我这已经是Z新版本了,密码是肯定没问题的,不知道为什么,求大神给出解决方案,万分感谢... mysql-font出现了这种错误,他让我upgrade,可我这已经是Z新版本了,密码是肯定没问题的,不知道为什么,求大神给出解决方案,万分感谢 展开
- c3p0 测试数据库连接是否有效
- Tomcat服务器简单应用及如何配置虚拟主机
- Toad for DB2 配置数据库连接,失败,报错:连接ipc端口失败
- ,配置步骤没有问题,求大神知道!
- 我用Junit 写了一个MySQL数据库连接的测试类,为什么会报错?
- 测试类有一个test错误其他的都不能测试吗
- 上面的测试方法是正确的,可以正常测试,但是下面的测试我故意把public删除,让它出现错误,为什么这样的话,上面的也不能测试了?难道他们之间有什么关联,有一个测试不通就全部不能测试了?
- 交换机的网络地址转换配置:
- 怎样转换交换机的IP地址... 怎样转换交换机的IP地址 展开
- 软件安装出现数据库错误
- 因为开学要考计算机二级所以要安装一个VB练习软件安装完打开解就出现系统数据库出现错误不能正常运行应该不是软件本身的问题因为其他人都能安装上也不该是安装程序的问题哪位高手帮帮... 因为开学要考计算机二级所以要安装一个VB练习软件 安装完打开解就出现系统数据库出现错误 不能正常运行 应该不是软件本身的问题 因为其他人都能安装上 也不该是安装程序的问题 哪位高手帮帮忙~~~~~ 展开
- 如何用Junit4测试Spring框架下配置的类
- 天子星餐饮提示 软件连接数据库失败,请检查配置信息。
- 天子星餐饮提示软件连接数据库失败,请检查配置信息。1楼2台收银机器能行,2楼财务室连接不上,一开软件就提示连接数据库失败,请检查配置信息,3台机器都在一个局域网内... 天子星餐饮提示 软件连接数据库失败,请检查配置信息。1楼2台收银机器能行,2楼财务室连接不上,一开软件就提示连接数据库失败,请检查配置信息,3台机器都在一个局域网内 展开
- 如何将本地数据库与远程数据库连接
- ipc$连接出现错误53
- 1.对方ip地址肯定正确 2.都开启了lanmanserver 3.关闭了防火墙 4.都有ipc$ 为什么还是出现了错误53啊。。求解释。。。
- 宽带连接错误691怎么回事?
- 会不会是欠费了?他们也没打电话通知我啊... 会不会是欠费了?他们也没打电话通知我啊 展开
- sql sa密码修改,连接数据库的管理软件,无法连接数据库,如何解决
- JAVA测试类调用DAO层查询数据库空指针异常
- 此为DAOImpl类 public TbAssignment loadByLoginName(String loginName) { System.out.println(loginName); String hqlString = " from TbAssignment u where u.tbUser.userLoginname='"+loginName+"' "; List
list = th... 此为DAOImpl类 public TbAssignment loadByLoginName(String loginName) { System.out.println(loginName); String hqlString = " from TbAssignment u where u.tbUser.userLoginname='"+loginName+"' "; List list = this.getHibernateTemplate().find(hqlString); if (list != null && list.size() > 0) { return (TbAssignment) list.get(0); } else { return null; } } 测试类 @Test public void t_pwd (){ TbAssignmentDaoImpl tbd = new TbAssignmentDaoImpl(); TbAssignment tb =tbd.loadByLoginName("XXXX"); System.out.println(tb.getTbUser().getUserLoginpwd()); } 展开
- 数据库如何与软件连接的
- 比如说我装了sqlserver2000,我在里面存了一些数据,如何把数据库与某个应用软件连接起来呢?比如说图书管理软件。如何把sql2000内的数据导入到那个应用软件中去呢?... 比如说我装了sqlserver2000,我在里面存了一些数据,如何把数据库与某个应用软件连接起来呢?比如说图书管理软件。如何把sql2000内的数据导入到那个应用软件中去呢? 展开
- access数据库的软件,总是提示错误数据库中的表错误时怎么回事啊
- 错误提示是“由于数据表‘dept’需要一个相关记录,不能添加或修改记录“... 错误提示是“由于数据表‘dept’需要一个相关记录,不能添加或修改记录“ 展开
- 百威软件不能连接数据库
- 我一打开就出现这样!!!我已经装好了SQL了,我电脑的思迅软件还能正常使用的,所以不要说什么没有装SQL,谁知道怎么搞???... 我一打开就出现这样!!!我已经装好了SQL了,我电脑的思迅软件还能正常使用的,所以不要说什么没有装SQL,谁知道怎么搞??? 展开
12月突出贡献榜
推荐主页
最新话题
-
- #八一建军节——科技铸盾,仪器护航#
- 如何选择到合适的磷青铜绞线?磷青铜绞线的质量...如何选择到合适的磷青铜绞线?磷青铜绞线的质量解析和如何选择到合适的绞线?磷青铜绞线是一种特殊的铜合金导线,由铜、锡和磷等元素组成,具有很好的机械性能、电气性能和耐腐蚀性。磷青铜绞线基本定义与特性:磷青铜是铜与锡、磷的合金,质地坚硬,可制弹簧。典型成分为铜(90%)、锡(6-9%)及磷(0.03-0.6%)锡元素提升合金的强度和耐腐蚀性,磷则细化晶粒、增强耐磨性铸造性能。耐磨性:表面氧化层使其在特殊环境下耐腐蚀,使用寿命长导电性:保持铜很好导电性能的同时有化电子传输路径非铁磁性:不含铁元素,避免在强磁场环境中产生额外能量损耗弹性:受到外力作用时能迅速恢复原状
- 八一建军节 铁血铸军魂













参与评论
登录后参与评论