前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java JDBC系列1 JDBC类的简析与JDBC的基础操作

java JDBC系列1 JDBC类的简析与JDBC的基础操作

作者头像
一只胡说八道的猴子
发布2020-09-27 10:08:13
5600
发布2020-09-27 10:08:13
举报

java JDBC系列1 JDBC类的简析与JDBC的基础操作

什么是JDBC?

概念:JAVA Database Connectivity Javas数据库连接,Java语言操作数据库接口,然后由各个数据库厂商去实现这个接口,提供数据库驱动java包,我们可以使用这套接口,真正执行的是jar驱动包中的实习类

使用一张图让大家更为直观的理解: coder就是写这套接口的程序员

在这里插入图片描述
在这里插入图片描述

JDBC的使用步骤

1.导入驱动jar包 2.注册驱动 3.获取数据库连接对象 4.定义sql执行语句 5.获取sql语句执行对象 6.执行sql语句返回结果 7.处理结果 8.释放结果

代码实现

代码语言:javascript
复制
package JDBC;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class Main {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //注册驱动
        Class.forName("com.mysql.jdbc.Driver");
        //获取数据库连接对象
        Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3309/db2", "root", "1234");
        //定义sql语句
        String sql="update count set money=10000";
        //定义statement执行语句
        Statement statement = connection.createStatement();
        //执行sql语句
        int i = statement.executeUpdate(sql);
        System.out.println("共"+i+"行受到影响");
        //关闭资源
        statement.close();
        connection.close();
    }
}

类详解

DriverManager:驱动管理对象

功能: 1.注册驱动,告诉程序应该使用哪个驱动的java包 static void registerDriver(Driver driver) :注册与给定的驱动程序 DriverManager 。

写代码使用:

代码语言:javascript
复制
Class.forName("com.mysql.jdbc.Driver");

查看jar包下的源码得:

代码语言:javascript
复制
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 {
        //注册驱动
            DriverManager.registerDriver(new Driver());
        } catch (SQLException var1) {
            throw new RuntimeException("Can't register driver!");
        }
    }
}

我们可以发现在com.mysql.jdbc.Driver类中存在静态代码块,内部调用registerDriver(new Driver)注册驱动 mysql5之后可以省略注册驱动的步骤

获取数据库连接

方法:static connection getConnection(String sql,String password) 参数: * url:指定连接的路径 * 语法:jdbc:mysql://ip地址(域名):端口号/数据库名称 * 例子:jdbc:mysql://localhost:3306/db3 * 细节:如果连接的是本机mysql服务器,并且mysql服务默认端口是3306,则url可以简写 为:jdbc:mysql:///数据库名称 * user:用户名 * password:密码

**

Connection 数据库连接对象**

1.功能 1.1 获取sql语句的执行对象 *Statement createStatement() * PreparedStatement prepareStatement(String sql)

1.2 管理事务 开启事务:setAutoCommit(boolean autocommit),调用改方法,参数为false时开启事务 提交事务:commit(); 回滚事务:rollback()

1.3 statement:执行sql语句的对象

  1. 执行sql 1. boolean execute(String sql) :可以执行任意的sql 了解 2. int executeUpdate(String sql) :执行DML(insert、update、delete)语句、 DDL(create,alter、drop)语句 * 返回值:影响的行数,可以通过这个影响的行数判断DML语句是否执行成功 返回值>0的则执行成功,反之,则失败。
代码语言:javascript
复制
**1.4ResultSet:结果集对象,封装查询结果**
 boolean next():游标向下移动一行,判断当前行是不是最后一行,如果是则返回false,如果不是则返回true
 getXxx(参数):获取数据
* Xxx:代表数据类型   如: int getInt() ,	String getString()
			* 参数:
				1. int:代表列的编号,从1开始   如: getString(1)
				2. String:代表列名称。 如: getDouble("balance")

使用步骤:

  1. 游标向下移动一行
  2. 判断是否有数据
  3. 获取数据

代码演示

代码语言:javascript
复制
package JDBC;
import java.sql.*;
public class Main {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //注册驱动
        Class.forName("com.mysql.jdbc.Driver");
        //获取数据库连接对象
        Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3309/db2", "root", "1234");
        //定义sql语句
        String sql="SELECT *FROM  COUNT ";
        //定义statement执行语句
        Statement statement = connection.createStatement();
        //执行sql语句
        ResultSet resultSet = statement.executeQuery(sql);
        //循环输出
        while(resultSet.next()){
            int anInt = resultSet.getInt(1);
            String string = resultSet.getString(2);
            int anInt2 = resultSet.getInt(3);
            System.out.println("ID:"+anInt);
            System.out.println("name:"+string);
            System.out.println("money:"+anInt2);
        }
        //关闭资源
        statement.close();
        connection.close();
    }
}

结果

在这里插入图片描述
在这里插入图片描述

以上就是JDBC的一些基础知识,如有错误还请各位批评指正,喜欢文章的可以点赞收藏,我会经常更新文章,喜欢的也可以关注我呀

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-07-27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • java JDBC系列1 JDBC类的简析与JDBC的基础操作
  • 什么是JDBC?
  • JDBC的使用步骤
  • 类详解
  • DriverManager:驱动管理对象
  • Connection 数据库连接对象**
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档