IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> JDBC连接数据库2 -> 正文阅读

[大数据]JDBC连接数据库2

个人简介

  • 作者简介:大家好!我是yukki。
  • 个人主页:yukki.
  • ?喜欢:🌈点赞🌈收藏🌈一键三连!
  • 共勉

目录

一、实验原理:

数据库驱动的实现方式 :

二、操作步骤:

1、搭建数据库环境,创建数据库,创建表,添加基础数据

2、创建项目环境,导入数据库驱动

3、编写JDBC测试程序

4、实现对表中数据进行增、删、改、查操作。


一、实验原理:

JDBC是一套协议,是JAVA开发人员和数据库厂商达成的协议,也就是由Sun定义一组接口,由数据库厂商来实现,并规定了JAVA开发人员访问数据库所使用的方法的调用规范。

JDBC的实现是由数据库厂商提供,以驱动程序形式提供。

JDBC在使用前要先加载驱动。

JDBC对于使用者要有一致性,对不同的数据库其使用方法都是相同的。

驱动开发必须要实现Driver接口。

数据库驱动的实现方式 :

1、JDBC-ODBC桥接式

2、JDBC网络驱动,这种方式是通过中间服务器的协议转换来实现的

3、JDBC+本地驱动,这种方式的安全性比较差。

JDBC驱动,由数据库厂商实现。

二、操作步骤:

1、搭建数据库环境,创建数据库,创建表,添加基础数据

2、创建项目环境,导入数据库驱动

3、编写JDBC程序,连接测试

4、实现对表中数据进行增、删、改、查操作。

1、搭建数据库环境,创建数据库,创建表,添加基础数据

?
create table student(id INT PRIMARY KEY,name CHAR(10),sex CHAR(10),age CHAR(10),sorce CHAR(10));

?insert into student(id,name,sex,age,sorce) values ('202001','张三','男','20','100');
insert into student(id,name,sex,age,sorce) values ('202002','李四','男','18','99');
insert into student(id,name,sex,age,sorce) values ('202003','小敏','女','21','80');

2、创建项目环境,导入数据库驱动

3、编写JDBC测试程序

连接测试

package JdbcTest;

import java.sql.*;

public class test {
	public static void main(String[] args) {
		String driver = "com.mysql.cj.jdbc.Driver";// 数据库驱动类所对应的字符串
		String URL = "jdbc:mysql://localhost:3306/school";
		// URL语法格式如下
		// jdbc:mysql:是固定的写法,后面跟主机名localhost,3306是默认的MySQL端口号
		// serverTimezone=UTC是指定时区时间为世界统一时间
		// useUnicode=true是指是否使用Unicode字符集,赋值为true
		// characterEncoding=utf-8是指定字符编码格式为UTF8
		Connection conn = null;
		// Connection接口代表Java程序和数据库的连接对象,只有获得该连接对象后,才能访问数据库,并操作数据表
		try {
			Class.forName(driver);// 加载MySQL数据库驱动
		} catch (java.lang.ClassNotFoundException e) {// 如果找不到这个类,执行下面的异常处理
			System.out.println("驱动程序配置未配置成功!!!");
		}
		try {
			conn = DriverManager.getConnection(URL, "root", "123456");// 建立和数据库的连接,并返回表示连接的Connection对象
			System.out.println("数据库连接成功!!!");
		} catch (Exception e) {// 未连接成功,执行下面的异常处理
			System.out.println("数据库连接失败!!!");
		}
	}
}

4、实现对表中数据进行增、删、改、查操作。

(1)通过JDBC进行添加数据的操作

package JdbcTest;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class insert {

	public static void main(String[] args) throws SQLException {
		Connection conn = null;
		Statement stmt = null;
		ResultSet rs = null;
		try {
			Class.forName("com.mysql.cj.jdbc.Driver");
			String url = "jdbc:mysql://localhost:3306/school";
			String username = "root";
			String password = "123456";
			conn = DriverManager.getConnection(url, username, password);
			String sql = "insert into student(id,name,sex,age,sorce) values ('202010','小花','女','29','60');";

	        PreparedStatement statement=conn.prepareStatement(sql);

	        statement.executeUpdate();
	        
	        System.out.println("增加数据成功!");

		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			if (rs != null) {
				rs.close();
			}
			if (stmt != null) {
				stmt.close();
			}
			if (conn != null) {
				conn.close();
			}
		}
	}
}

(2)通过JDBC进行删除数据的操作

package JdbcTest;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class delete {

	public static void main(String[] args) throws SQLException {
		Connection conn = null;
		Statement stmt = null;
		ResultSet rs = null;
		try {
			Class.forName("com.mysql.cj.jdbc.Driver");
			String url = "jdbc:mysql://localhost:3306/school";
			String username = "root";
			String password = "123456";
			conn = DriverManager.getConnection(url, username, password);
			String sql = "delete from student where id=202003";
			
	        PreparedStatement statement=conn.prepareStatement(sql);

	        statement.executeUpdate();
	        
	        System.out.println("删除数据成功!");

		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			if (rs != null) {
				rs.close();
			}
			if (stmt != null) {
				stmt.close();
			}
			if (conn != null) {
				conn.close();
			}
		}
	}
}

(3)通过JDBC进行更改数据的操作

package JdbcTest;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class update {

	public static void main(String[] args) throws SQLException {
		Connection conn = null;
		Statement stmt = null;
		ResultSet rs = null;
		try {
			Class.forName("com.mysql.cj.jdbc.Driver");
			String url = "jdbc:mysql://localhost:3306/school";
			String username = "root";
			String password = "123456";
			conn = DriverManager.getConnection(url, username, password);
			String sql = "update student set sorce='99' where id=202001";
			
	        PreparedStatement statement=conn.prepareStatement(sql);

	        statement.executeUpdate();
	        
	        System.out.println("更新数据成功!");

		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			if (rs != null) {
				rs.close();
			}
			if (stmt != null) {
				stmt.close();
			}
			if (conn != null) {
				conn.close();
			}
		}
	}
}

(4)通过JDBC进行查询数据的操作

package JdbcTest;

import java.sql.*;
/**
 * @author zzc
 * @create 2022-05-06 16:00
 */
public class query {
    public static void main(String[] args) throws SQLException {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            String url = "jdbc:mysql://localhost:3306/school";
            String username = "root";
            String password = "123456";
            conn = DriverManager.getConnection(url, username, password);
            stmt = conn.createStatement();
            String sql = "select * from student;";
            rs = stmt.executeQuery(sql);
            System.out.println("id|name|sex" + "|age|sorce");
            while (rs.next()) {
                int id = rs.getInt("id");
                String name = rs.getString("name");
                String sex = rs.getString("sex");
                String age = rs.getString("age");
                String sorce = rs.getString("sorce");
                System.out.println(id + "|" + name + "|" + sex + "|" + age + "|" + sorce);

            }
            System.out.println("查询数据成功!");
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (rs != null) {
                rs.close();
            }
            if (stmt != null) {
                stmt.close();
            }
            if (conn != null) {
                conn.close();
            }
        }
    }
}

人是生而自由的,但却无往不在枷锁之中。?

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-05-08 08:10:56  更:2022-05-08 08:11:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 23:59:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码