我用的ecipse3.0.1+tomcat5.5.4直接连接数据库
 Class.forName("com.mysql.jdbc.Driver");  
 con=DriverManager.getConnection("jdbc:mysql://localhost/fzzslash"); 没问题
但在配置数据源时
conf\server.xml下
<Resource name="jdbc/slash" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/slash">
<parameter>
     <name>factory</name>
     <value>org.apache.commons.dbcp.BasicDataSourceFactory<value>
   </parameter> 
<parameter>
<name>driverClassName</name>
<value>com.mysql.jdbc.Driver< value>
</parameter> <parameter>
<name>url</name>
<value>jdbc:mysql://localhost/fzzslash< value>
</parameter>
 </ResourceParams> 我的应用web-inf下web.xml中
<resource-ref>
        <res-ref-name>jdbc/slash</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref> 在conf\Catalina\localhost下我的应用名.xml<Context path="/DataCon1" reloadable="true" docBase="E:\study\eclipse\workspace\DataCon1" workDir="E:\study\eclipse\workspace\DataCon1\work" >
<ResourceLink name="jdbc/slash" global="jdbc/slash" type="javax.sql.DataSourcer"/>
</Context>但是请求serlet时console台出现:
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:780)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)
at com.j2ee14.ch7.DatabaseConn.getConnection(DatabaseConn.java:16)
at com.j2ee14.ch7.DataSourceTestServlet.doGet(DataSourceTestServlet.java:15)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:731)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.sql.SQLException: No suitable driver
at java.sql.DriverManager.getDriver(DriverManager.java:243)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:773)
... 19 more
大人帮忙,急啊

解决方案 »

  1.   

    数据库mysql4,在线等~~~~~~~~~~~~~~~~~~~``
      

  2.   

    我也出现过这种情况,是我的应用程序的配置文件名写错了,数据源我是单独写在一个文件了没有像你这样用link方式
      

  3.   

    jdbc:mysql://localhost/fzzslash----这里fzzslash应该是你德数据库名slash吧
      

  4.   

    1.con=DriverManager.getConnection("jdbc:mysql://localhost/fzzslash"); ---->
    con=DriverManager.getConnection("jdbc:mysql://localhost/slash"); 2.jdbc:mysql://localhost/fzzslash--->
    jdbc:mysql://localhost/slash
      

  5.   

    fzzslash是数据库名啊,改成slash干吗?我的数据库里可没有slash这个数据库啊
      

  6.   

    自己看tomcat的文档呀,我用的5.5.9里配置server.xml不是这样写的了
      

  7.   

    <Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
                   maxActive="100" maxIdle="30" maxWait="10000"
                   username="javauser" password="javadude" driverClassName="com.mysql.jdbc.Driver"
                   url="jdbc:mysql://localhost:3306/javatest?autoReconnect=true"/></Context>