码迷,mamicode.com
首页 > 数据库 > 详细

一个简单的JDBC解析

时间:2021-06-06 18:45:19      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:base   表示   端口号   comm   编码   rollback   个数   第一个   creates   

Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。

技术图片

第一个JDBC程序步骤

1.加载驱动

//如果使用的mysql驱动版本为5,那么使用加载驱动为com.mysql.jdbc.Driver
//如果使用的mysql驱动版本为6包括以上,那么使用加载驱动为com.mysql.cj.jdbc.Driver
Class.forName("com.mysql.cj.jdbc.Driver");//固定写法

2.连接数据库

//jdbc:mysql://地址:端口号/数据库?设置中文字符集为true&设置编码为utf8" 假如你用的mysql驱动包是8.x版本 我们需要加入一段内容
//假如你用的mysql驱动包是8.x版本 我们需要加入一段内容jdbc:mysql://地址:端口号/数据库?serverTimezone=utc  
//serverTimezone:utc 表示我们使用世界标准日期(以美国时间为准)
String url = "jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=utf8";
//mysql用户名
String username = "root";
//mysql密码
String password = "123456";

3.连接判断

//connection代表的是数据库
//connection.commit();  事务提交
//connection.rollback();  事务回滚
//connection.getAutoCommit();  事务自动提交
Connection connection = DriverManager.getConnection(url, username, password);

4.执行sql的对象

//Statement为执行sql的对象
Statement statement = connection.createStatement();

5.执行sql语句

//SQL查询语句
String sql = "SELECT * FROM `user`";

//ResultSet是返回的结果集
//statement.executeUpdate();  更新,插入,删除都用这个
//statement.execute(); 所以SQL语句都可以用这个,有判断会降低速度(不推荐)
//statement.executeQuery(); 这个为sql查询的语句
ResultSet resultSet = statement.executeQuery(sql);

//resultSet.beforeFirst();移动到最后面
//resultSet.afterLast();移动到最前面
//resultSet.next(); 移动到下一个数据
//判断是否有下一个数据
while (resultSet.next()){
    System.out.println(resultSet.getInt("id"));
    System.out.println(resultSet.getObject("name"));
    System.out.println(resultSet.getObject("pwd"));
}

6.释放连接

//由于连接很耗费资源,所以需要在结束后释放连接
resultSet.close();
statement.close();
connection.close();

sql删除示例

String sql = "DELETE FROM `user` WHERE id=3";
st.executeUpdate(sql);

sql插入示例

String sql = "INSERT INTO `user`(id,`name`,pwd) VALUES(3,‘小蓝‘,123)";
st.executeUpdate(sql);

sql更新示例

String sql = "UPDATE `user` SET id=4,`name`=‘小红‘ WHERE id=1";
st.executeUpdate(sql);

判断是否执行sql语句成功

int i = st.executeUpdate(sql);//插入,更新,删除 受影响的行数
if (i>0){
    System.out.println("执行成功");
}else {
    System.out.println("执行失败");
}

第一个完整的JDBC查询程序

JDBC步骤分为,加载驱动,连接数据库,判断连接是否成功,执行sql的对象,执行sql语句,返回结果集,释放连接。以下为完整的jdbc查询连接。

package com.hdt.mysql;

import java.sql.*;

public class JdbcDemo {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //1.加载驱动
        Class.forName("com.mysql.cj.jdbc.Driver");
        //2.连接数据库
        String url = "jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=utf8";
        String username = "root";
        String password = "123456";
        //3.连接成功    Connection代表数据库 
        Connection connection = DriverManager.getConnection(url, username, password);
        //4.执行sql的对象   Statement为执行sql的对象
        Statement statement = connection.createStatement();
        //5.执行sql语句
        String sql = "SELECT * FROM `user`";
        //ResultSet是返回的结果集
        ResultSet resultSet = statement.executeQuery(sql);
        while (resultSet.next()){
            System.out.println(resultSet.getInt("id"));
            System.out.println(resultSet.getObject("name"));
            System.out.println(resultSet.getObject("pwd"));
        }
        //6.释放连接
        resultSet.close();
        statement.close();
        connection.close();
    }
}

一个简单的JDBC解析

标签:base   表示   端口号   comm   编码   rollback   个数   第一个   creates   

原文地址:https://www.cnblogs.com/HeiDaotu/p/14853410.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!