前文指路
修改后代码:
所调用的配置文件:jdbc.properties
url = jdbc:mysql:///db3 user = root password = admin driver = com.mysql.cj.jdbc.Driver
JDBCUtils.java
package util;
import java.io.FileReader;
import java.io.IOException;
import java.net.URL;
import java.sql.*;
import java.util.Properties;
public class JDBCUtils {
private static String url;
private static String user;
private static String password;
private static String driver;
static{
//读取资源,获取值
try {
//1.创建Properties集合类
Properties pro = new Properties();
//获取src路径下的文件的方式 ----> ClassLoader 类加载器
//2.加载文件
pro.load(new FileReader("src/cn/jdbc.properties"));
//pro.load(new FileReader(path));
//3.获取数据,赋值
JDBCUtils.url = pro.getProperty("url");
user = pro.getProperty("user");
password = pro.getProperty("password");
driver = pro.getProperty("driver");
//4.注册驱动
Class.forName(driver);
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public static Connection getConnection() throws SQLException {
return DriverManager.getConnection(url,user,password);
}
public static void close(Statement stmt,Connection conn){
if(stmt!=null){
try {
stmt.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if(conn!=null){
try {
conn.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
public static void close(ResultSet rs,Statement stmt,Connection conn){
if(rs!=null){
try {
rs.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if(stmt!=null){
try {
stmt.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if(conn!=null){
try {
conn.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
}
jdbcdemo.java
import cn.itcast.domain.Emp;
import util.JDBCUtils;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class jdbcdemo {
public static void main(String[] args) {
List list = new jdbcdemo().findAll2();
System.out.println(list);
}
public List findAll(){ //方法返回一个List集合,集合里面为Emp对象
Connection conn =null;
Statement stmt = null;
ResultSet rs = null;
List list = null;
try {
Class.forName("com.mysql.cj.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql:///db3", "root", "admin");
String sql = "select * from emp";
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
Emp emp = null;
list = new ArrayList();
while(rs.next()){
int id = rs.getInt(1);
String ename = rs.getString(2);
int job_id = rs.getInt(3);
int mgr = rs.getInt(4);
Date joindate = rs.getDate(5);
double salary = rs.getDouble(6);
double bonus = rs.getDouble(7);
int dept_id = rs.getInt(8);
//创建对象,并赋值
emp = new Emp();
emp.setId(id);
emp.setEname(ename);
emp.setJob_id(job_id);
emp.setMgr(mgr);
emp.setJoindate(joindate);
emp.setSalary(salary);
emp.setBonus(bonus);
emp.setDept_id(dept_id);
//装载集合
list.add(emp);
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException throwables) {
throwables.printStackTrace();
}finally {
if(conn!=null){
try {
conn.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if(stmt!=null){
try {
stmt.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if(rs!=null){
try {
rs.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
return list;
}
public List findAll2(){ //方法返回一个List集合,集合里面为Emp对象
Connection conn =null;
Statement stmt = null;
ResultSet rs = null;
List list = null;
try {
//Class.forName("com.mysql.cj.jdbc.Driver");
//conn = DriverManager.getConnection("jdbc:mysql:///db3", "root", "admin");
conn=JDBCUtils.getConnection();
String sql = "select * from emp";
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
Emp emp = null;
list = new ArrayList();
while(rs.next()){
int id = rs.getInt(1);
String ename = rs.getString(2);
int job_id = rs.getInt(3);
int mgr = rs.getInt(4);
Date joindate = rs.getDate(5);
double salary = rs.getDouble(6);
double bonus = rs.getDouble(7);
int dept_id = rs.getInt(8);
//创建对象,并赋值
emp = new Emp();
emp.setId(id);
emp.setEname(ename);
emp.setJob_id(job_id);
emp.setMgr(mgr);
emp.setJoindate(joindate);
emp.setSalary(salary);
emp.setBonus(bonus);
emp.setDept_id(dept_id);
//装载集合
list.add(emp);
}
} catch (SQLException throwables) {
throwables.printStackTrace();
}finally {
JDBCUtils.close(rs,stmt,conn);
}
return list;
}
}
运行结果:



