JDBC快速入门
文章目录
步骤
-
创建工程,导入jar包,下载网址:https://downloads.mysql.com/archives/c-j/
-
注册驱动
Class.forName("com.mysql.jdbc.Driver");
-
获取连接
Connection conn = DriverManager.getConnection(url.username,password);
-
定义sql语句
String sql ="update..."
-
获取sql对象
Statement stmt = conn.createStatement();
-
执行sql
stmt.executeUPdate(sql);
-
处理返回结果
-
释放资源
-
代码
package com.itlyc.jdbc;
import com.mysql.jdbc.Driver;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
/**
* 玥骋
* JDBC 快速入门
*/
public class JBDCdemo {
public static void main(String[] args) throws Exception {
//1.注册驱动
Class.forName("com.mysql.jdbc.Driver");
//2.获取连接
String url = "jdbc:mysql://127.0.0.1:3306/db01";
String username = "root";
String password = "lyc";
Connection conn = DriverManager.getConnection(url, username, password);
//3.定义sql
String sql = "update dept set dname='李玥骋' where did=2";
//4.获取执行sql的对象statement
Statement state = conn.createStatement();
//5.执行sql
int i = state.executeUpdate(sql);//返回受影响的行数
//6.处理结果
System.out.println(i+"行受到影响");
//7.释放资源
state.close();
conn.close();
}
}
API详解
一,DriverManager
- DriverManager (驱动管理类)作用:
-
注册驱动
-
Driver类源码
package com.mysql.jdbc; import java.sql.DriverManager; import java.sql.SQLException; public class Driver extends NonRegisteringDriver implements java.sql.Driver { public Driver() throws SQLException { } static { try { //我们可以看到注册驱动的方法就在Driver类的静态方法中,随着类的加载被加载 DriverManager.registerDriver(new Driver()); } catch (SQLException var1) { throw new RuntimeException("Can't register driver!"); } } }
-
-
获取数据库连接
static Connection getConnection(String url , String user , String password)
-
参数:
- url连接路径
- user :用户名
- password:密码
语法:jdbc:mysql://ip地址(域名):端口号/数据库名称?键值对1&键值对2... 例子: jdbc:mysql://127.0.0.1:3306/db01 注:如果连接的本地MySQL 并且端口号默认为3306的话可以简化书写 jdbc:mysql:///数据库名称
二,Connection
获取执行sql对象
- 普通执行sql对象:Statement createStatement()
- 预编译sql的执行sql对象:防止sql注入 :PreparedStatement prepareStatement(sql)
- 执行存储过程对象:Callable Statement prepareCall(sql)
JDBC事务管理
Connection接口中定义了三个对应的方法
- 开启事务:setAutoCommit(boolean autoCommit):true为自动提交事务,false为手动提交事务,也就是开启事务
- 提交事务:commit()
- 回滚事务:roollback()
例子:
package com.itlyc.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
/**
* 玥骋
* JDBC API详解
*/
public class JBDCdemo_Connection {