JDBC编程六步曲

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Point9/article/details/82970921

第一步:注册驱动

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

public class JDBCTest01 {
	public static void main(String[] args){
		/*
		 * 第一步:注册驱动程序
		 * 1.获取驱动对象
		 * 2.注册驱动
		 */
		
		try {
			//1.获取驱动对象
			Driver driver = new com.mysql.jdbc.Driver();
			//2.注册驱动,调用DriverManager的registerDriver()方法
			DriverManager.registerDriver(driver);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}
}

第二步:获取数据库连接

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

public class JDBCTest02 {
	public static void main(String[] args) {
		try {
			// 1.注册驱动,先创建驱动对象,再调用DriverManager的registerDriver()方法
			Driver driver = new com.mysql.jdbc.Driver();
			DriverManager.registerDriver(driver);
            
			// 2.获取数据库连接,调用DriverManager的getConnection()方法
			String url = "jdbc:mysql://localhost:3306/test";
			String user = "root";
			String password = "root";
			Connection conn = DriverManager.getConnection(url, user, password);
			System.out.println(conn);//运行结果com.mysql.jdbc.JDBC4Connection@60e53b93
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

第三步:获取数据库操作对象

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

public class JDBCTest03 {
	public static void main(String[] args) {
		try {
			// 1.注册驱动,先创建驱动对象,再调用DriverManager的registerDriver()方法
			Driver driver = new com.mysql.jdbc.Driver();
			DriverManager.registerDriver(driver);

			// 2.获取数据库连接,调用DriverManager的getConnection()方法
			String url = "jdbc:mysql://localhost:3306/test";
			String user = "root";
			String password = "root";
			Connection conn = DriverManager.getConnection(url, user, password);

			// 3.获取数据库操作对象,调用Connection的createStatement()方法
			Statement stmt = conn.createStatement();
			System.out.println(stmt);//运行结果:com.mysql.jdbc.StatementImpl@60e53b93
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

第四步:执行SQL语句之DML语句

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

public class JDBCTest04 {
	public static void main(String[] args) {
		try {
			// 1.注册驱动,先创建驱动对象,再调用DriverManager的registerDriver()方法
			Driver driver = new com.mysql.jdbc.Driver();
			DriverManager.registerDriver(driver);

			// 2.获取数据库连接,调用DriverManager的getConnection()方法
			String url = "jdbc:mysql://localhost:3306/test";
			String user = "root";
			String password = "root";
			Connection conn = DriverManager.getConnection(url, user, password);

			// 3.获取数据库操作对象,调用Connection的createStatement()方法
			Statement stmt = conn.createStatement();

			// 4、执行SQL语句,调用Statement的executeQuery()方法
			String sql = "select * from user";// 此时SQL语句不需要分号
			ResultSet rs = stmt.executeQuery(sql);
			System.out.println(rs);//运行结果:com.mysql.jdbc.JDBC4ResultSet@5e2de80c

		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

第五步:处理查询结果集

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

public class JDBCTest05 {
	public static void main(String[] args) {
		try {
			// 1.注册驱动,先创建驱动对象,再调用DriverManager的registerDriver()方法
			Driver driver = new com.mysql.jdbc.Driver();
			DriverManager.registerDriver(driver);

			// 2.获取数据库连接,调用DriverManager的getConnection()方法
			String url = "jdbc:mysql://localhost:3306/test";
			String user = "root";
			String password = "root";
			Connection conn = DriverManager.getConnection(url, user, password);
		
			// 3.获取数据库操作对象,调用Connection的createStatement()方法
			Statement stmt = conn.createStatement();
			
			// 4、执行SQL语句,调用Statement的executeQuery()方法
			String sql = "select * from user";// 此时SQL语句不需要分号
			ResultSet rs = stmt.executeQuery(sql);
			
			/*
			+----+--------+------+------------------+
			| id | name   | sex  | email            |
			+----+--------+------+------------------+
			|  1 | 张三   | 男   | [email protected]       |
			|  2 | 李四   | 女   | [email protected]    |
			|  3 | 王二   | 男   | [email protected] |
			|  4 | 马五   | 女   | [email protected]      |
			|  5 | 孙六   | 男   | [email protected]      |
			+----+--------+------+------------------+
			 */
			//5、处理查询结果集
			while(rs.next()) {
				int id = rs.getInt("id");
				String name = rs.getString("name");
				String sex = rs.getString("sex");
				String email = rs.getString("email");
				System.out.println("编号"+id+"\t"+"姓名"+name+"\t"+"性别"+sex+"\t"+"邮箱"+email);
			}

		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

第六步:释放资源

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

public class JDBCTest06 {
	public static void main(String[] args) {
		Connection conn = null;// 数据库连接对象
		Statement stmt = null;// 数据库操作对象
		ResultSet rs = null;// 查询结果集对象
		try {
			// 1.注册驱动,先创建驱动对象,再调用DriverManager的registerDriver()方法
			Driver driver = new com.mysql.jdbc.Driver();
			DriverManager.registerDriver(driver);

			// 2.获取数据库连接,调用DriverManager的getConnection()方法
			String url = "jdbc:mysql://localhost:3306/test";
			String user = "root";
			String password = "root";
			conn = DriverManager.getConnection(url, user, password);
			
			// 3.获取数据库操作对象,调用Connection的createStatement()方法
			stmt = conn.createStatement();

			// 4、执行SQL语句,调用Statement的executeQuery()方法
			String sql = "select * from user";// 此时SQL语句不需要分号
			rs = stmt.executeQuery(sql);

			// 5、处理查询结果集
			while (rs.next()) {
				int id = rs.getInt("id");
				String name = rs.getString("name");
				String sex = rs.getString("sex");
				String email = rs.getString("email");
				System.out.println("编号" + id + "\t" + "姓名" + name + "\t" + "性别" + sex + "\t" + "邮箱" + email);
			}

		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
			// 6、关闭资源 倒序依次关闭
			//6.1 当查询结果集不为空时,先关闭结果集对象
			if (rs != null) {
				try {
					rs.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
			//6.2 当数据库操作对象不为空时,再关闭数据库操作对象
			if (stmt != null) {
				try {
					stmt.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
			//6.3 当数据库连接对象不为空时,最后关闭数据库连接对象
			if (conn != null) {
				try {
					conn.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
	}
}

Web全栈技术交流

点击链接加入群聊【Web全栈交流群】:https://jq.qq.com/?_wv=1027&k=5rnUzsF

QQ群二维码

猜你喜欢

转载自blog.csdn.net/Point9/article/details/82970921