package dao; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import com.mysql.jdbc.Connection; import com.mysql.jdbc.PreparedStatement; import model.Student; import utils.DBUtils; public class StudentDao { // 获取所有学生的信息,用ArrayList返回 public ArrayList<Student> query_all_student() { Connection conn = DBUtils.getConnection(); String sql = "select * from student order by sno;"; ArrayList<Student> results = new ArrayList<Student>(); try { PreparedStatement ps = (PreparedStatement) conn.prepareStatement(sql); ResultSet rs = ps.executeQuery(); while (rs.next()) { Student temp = new Student(); temp.setSno(rs.getString("sno")); temp.setSname(rs.getString("sname")); temp.setSsex(rs.getString("ssex")); temp.setSage(rs.getInt("sage")); temp.setClno(rs.getString("clno")); results.add(temp); } // 关闭资源 rs.close(); ps.close(); } catch (SQLException e) { e.printStackTrace(); } finally { DBUtils.closeConnection(conn); } return results; } // 插入学生信息,返回一个int值表示状态,1:成功,0失败 public int insert_student(String Sno,String Sname,String Ssex,int Sage,String Clno) { Connection conn = DBUtils.getConnection(); String sql = "insert into student values(?,?,?,?,?);"; int flag = 0; try { PreparedStatement ps = (PreparedStatement) conn.prepareStatement(sql); ps.setString(1, Sno); ps.setString(2, Sname); ps.setString(3, Ssex); ps.setInt(4, Sage); ps.setString(5, Clno); flag = ps.executeUpdate(); ps.close(); } catch (SQLException e) { e.printStackTrace(); } finally { DBUtils.closeConnection(conn); } return flag; } // 删除学生信息,返回一个int值表示状态,1:成功,0失败 public int delete_student(String sno) { Connection conn = DBUtils.getConnection(); String sql = "delete from student where sno = ?;"; int flag = 0; try { PreparedStatement ps = (PreparedStatement) conn.prepareStatement(sql); ps.setString(1, sno); flag = ps.executeUpdate(); ps.close(); } catch (SQLException e) { e.printStackTrace(); } finally { DBUtils.closeConnection(conn); } return flag; } // 修改学生信息,返回一个int值表示状态,1:成功,0失败 public int alter_class(String sno, String after_sno,String after_sname,String after_ssex,int after_sage,String after_clno) { Connection conn = DBUtils.getConnection(); String sql = "update student set sno = ?,sname = ?,ssex = ?,sage = ?,clno = ? where sno = ?;"; int flag = 0; try { PreparedStatement ps = (PreparedStatement) conn.prepareStatement(sql); ps.setString(1, after_sno); ps.setString(2, after_sname); ps.setString(3, after_ssex); ps.setInt(4, after_sage); ps.setString(5, after_clno); ps.setString(6, sno); flag = ps.executeUpdate(); ps.close(); } catch (SQLException e) { e.printStackTrace(); } finally { DBUtils.closeConnection(conn); } return flag; } }