反射机制注册驱动
-
代码:以类加载的方式注册驱动,因为注册驱动的代码是一个静态代码块,所以用Class.forname()加载该类,静态代码块也会进行加载
import java.sql.*; public class JDBCTest03 { public static void main(String[] args) { //创建连接所需对象 Connection connection=null; Statement statement=null; try { //1.注册驱动 第一种写法 //DriverManager.registerDriver(new com.mysql.cj.jdbc.Driver()); //1.注册驱动 第二种写法 类加载方式 Class.forName("com.mysql.cj.jdbc.Driver"); //2.获取连接 connection= DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/employ?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai", "root","123456"); //获取数据库操作对象 statement=connection.createStatement(); //执行sql语句 // UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值 update dept set loc=‘北京‘ where deptno=50 statement.executeUpdate("insert into dept(deptno,dname,loc) values(60,‘Personnel‘,‘ShangHai‘)"); } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); }finally { //6.释放资源 if(statement!=null){ try { statement.close(); } catch (SQLException e) { e.printStackTrace(); } } if(connection!=null){ try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } } } } }