jdbc配置问题

来源:互联网 发布:寻仙linux服务端 编辑:程序博客网 时间:2024/06/05 14:15

我运行一个下载的程序的时候出现了

[jdbc/oracleds] is not bound in this Context. Unable to find [jdbc]错误。虽然最后还是没有调试出来,因为那个程序需要oracle数据库,但是我还是找到了一些解决问题的方法。

如果你用服务器是tomcat,而你需要用jdbc连接数据库。那么按照j2ee规范,你需要在web应用程序里的WEB-INF/web.xml里包含数据库描述,并且在tomcat的server.xml里放置数据库配置的一些细节。

下面是以mysql为例

web.xml中

 

<!-- 配置数据库驱动jdbc mysql --> <resource-ref> <description> mysql jdbc configuration </description> <res-ref-name> jdbc/oracleds </res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref>

注意res-ref-name需要和server.xml中的resource匹配

server.xml中的配置

<Context docBase="H:\WebRoot" path="/messagebook" reloadable="true"><Resource name="jdbc/oracleds" type="javax.sql.DataSource" username="root" password="xxx" url="jdbc:mysql://localhost:8080/message" driverClassName="com.mysql.jdbc"/></Context>


注意,该配置实在context项目内的,如果其他web应用程序也会用到这个DataSource,就把Resource放在适当的Host或者Engine原始的GlobalNamingResource元素中

还要注意的是Resource元素里面需要加driverClassName这个属性,不然会出现org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'jdbc:mysql://localhost:8080/'错误的

还要就是Cannot load JDBC driver class 'com.mysql.jdbc' Caused by: java.lang.ClassNotFoundException: com.mysql.jdbc错误,是因为没有找到驱动.jar,记得放入WEB-INF/lib里。

 

原创粉丝点击