// 按照姓名来查找学生,返回查找到的学生人数,学生信息将添加在List容器里面
public static int findByName(List
// 按照生日来查找学生,返回查找到的学生人数,学生信息将添加在List容器里面
public static int findByBirth(List
String condition = \ + birth; return find(students, condition); }
//查询出所有的学生信息
public static int findAll(List
// 一个私有方法,查找的核心方法,condition是sq语言的查找条件
private static int find(List
PreparedStatement pstmt = null; ResultSet rs = null; int record = 0; try {
conn = DBConnection.getConn();
String sql = \ + condition; pstmt = DBConnection.getPstmt(conn, sql); rs = DBConnection.executeQuery(pstmt); while (rs.next()) {
students.add(new Student(rs.getString(1), rs.getString(2), rs
.getString(3), rs.getString(4), rs.getDate(5), rs .getString(6), rs.getString(7), rs.getString(8), rs
.getDate(9), rs.getString(10), rs.getString(11)));
record++; }
} catch (SQLException e) { e.printStackTrace();
}
}
} finally {
DBConnection.closeRs(rs);
DBConnection.closePstmt(pstmt); DBConnection.closeConn(conn); }
return record;
public static Date shiftDate(String date) { return Date.valueOf(date); }
// 得到所有的班级
public static Object[] getClasses() { Connection conn = null;
PreparedStatement pstmt = null; ResultSet rs = null;
List
conn = DBConnection.getConn();
String sql = \; pstmt = DBConnection.getPstmt(conn, sql); rs = DBConnection.executeQuery(pstmt); while (rs.next()) {
String c = rs.getString(1); if (c == null) { continue; }
classes.add(c); }
} catch (SQLException e) { e.printStackTrace(); } finally {
DBConnection.closeRs(rs);
DBConnection.closePstmt(pstmt); DBConnection.closeConn(conn); }
return classes.toArray(); }
com.ccniit.student.manage.GradeManage类
说明:此类是逻辑处理层里面的成绩管理类,有添加成绩、删除成绩、修改成绩、查找成绩等方法,显示层可以直接调用这些方法来实现需要的功能。其中查找方法是有方法的组合。
package com.ccniit.student.manage;
import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List;
import com.ccniit.student.Grade;
import com.ccniit.student.util.DBConnection;
public class GradeManage { // 添加学生成绩信息
public static boolean add(Grade grade) { Connection conn = null;
PreparedStatement pstmt = null; boolean flag = false; try {
conn = DBConnection.getConn();
String sql = \semester, schoolYear, grade) values(?, ?, ?, ?, ?)\; pstmt = DBConnection.getPstmt(conn, sql); pstmt.setString(1, grade.getStudentID()); pstmt.setString(2, grade.getCourseName()); pstmt.setInt(3, grade.getSemester()); pstmt.setInt(4, grade.getSchoolYear()); pstmt.setDouble(5, grade.getGrade()); if (pstmt.executeUpdate() > 0) { flag = true; }
} catch (SQLException e) { e.printStackTrace(); } finally {
DBConnection.closePstmt(pstmt); DBConnection.closeConn(conn); }
return flag; }
public static boolean addGrades(String studentID) {
add(new Grade(studentID, \语言高级程序设计\, 2, 2012, 0)); add(new Grade(studentID, \大学英语\, 2, 2012, 0)); add(new Grade(studentID, \高等数学\, 2, 2012, 0)); add(new Grade(studentID, \沟通与演讲\, 2, 2012, 0)); add(new Grade(studentID, \数据结构\, 2, 2012, 0));
add(new Grade(studentID, \数据库原理与应用\, 2, 2012, 0)); add(new Grade(studentID, \体育\, 2, 2012, 0)); return true; }
// 删除学生成绩信息
public static boolean delete(String id) { Connection conn = null;
PreparedStatement pstmt = null; boolean flag = false; try {
conn = DBConnection.getConn();
String sql = \; pstmt = DBConnection.getPstmt(conn, sql); pstmt.setString(1, id);
if (pstmt.executeUpdate() > 0) { flag = true; }
} catch (SQLException e) { e.printStackTrace(); } finally {
DBConnection.closePstmt(pstmt); DBConnection.closeConn(conn); }
return flag; }
// 修改学生成绩信息
public static boolean update(Grade grade) { Connection conn = null;
PreparedStatement pstmt = null; boolean flag = false; try {
conn = DBConnection.getConn();
String sql = \grade = ? where studentID = ? and courseName = ?\; pstmt = DBConnection.getPstmt(conn, sql);
pstmt.setInt(1, grade.getSemester()); pstmt.setInt(2, grade.getSchoolYear()); pstmt.setDouble(3, grade.getGrade());
pstmt.setString(4, grade.getStudentID()); pstmt.setString(5, grade.getCourseName()); if (pstmt.executeUpdate() > 0) { flag = true; }
} catch (SQLException e) { e.printStackTrace(); } finally {
DBConnection.closePstmt(pstmt); DBConnection.closeConn(conn); }
return flag; }
public static boolean updateGrades(String studentID) { update(new Grade(studentID, \语言高级程序设计\, 2, 2012, 0)); update(new Grade(studentID, \大学英语\, 2, 2012, 0)); update(new Grade(studentID, \高等数学\, 2, 2012, 0)); update(new Grade(studentID, \沟通与演讲\, 2, 2012, 0)); update(new Grade(studentID, \数据结构\, 2, 2012, 0));
update(new Grade(studentID, \数据库原理与应用\, 2, 2012, 0)); update(new Grade(studentID, \体育\, 2, 2012, 0)); return true; }
// 按照studentID来查找学生成绩信息,返回查找到的成绩信息,没有找到则抛出异常
public static int findByID(List
// 按照姓名来查找学生成绩信息,返回查找到的成绩信息数,成绩信息将添加在List容器里面
public static int findByName(List
return find(grades, condition); }