首先,我们介绍一下 JDBC 编程六步
(参考 pink老师)
一. 导入驱动 jar包
导入驱动jar包的两种方式
//方式1
1. 在任务栏创建文件夹(Directory)libs——复制(D:\group_software\javaWeb\mysql-connector-java-5.1.24.jar) jar包到项目的libs目录下
2. 右键 ——> Add as Library (必须要执行的操作—真正将jar包加入到项目里面)
//方式2
选中项目—>(右键 Open Module Settings)或者F4—>Libraries—>点击+号—> 选择java—> 选择jar 包的目录—> apple (应用)—> 点击ok
http://t.csdn.cn/eOeUd (官网下载最新的jar包——参考博客)
遇到的问题
问题一
IDEA中:出现java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long
这是因为,使用的mysql-connector-java的jar包版本太老了,参考上面的博客下载最新版本的jar包
问题二
下载最新的jar包之后,注册驱动时,出现了 错误 ——错误描述如下
Loading class `com.mysql.jdbc.Driver’. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver’. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.
解释为:
加载类\“com.mysql.jdbc.Driver”。这是弃用。新的驱动程序类是’ com.mysql.cj.jdbc.Driver’。驱动程序是通过SPI自动注册的,手动加载驱动程序类通常是不必要的。
解决方法是
com.mysql.jdbc.Driver 改为 com.mysql.cj.jdbc.Driver
如下即可
问题三
在执行JDBC六步编程的时候
出现了
Unknown column 'name' in 'where clause'
这个错误的意思是**没有找到这个字段名。
参考
(最后成功解决了这个问题)
最后的代码展示效果
package cn.itcast.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
/*
JDBC 快速入门
*/
public class JdbcDemo1 {
// main 方法快捷键 psvm
public static void main(String[] args) throws Exception {
// 1.导入驱动jar包
// 2.注册驱动
Class.forName("com.mysql.cj.jdbc.Driver");
// 3.获取连接
// DriverManager.getConnection("jdbc:mysql://IP地址:端口号/数据库名称","用户名","密码");
// 方法写完之后 返回一个 Connection conn 对象
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql", "root", "111111");
// 4.使用 conn 对象 获取执行 SQL 对象 获取对象之前先定义一个 SQL语句
String sql = "update test.user set name ='小胖' where name = '胡亮'";
// 5.获取执行 SQL语句的对象 Statement
Statement stmt = conn.createStatement();
// 6.执行SQL 这里执行的是增的操作 执行完成之后 会返回一个 int性的值
int count = stmt.executeUpdate(sql);
// 7. 处理结果
System.out.println(count);
// 8.释放资源
stmt.close();
conn.close();
}
}
mysql 数据展示
最后在IDEA中的运行结果是
上面是我在学习JDBC中遇到的问题,仅供参考,如有错误,请各位大佬批评指正!!!
pink 老师的编程六步,运行结果如下,上面我的代码可以有一点错误,希望大佬可以批评指正!