方法一:


package jbdc;

import java.sql.*;

public class _1_JdbcDemo {
		public static void main(String[] args) {
			
			Connection conn = null;
			Statement smt = null;
			ResultSet rs = null;
			
			try {//-------------------------------------------------------------------------------------------------连接操作
				//加载数据库驱动
				//加载数据库驱动通常使用 Class类的静态方法 forName()来实现,具体实现方式如下:
				// Claas.forName ("DriverName");
				//在上述代码中, DriverName就是数据库驱动类所对应的字符串,例如,要加载 MySQL数据库的驱动可以采用如下代码:
				Class.forName("com.mysql.cj.jdbc.Driver");
				System.out.println("加载成功");
			} catch (ClassNotFoundException e) {
				// TODO Auto-generated catch block
				System.out.println("加载失败");
				e.printStackTrace();
			}
			String url = "jdbc:mysql://localhost:3306/market";//?useSSL=false
			String username = "root";
			String pwd = "root12345";
			try {
				//通过DriverManager获取数据库连接
				//DriverManager中提供了一个getConnection()方法来获取数据库连接
				conn = DriverManager.getConnection(url,username,pwd);//3个参数分别表示连接数据库的URL、登录数据库的用户名和密码
				System.out.println("连接成功");
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				System.out.println("连接失败");
				e.printStackTrace();
			}
			
			try {//-------------------------------------------------------------------------------------------------查询操作
				smt = conn.createStatement();//生成Statement对象(就是创建了一个容器)
				String sql = "select * from user";
				rs = smt.executeQuery(sql);//获得结果集
				while(rs.next()) {
				/*
				//获取数据库表中的内容的方式1————————————通过位置进行获取,位置从1开始的 
					String id = rs.getString(1);
					String name = rs.getString(2);
					String password = rs.getString(3);
					String role = rs.getString(4);
					System.out.println(id+" "+name+" "+password+" "+role);
				*/
				//获取数据库表中的内容的方式2————————————通过表中的列名进行获取
					String id = rs.getString("id");
					String  password= rs.getString("pwd");
					String name = rs.getString("xm");
					String role = rs.getString("role");
					System.out.println(id+" "+password+" "+name+" "+role);
				}
			}catch(SQLException e) {
					e.printStackTrace();
				}finally {
					if(rs!=null)
					try {
						rs.close();       //关闭资源
					} catch (SQLException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
					
					if(smt!=null)
						try {
							smt.close();
						} catch (SQLException e) {
							// TODO Auto-generated catch block
							e.printStackTrace();
						}
					
					if(conn!=null)
						try {
							conn.close();
						} catch (SQLException e) {
							// TODO Auto-generated catch block
							e.printStackTrace();
						}
				}
			

		}
}

方法二:


package jbdc;

import java.sql.*;

public class _2_JdbcDemo2 {
		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");
				
				//通过DriverManager获取数据库连接
				String url = "jdbc:mysql://localhost:3306/market";//?useSSL=false
				String username = "root";
				String password = "root12345";
				conn = DriverManager.getConnection(url,username,password);//3个参数分别表示连接数据库的URL、登录数据库的用户名和密码
				
				//通过Connection对象获取Statement对象
				stmt = conn.createStatement();
				
				//使用Connection执行SQL语句
				String sql = "select * from user";
				rs = stmt.executeQuery(sql);
				
				//操作ResultSet结果集
				System.out.println("id        |       pwd       |      xm     |     role    ");
				
				while(rs.next()) {
					int id = rs.getInt("id");//通过列名获取指定字段的值
					String pwd = rs.getString("pwd");
					String xm = rs.getString("xm");
					String role  = rs.getString("role");
					System.out.println(id+"     |       "+pwd+"       |     "+xm+"     |     "+role);
				}
				
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}finally {
				//关闭连接,释放资源
				if(rs!=null) rs.close();
				if(conn!=null) conn.close();
				if(stmt!=null) stmt.close();
			}
		}
}