1.JDBC概念
JDBC是官方提供的一套操作所有关系型数据库的接口,各个数据库厂商去实现这套接口, 我们可以使用这套接口也就是JDBC来编程,真正实行的代码是驱动jar包中的实现类
2.快速入门
1.导入驱动jar包
2.注册驱动
3.获取数据库连接对象Connection
4.定义sql语句
5.获取执行sql语句的对象Statement
6.执行sql,接收返回结果
7.处理结果
8.释放资源
首先我们打开eclipse或者IDEA,这里先以IDEA为例,eclipse的看后面
首先创建一个Java工程命名为JdbcDemo
然后我们在工程的src目录下创建目录com.byzhang.jdbc(目录名可以自定义,最好标注是JDBC的目录)
在com.byzhang.jdbc目录下创建JdbcDemo1.java文件,代码将写在这个Java类里边
1第一步,导入驱动jar包
驱动jar包我们可以在官网下载 点击跳转官网
进来后点击Platform Independent即可选择下载
如遇到下图,点击No Thanksxxxxxx即可
我们使用的是MySQL5.7版本所以驱动jar包就是5.1.48版本的,若你的MySQL为8.0.x版本,可以下载8.x的驱动jar包
8.x版本的jar包如下
1.我们在JdbcDemo下与src同级的地方创建一个libs目录,
2.把JDBC的驱动jar包复制到libs目录下
3.右击libs目录,选择Add as Library
点击OK即可
2.注册驱动
注册驱动其实就是引入一个叫做Driver的Java类文件,当我们执行完第一步的时候会发现mysql-connector-java-5.1.48.jar是可以打开的
我们发现Driver其实是在这个jar包的com.mysql.jdbc目录下边(8.x的驱动包略有不同,在com.mysql.cj.jdbc下边)
注册驱动的代码很简单一句话就可以
Class.forName("com.mysql.jdbc.Driver");
我们发现驱动里边的路径其实就是刚刚我们找的Driver的路径(8.x版本的是com.mysql.cj.jdbc.Driver)
(稍微注意一下如果直接写Class.forName(xxxxx)就会爆红,主要是没有抛出异常,我们抛出异常就可以了)
3.获取数据库连接对象
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","123456");
其中这里的三个参数第一个是你得数据库地址还有指定的数据库,比如这里我连接的是test数据库,第二个参数是数据库的名字"root",第三个则是数据库密码
4.定义sql语句
数据库中有一个十分简单的表我们来更新这个表
把第三名学生的成绩设置为75
String sql = "update student set score=75 where id=3";
5.获取执行sql语句的对象
Statement stmt = conn.createStatement();
6.执行sql
int cnt = stmt.executeUpdate(sql);
7.处理结果
这里我们简单的打印一下修改的个数吧
System.out.println(cnt);
8.释放资源
stmt.close(); conn.close();
至此,一个简单的连接数据库实现完毕,具体的代码的功能我们在后续会详细介绍,下面看一下完整代码
代码如下
package com.byzhang.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; public class JdbcDemo1 { public static void main(String[] args) throws ClassNotFoundException, SQLException { //1.导入jar包 //2.注册驱动 Class.forName("com.mysql.jdbc.Driver"); //3.获取数据库连接对象 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","123456"); //4.定义sql语句 String sql = "update student set score=75 where id=3"; //5.获取执行sql语句的对象 Statement stmt = conn.createStatement(); //6.执行sql语句 int cnt = stmt.executeUpdate(sql); //7.处理结果 System.out.println(cnt); //8.释放资源 stmt.close(); conn.close(); } }
运行结果如下
打印了1说明执行成功,上边有一个warning,我们只要在"jdbc:mysql"//localhost:3306/test"后边加上"?useSSL=false"就可以了
"jdbc:mysql://localhost:3306/test?useSSL=false"
eclipse链接数据库
eclipse连接数据库比IDEA操作要简单一些。这里创建的是一个web工程来链接的数据库
这里只需要在src新建包com.byzhang.jdbc然后里边新建JdbcDemo1.java类,然后吧jar包直接放到WebContent -> WEB-INF -> lib 目录下就可以了
写法和IDEA里边的一样