2022-8-18第一组孙乃宇JDBC

JDBC

  1. 概念:Java DataBase connectivity Java数据库连接,Java语言操作数据库

JDBc本质∶其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程 ,真正执行的代码是驱动jar包中的实现类。

快速入门

1.导入驱动jar包

1. 复制 mysql-connector-java-5.1.37-bin.jar 到项目的libs目录中

2.右键-->Add as Library

2.注册驱动

3.获取数据库连接对象connection

4.定义sql

5.获取执行sql语句的对象statement

6.执行sql,接受返回结果

7.处理结果

  1. 释放资源

详解各个对象

DriverManager:驱动管理对象

功能:1.注册驱动:告诉程序该使用哪一个数据库驱动jar

static void registrDriver(Driver driver):注册与给定的驱动程序DriverManager。

写代码使用:Class.forName("com.mysql.jdbc.Deiver");

通过查看源码发现:在com.mysql.jdbc.Driver 类中存在静态代码块

 static {
       try {
           DriverManager.registerDriver(new Driver());
      } catch (SQLException var1) {
           throw new RuntimeException("Can't register driver!");
      }
  }

注意:mysql之后的驱动jar包可以省略注册驱动时的步骤

  1. 获取数据库连接

    方法:static Connection getConnection

    参数:url:指定连接的路径

    语法:jdbc:mysql://ip地址(域名):端口号/数据库名称

    例子:jdbc:mysql://localhost:3306/db3

    细节:如果连接的时本机mysql服务器,并且mysql服务器默认端口号是3306,则 url可以简写为:jdbc:mysql:///数据库名称

    user:用户名

    password:密码

Connection:数据库连接对象

  1. 功能:获取执行sql的对象

Sstatement createStatement ()

PreparedStatement prepareStatement(String sql)

  1. 管理事务

    开启事务: void setAutoCommit(boolean autoCommit) 此连接的自动提交模式设置为给定状态。

    提交事务:commit()

    归滚事务:rollback()

Statement执行sql的对象

执行sql的对象:用于执行静态 SQL 语句并返回它所生成结果的对象。

  1. 执行sql

    1. boolean execute(String sql):可以执行任意的sql (了解)

    2. int executeUpdate(String sql): 执DML(insert,update,delete) 语句、DDL(create,alter,drop)语句

      返回值:int 影响的行数,可以通过这个影响的行数判断DML语句是否执行成功 返回值>0的则执行成成功,反之,则失败。

    3. ResultSet executeQuery(String sql):执行DQL(select)语句

 @Test
   public void test01() throws ClassNotFoundException, NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException, SQLException {
       String url = "jdbc:mysql://127.0.0.1:3306/db4?userUnicode=true&characterEncoding=utf8";
       String username = "root";
       String password = "root";
       String driverName = "com.mysql.jdbc.Driver";
       //1.加载驱动类
       Class clazz = Class.forName(driverName);
       //2.实例化Driver对象
       Driver driver = (Driver) clazz.getDeclaredConstructor().newInstance();
       //3.注册驱动
       DriverManager.registerDriver(driver);
       //4.获取连接
       Connection connection = DriverManager.getConnection(url, username, password);
       //执行sql的步骤
       //1.获取连接
       statement = connection.createStatement();
       //2.定义sql
       //3.执行sql语句
       String sql="insert into teacher (id,name) values (6,'Jay')";
       String delete="DELETE FROM teacher WHERE id=5";
       String update="update teacher set name='sun' where id=3";
       //返回值是执行sql语句的行数
       //4.处理执行sql的返回值
       //int i = statement.executeUpdate(sql);
       int i = statement.executeUpdate(update);
       System.out.println("影响的行数"+i);
  }
 

相关文章

连接数据库的方式:第一种方式:ODBC:开放数据库连接是微软...
JDBCRequest 使用VariableNamesmysql:数据库连接池对象var...
 1.JDBCDBC(JavaDataBaseConnectivity):Java数据库连接技术...
1.需要jar包的支持:java.sqljavax.sqlmysql-conneter-java....
1.简介Activiti是一个业务流程管理(BPM)框架,它是覆盖了业务...
1.JDBC体系系统一组规范:接口JDBC接口(API)包括两个层次:...