栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JDBC连接数据库2

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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.*;

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();
            }
        }
    }
}

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

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/863022.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号