jdbc学习

JDBC

本质

一套接口

准备工作

  1. 先从官网下载对应的驱动(jar包),然后将其配置到环境变量classpath当中(仅文本编辑器开始时需要配置)

    classpath=.;jar包绝对路径

JDBC编程六步

  1. 注册驱动

    作用:告诉java程序,即将要连接的是哪个品牌的数据库

  2. 获取连接

    表示JVM的进程和数据库进程之间的通道打开了,这属于进程之间的通信,重量级的,使用完之后一定要关闭通道。

  3. 获取数据库操作对象(专门执行sql语句的对象)

  4. 执行SQL语句

  5. 处理查询结果集

    只有第4步执行的是select语句时,才有。

  6. 释放资源

案例1 - 新增数据

import java.sql.Driver;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.DriverManager;
import java.sql.Statement;

public class JDBCTest01 {
	public static void main(String[] args) {
		Connection conn = null;
		Statement sta = null;
		try {
			// 1.注册jdbc驱动
            // 方法一:
			Driver driver = new com.mysql.cj.jdbc.Driver();
			DriverManager.registerDriver(driver);
            
            // 方法二:常用
            // Class.forName("com.mysql.cj.jdbc.Driver");
            

			// 2.建立连接
            // jdbc:mysql://ip地址:端口号(默认3306)/库名
			String url = "jdbc:mysql://xxx.xxx.xx.xx:3306/xxx";
            // mysql用户名
			String user = "xxx";
            // mysql密码
			String password = "xxx";
			conn = DriverManager.getConnection(url, user, password);

			// 3.获取操作对象
			sta = conn.createStatement();
					
			// 4.执行sql
			String sql = "insert into emp (EMPNO, ENAME) values(7935, 'zhangShen')";			
			//String sql = "delete from emp where empno=7935;";

			int count = sta.executeUpdate(sql);
			if (count > 0) {
				System.out.println("添加成功!");
			}
			
			// 5.处理查询结果(只有执行的是select语句才需要处理)

		} catch (SQLException e){
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
            e.printStackTrace();
        } finally {
			// 6.释放资源
			// 应该从小到大关闭,并且单独写try...catch...
			if(sta != null) {
				try{
					sta.close();
				}
				catch (SQLException e){
					e.printStackTrace();
				}
			}
			if(conn != null) {
				try{
					conn.close();
				}catch (SQLException e) {
					e.printStackTrace();
				}
			}
		}
	}
}

案例2 - 删除数据

import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Connection;


public class JDBCTest02 {
	public static void main(String[] args) {
		
		Connection conn = null;
		Statement sta = null;

		try {			
			// 1.注册jdbc驱动
            // 方法一:
			Driver driver = new com.mysql.cj.jdbc.Driver();
			DriverManager.registerDriver(driver);
            
            // 方法二:常用
            // Class.forName("com.mysql.cj.jdbc.Driver");

			// 建立连接
			// jdbc:mysql://ip地址:端口号(默认3306)/库名
			String url = "jdbc:mysql://xxx.xxx.xx.xx:3306/xxx";
            // mysql用户名
			String user = "xxx";
            // mysql密码
			String password = "xxx";
			conn = DriverManager.getConnection(url, name, password);

			// 获取操作对象
			sta = conn.createStatement();
			
			// 执行sql
			String sqlStr = "delete from emp where empno = 7935";
			int count = sta.executeUpdate(sqlStr);
			if(count > 0) {
				System.out.println("删除成功!!!");
			}

			// 5.处理查询结果集(只有select语句才需要处理)
			
		} catch (SQLException e) {
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
            e.printStackTrace();
        } finally {
			if (sta != null) {
				try{
					sta.close();
				}catch(SQLException e) {
					e.printStackTrace();
				}
			}
			if(null != conn) {
				try {
					conn.close();
				}catch(SQLException e) {
					e.printStackTrace();
				}
			}
		}
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值