import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.List; public class QueryDemo { public static void main(String[] args) throws Exception { QueryDemo demo = new QueryDemo(); /* List<Dept> list = demo.findAllDept(); for (Dept dept : list) { System.out.println(dept); } */ Dept dept = new Dept(0, "test", 1); System.out.println(demo.saveDept(dept)); } // 查找所有的部門 public List<Dept> findAllDept() throws ClassNotFoundException, SQLException { // 1.注冊數據庫驅動 Class.forName("com.mysql.cj.jdbc.Driver"); // 2.與數據庫建立連接 Connection conn = DriverManager.getConnection("jdbc:mysql://@localhost:3306/oaec", "root", "root"); // 3.創建用來執行SQL語句的Statement對象 Statement stmt = conn.createStatement(); // 4.執行SQL語句 String sql = "select id,name,region_id from s_dept"; // 執行查詢:executeQuery(String sql)==>ResultSet,結果集 // 增刪改:executeUpdate(String sql)==>int,影響的行數 ResultSet rs = stmt.executeQuery(sql); List<Dept> list = new ArrayList<Dept>(); // 5.處理結果集(針對查詢) while (rs.next()) { // 一次循環處理一行,一行轉換成一個對象 Dept dept = new Dept(rs.getInt(1), rs.getString(2), rs.getInt(3)); list.add(dept);// 添加到集合 } // 6.釋放資源 // ResultSet-->Statement-->Connection if (rs != null) { rs.close(); } if (stmt != null) { stmt.close(); } if (conn != null) { conn.close(); } return list; } // 添加一個部門 public int saveDept(Dept dept) throws ClassNotFoundException, SQLException { // 1.注冊數據庫驅動 Class.forName("com.mysql.cj.jdbc.Driver"); // 2.與數據庫建立連接 Connection conn = DriverManager.getConnection("jdbc:mysql://@localhost:3306/oaec", "root", "root"); // 3.創建用來執行SQL語句的Statement對象 Statement stmt = conn.createStatement(); // 4.執行SQL語句 String sql = "insert into s_dept (name,region_id) " + "values ('"+dept.getName()+"',"+dept.getRegionId()+")"; //增刪改:executeUpdate(String sql)==>int,影響的行數 int rows = stmt.executeUpdate(sql); // 6.釋放資源 if (stmt != null) { stmt.close(); } if (conn != null) { conn.close(); } return rows; } }