最近在学习JDBC编程,编写如下代码,编译时却报错:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
1.public class Test1
2.{
3. public static void main(String[] args) throws Exception
4. {
5. //1.加载驱动,使用反射知识
6. Class.forName("com.mysql.jdbc.Driver");
7. try
8. {
9. //2.使用DriverManager获取数据库连接,其中返回的Connection就代表了Java程序和数据库的连接
10. //不同数据库的URL写法需要查看驱动文档,用户名、密码由DBA分配
11. Connection conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/database2","root","123");
12. //3.使用Connection来创建一个Statement对象
13. Statement stmt=conn.createStatement();
14. //4.执行SQL语句
15. //Statement有三种执行SQL语句的方法
16. ResultSet rs=stmt.executeQuery("select teacher_name "+"from teacher "+"where teacher_id>1");
17. while(rs.next())
18. {
19. System.out.println(rs.getString(1));
20. }
21. }
22. catch(Exception e)
23. {
24. e.printStackTrace();
25. }
26. }
27.}
后来查了相关资料发现是没有引入mysql-connector-java-x.x.x-bin.jar的问题。下面是具体的解决方案:
- 下载mysql-connector-java-x.x.x-bin.jar,目前最新版为mysql-connector-java-5.1.22-bin.jar。(http://nankaijerry.iteye.com/admin/blogs/1826921)
- 在Eclipse中,选择 项目->属性->Java构建路径,在“库”选项卡中,选择“添加外部JAR”,找到下载的mysql-connector-java-5.1.22-bin.jar文件,将其添加进项目。
- 再次编译,程序正常运行!(可使用上述代码做测试)