javaWeb——struct2 配置tomcat数据源方法连接数据库

1、今天使用struct2 通过配置数据源(数据库连接池)方式来编写数据库程序,按照”王者归来“的步骤和”tomcat内置的帮助文档“来配置mysql数据源,在\tomcat6.0\conf\context.xml文件中加入

   <Resource name="jdbc/databaseWeb"
    auth="Container"
    type="javax.sql.DataSource"
    maxActive="100" maxIdle="30" maxWait="10000"
    username="root" password=""
    dirverClassName="com.mysql.jdbc.Driver"
    url="jdbc:mysql://localhost:3306/student_info"/>,

项目的web-info\ web.xml文件中加入 

<resource-ref>
    <description>DB Connection</description>
    <res-ref-name>jdbc/databaseWeb</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
    <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>

将驱动文件复制到tomcat6.0\lib目录下,然后调试运行。

获取数据库连接的java代码:

            Context initContext = new InitialContext();
            DataSource ds=(DataSource)initContext.lookup("java:comp/env/jdbc/databaseWeb");
            //获取所有的资源,并获取JNDI数据源
            Connection conn = ds.getConnection(); //申请一个Connection

             .....................获得conn后,后面就是操作数据库的部分和jdbc步骤都一样,获取statement  ResultSet 等。

      

会出现如下异常org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'jdbc:mysql://localhost:3306/student_info'

..........

.......... 中间是一些没用的东西

Caused by: java.sql.SQLException: No suitable driver
    at java.sql.DriverManager.getDriver(DriverManager.java:264)

..........

主要是看到了下面这篇文章,然后才解决了问题,最后发现需要将驱动程序的路径加入的classpath中,或者将驱动复制到C:\Program Files\Java\jdk1.6.0_24\jre\lib\ext 扩展目录下,这样就可以连接数据库了,并且成功。

原文:

http://www.blogjava.net/w2gavin/articles/217864.html

    今天出现编码出现了No suitable driver found for jdbc,又是找遍了网上的资料,基本上都说是三个问题:
    一是:连接URL格式出现了问题(Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/XX","root","XXXX")
    二是:驱动字符串出错(com.mysql.jdbc.Driver)
    三是Classpath中没有加入合适的mysql_jdbc驱动
    经过我的仔细检查,这三种错误我都没有犯,为什么呢?
    尝试着将mysql-connector-java-3.1.14-bin.jar的jar包加入C:\Program Files\Java\jre1.6.0_02\lib\ext文件夹下,问题解决了!!
    原来是不仅仅要求将驱动加入classpath中,而且需要将该jar包加入到java运行环境的外部jar包中,唉,下次这种低级错误还是少犯为妙。

posted on 2013-06-14 14:26  525525  阅读(2380)  评论(0编辑  收藏  举报

导航