windows - idea提示错误:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
问题描述
碰见了一个问题,一直无法解决,希望大家帮帮忙。这是连接mysql的JdbcUtils代码:
public class JdbcUtils { // 配置文件 private static Properties props = null; // 静态块保证只加载一次 static {InputStream in = JdbcUtils.class.getClassLoader().getResourceAsStream('dbconfig.properties');props = new Properties();try { props.load(in);} catch (IOException e) { System.out.println('加载配置文件失败!'); throw new RuntimeException(e);}try { Class.forName(props.getProperty('driverClassName'));} catch (ClassNotFoundException e) { System.out.println('驱动类加载失败'); throw new RuntimeException(e);} } public static Connection getConnection() throws SQLException {return DriverManager.getConnection(props.getProperty('url'),props.getProperty('username'), props.getProperty('password')); }}
用下面的这个测试类证明jdbcutilis没有问题,可以加载com.mysql.jdbc.Driver
public class TestJDBCUserDao { @Test public void test (){UserDao ud = UserDaoFactory.getUserDao('mysql');User user = new User();user = ud.findByName('111');System.out.println(user.getPassword()); }}
UserDao的jindByName是为了获得数据库连接:
项目也已经引入数据库驱动包,如图:
但当用tomcat跑时提示错误:错误提示,驱动类加载失败,也就是:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver,如图:
问题解答
回答1:如果你是直接把jar包拷贝进去的,右击jar点击add library,如果是jsp项目 需要拷贝到web下的lib下面。
回答2:把jar包同时也要放到tomcat的lib目录下
相关文章:
1. 一个走错路的23岁傻小子的提问2. angular.js - angularjs 使用鼠标悬停时,标签一直闪3. c++ - win764位环境下,我用GCC为什么指针占8个字节,而long是4个字节?4. html5 - HTML代码中的文字乱码是怎么回事?5. java - 安卓电视盒子取得了root权限但是不能安装第三方应用,请问该怎么办?6. javascript - SuperSlide.js火狐不兼容怎么回事呢7. android - 安卓activity无法填充屏幕8. python 计算两个时间相差的分钟数,超过一天时计算不对9. python - django 里自定义的 login 方法,如何使用 login_required()10. node.js - 函数getByName()中如何使得co执行完后才return
