首页 > 其他分享 >JDBC的一些基础认识,写的不是特别完善,希望大家看的时候别太介意嘿嘿嘿

JDBC的一些基础认识,写的不是特别完善,希望大家看的时候别太介意嘿嘿嘿

时间:2022-12-07 20:14:41浏览次数:48  
标签:DriverManager JDBC String 别太 数据库 mysql jdbc sql 嘿嘿嘿

JDBC

1,概念和本质

Java DataBase Connectivity Java 数据库链接, Java语言操作数据库

JDBC的本质:是一套操作所有关系型数据库的规则(接口)而JDBC所有的实现类,数据库驱动jar包,都由数据库的厂商自己实现。我们可以用这套接口进行编程,但真正执行的代码是驱动jar包的实现类。

 

## 2,快速入门
  • 步骤

  • 1,导入驱动jar包

    网上搜一下,记得注意版本,不同数据库的版本是不一样的!

     

  • 2,注册驱动

    Class.forName("com.mysql.jdbc.Driver");
  • 3,获取数据库链接对象 Connection

    • DriverManager类的静态方法getConnection获取Connection对象

    Connection connection = DriverManager.getConnection("jdbc:mysql://localgost(这里想主机名):3306(这里是端口号)/zhoupeng(数据库名)","root","root");

     

  • 4,定义sql语句

    String sql="update book set `bauthor`='南派三叔' where `bid`='b1'";
    ​
    这里sql语句后面不要加分号

     

  • 5,获取执行sql语句的对象 Statement

    • Connection对象调用createStatement方法,获取Statement对象

    Statement statement = connection.createStatement();

     

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

    int i = statement.executeUpdate(sql);

     

  • 7,处理结果

    System.out.println(i==1?"操作成功":"操作失败");

     

  • 8,释放资源

    connection.close();
    statement.close();

2,对象详解

1,DriverManager :驱动管理对象

功能

  1. 驱动注册

    static void registerDriver(Driver driver) 
              向 DriverManager 注册给定驱动程序。 
    写代码使用:Class.forName("com.mysql.jdbc.Driver");

    通过查看源码可知,com.mysql.jdbc.Driver 这个类中存在静态代码块如下

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

    这里我们就会发现,实际上注册驱动的,是 DriverManager.registerDriver(new Driver()) 这句代码,所以在代码中,实际上进行注册的是 DriverManager 这个类

    所以所谓的注册驱动,事实上是告诉程序,我们在使用哪个数据库

    注意:

    在mysql5之后的版本,这一步实际上是可以省略的!

     

  2. 获取数据库连接

    方法:

    static Connection getConnection(String url , String user , String password);

    参数:

    url:指定连接的路径

     

    语法:jdbc:mysql://ip地址(域名):端口号/数据库名称
    例子:jdbc:mysql://localhost:3306/zhoupeng;
    ​
    这里说一下,如果连接的是本地mysql,并且mysql的默认端口号是3306,那么url可以简写为:
    jdbc:msyql:///数据库名;

    user:用户名

    password:密码

2,Connection :数据库连接对象

功能

  1. 获取执行sql对象

    Statement createStatement()
    ​
    PreparedStatement prepareStatement(String sql)
  2. 管理事务

    开始事务

    viod setAutoCommit(boolean autoCommit)   :调用该方法设置参数为false,即开启事务

    提交事务

    viod commit()

    回滚事务

     void rollback() 

     

3,Statement :执行sql对象

执行sql:

 int executeUpdate(String sql) ;
 
 执行DML(增删改)语句,DDL(对表和库的操作)语句
 
 但一般只用于DML语句
 
 这个返回值,表示的是影响行数!我们可以通过影响的行数,判断DML语句有没有执行成功
 ResultSet executeQuery(String sql) 
 
 执行DQL(select)语句

 

4,ResultSet :结果集对象,封装查询结果

方法:

    boolean next()      游标向下移动一行
                        判断当前这一行是否有数据,有数据返回true
                                            没有数据返回false
getXxx(参数):获取数据
    XXX:代表数据类型,,比如:int getInt()   String getString()
    参数:
        1,  int : 代表列的编号,从1开始  如:getString(1)
        2,  String : 代表列的名称, 如: getInt("id")

遍历 ResultSet :

a1是 ResultSet 类型

for (; a1.next() ; ) {
    System.out.println(a1.getString(1)+"----"+a1.getString(2)+"----"+a1.getString(3)+"----"+a1.getString(4));
}

5,PreparedStatement :功能更加强大的执行sql对象

 

 

标签:DriverManager,JDBC,String,别太,数据库,mysql,jdbc,sql,嘿嘿嘿
From: https://www.cnblogs.com/fssnjcl/p/16964387.html

相关文章

  • JDBC
    讲师:宋红康微博:尚硅谷-宋红康第1章:JDBC概述 1.1 数据的持久化持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用。大多数情况下,特别是企业级应用,数......
  • [JDBC] Mysql报错Communications link failure
    昨天跑通的MySQL代码今天报错Communicationslinkfailure做了网上一些攻略均没有效果后来发现是因为昨天修改了MySQL的配置文件my.ini默认文件路径是C:\ProgramData\My......
  • jdbcTemplate
    jdbcTemplate介绍Spring框架对JDBC进行封装,使用JdbcTemplate方便实现对数据库操作准备工作引入相关jar包有的包,没用到是自己测试使用的就一并截图了在sprin......
  • 【重温SSM框架系列】11 - Mybatis快速入门(JDBC、开发步骤,配置文件)
    Mybatis快速入门​​准备工作​​​​原始JDBC操作​​​​查询​​​​插入​​​​mybatis简介与开发步骤​​​​1.引入mybatis依赖包​​​​2.创建表和对应实体类​......
  • JDBC
    1.加载驱动/*mysql5.+的版本加载驱动com.mysql.jdbc.Driver;8.0后的版本是com.mysql.cj.jdbc.Driver*/2.提供url,用户信息mysql端口号--3306协议://主机地址:端......
  • 【ES系列四】——ESjdbc的封装
    一、es的jdbc类-packagecom.yunshi.index.dao.esdb;importorg.apache.log4j.Logger;importorg.elasticsearch.client.transport.TransportClient;importorg.ela......
  • spring 3 jdbc常用小结
    spring3的jdbc跟springmvc搭配起来挺好用的,本文试着小结其主要使用方法,并举出spring3.3.2中的一些信变化进行解析1)在dao中注入jdbctemplate,然后......
  • 通过Shell脚本自动安装Hive&JDBC测试&提供CDH5网盘地址
    〇、参考地址1、Linux下编写脚本自动安装hivehttps://blog.csdn.net/weixin_44911081/article/details/121227024?ops_request_misc=%257B%2522request%255Fid%2522%253A......
  • 十四、JDBC复习
    十四、JDBC复习配置pom.xml文件中配置依赖<dependencies>  <dependency>    <groupId>mysql</groupId>    <artifactId>mysql-connector-java<......
  • Hive Beeline连接报错:Error: Could not open client transport with JDBC Uri: jdbc:h
    使用JDBC方式访问Hive时出现以下报错:Connectingtojdbc:hive2://hadoop102:1000022/11/2715:00:53[main]:WARNjdbc.HiveConnection:Failedtoconnecttoh......