首页 > 基础资料 博客日记

期末大作业【学生选课与成绩管理系统1】Java+MySQL数据库+可视化图形界面

2024-07-17 06:00:07基础资料围观126

Java资料网推荐期末大作业【学生选课与成绩管理系统1】Java+MySQL数据库+可视化图形界面这篇文章给大家,欢迎收藏Java资料网享受知识的乐趣

一、项目效果展示

本项目包含丰富子项目,涵盖增删改查和swing等基础java知识,Java+MySQL数据库+可视化图形界面,适用于初学者实战学习。

功能:①学籍信息管理 ②选课系统 ③教师课程信息管理 ④学生成绩管理。

代码经过精心调试,运行完全无误后发布。一共四个包,27个类,四个数据库表。如不想复制粘贴,也可以在我的Java专栏中下载本资源。

(一)总体功能结构图

本学生成绩管理系统的具体功能为三个模块和十五个子功能模块。下图为系统的总体功能结构图,如图 1-1 所示。

(二)界面演示

(三)项目结构目录

src包下建立四个package,每个package下创建相应的类名:

(四)开发环境

(1)操作系统:Windows 11
(2)数据库:MySQL
(3)开发环境:IDEA
(4)开发语言:Java

(五)项目结构

学生管理模块

  • 1 添加学生界面
  • 2 修改学生信息
  • 3 删除学生信息
  • 4 学生选课界面
  • 5 查询学生信息

课程管理模块

  • 1 添加课程信息
  • 2 修改课程信息
  • 3 删除课程信息
  • 4 课程查询

成绩管理模块

  • 1 录入成绩
  • 2 修改成
  • 3 查询成绩

(六)图形界面

添加界面:

修改界面

删除界面

选课界面

查询界面

添加课程

修改课程

删除课程

课程查询

录入成绩

修改成绩

查询成绩

二、数据库

建库

建立一个名为yybtest的数据库,下面新建4个数据表

建表

course表

grade表

student表

studenttab表

三、源代码

manager包

CourseManager类

package cvit.com.manager;
import cvit.com.manager.*;
import cvit.com.pub.DBConn;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.Connection;
import cvit.com.model.Course;
import java.sql.SQLException;
import java.util.Vector;
//课程管理类
public class CourseManager {
    //添加课程信息
    public int addCourse(Course c) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        int i = 0;
        String sql = "insert into course values('" + c.getCno()+ "', '" +
                c.getCname() + "', '" + c.getCteacher() +"', '" +
                c.getCtype() + "', '" + c.getCplace() +"', '" + c.getCtime() +"')";
        try {
            stmt = conn.createStatement();
            i = stmt.executeUpdate(sql);
            stmt.close();
            conn.close();
        } catch (Exception e1) {
            e1.printStackTrace();
        }
        return i;
    }
    //删除课程信息
    public int deleteCourse(String cno) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        int i = 0;
        String sql = "delete from course where cno='" + cno +"'";
        try {
            stmt = conn.createStatement();
            i = stmt.executeUpdate(sql);
            stmt.close();
            conn.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return i;
    }
    //修改课程信息
    public int update_Course(String cno, String cname, String cteacher,
                             String ctype, String cplace, String ctime)
    {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        int i = 0;
        String sql = "update course set cname='" + cname +"', cteacher='"+
                cteacher + "', ctype='" + ctype +"', cplace='"+
                cplace + "', ctime='" + ctime + "' wherecno='" + cno +"'";
        try {
            stmt = conn.createStatement();
            i = stmt.executeUpdate(sql);
            stmt.close();
            conn.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return i;
    }
    //根据课程编号查询课程信息
    public Course findCourse(String cno) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        String sql = "select *from course where cno='" + cno +"'";
        Course c = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            if (rs.next()) {
                c = new Course();
                c.setCno(rs.getString("cno"));
                c.setCname(rs.getString("cname"));
                c.setCteacher(rs.getString("cteacher"));
                c.setCtype(rs.getString("ctype"));
                c.setCplace(rs.getString("cplace"));
                c.setCtime(rs.getString("ctime"));
            }
            rs.close();
            stmt.close();
            conn.close();
        }
        catch (SQLException ex3) {
            ex3.printStackTrace();
        }
        return c;
    }
    //根据课程名称查询课程信息
    public Course findCourse_name(String cname) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        String sql = "select *from course where cname='" + cname+"'";
        Course c = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            if (rs.next()) {
                c = new Course();
                c.setCno(rs.getString("cno"));
                c.setCname(rs.getString("cname"));
                c.setCteacher(rs.getString("cteacher"));
                c.setCtype(rs.getString("ctype"));
                c.setCplace(rs.getString("cplace"));
                c.setCtime(rs.getString("ctime"));
            }
            rs.close();
            stmt.close();
            conn.close();
        }
        catch (SQLException ex3) {
            ex3.printStackTrace();
        }
        return c;
    }
    //根据教师名称查询课程信息
    public Course findCourse_teacher(String cteacher) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        String sql = "select *from course where cteacher='" +cteacher + "'";
        Course c = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            if (rs.next()) {
                c = new Course();
                c.setCno(rs.getString("cno"));
                c.setCname(rs.getString("cname"));
                c.setCteacher(rs.getString("cteacher"));
                c.setCtype(rs.getString("ctype"));
                c.setCplace(rs.getString("cplace"));
                c.setCtime(rs.getString("ctime"));
            }
            rs.close();
            stmt.close();
            conn.close();
        }
        catch (SQLException ex3) {
            ex3.printStackTrace();
        }
        return c;
    }
    //查询全部课程名称
    public Vector selectCourse() {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql = "select cname from course";
        Vector v = new Vector();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            while (rs.next()) {
                v.add(rs.getString("cname"));
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return v;
    }
    //获得全部教师名称
    public Vector selectCourse2() {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql = "select cteacher from course";
        Vector v = new Vector();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            while (rs.next()) {
                v.add(rs.getString("cteacher"));
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return v;
    }
    //根据课程名称查询
    public Course findOneCourse(String cname) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql ="select cno, cteacher, cplace, ctype, ctime from course where cname='" + cname + "'";
        Course c = null;
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            if (rs.next()) {
                c = new Course();
                c.setCno(rs.getString("cno"));
                c.setCteacher(rs.getString("cteacher"));
                c.setCtype(rs.getString("ctype"));
                c.setCplace(rs.getString("cplace"));
                c.setCtime(rs.getString("ctime"));
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return c;
    }
    //根据教师名称查询
    public Course findOneCourse2(String cteacher) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql ="select cno, cname, cplace, ctype, ctime from course where cteacher='" +cteacher + "'";
        Course c = null;
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            if (rs.next()) {
                c = new Course();
                c.setCno(rs.getString("cno"));
                c.setCname(rs.getString("cname"));
                c.setCtype(rs.getString("ctype"));
                c.setCplace(rs.getString("cplace"));
                c.setCtime(rs.getString("ctime"));
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return c;
    }
}

GradeManager类


package cvit.com.manager;
import cvit.com.model.Grade;
import cvit.com.pub.DBConn;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.Connection;
import cvit.com.model.Grade;
import java.sql.SQLException;
import java.util.Vector;
import cvit.com.model.ZH;
//成绩管理类
public class GradeManager {
    //添加成绩
    public int addGrade(Grade g) {
        Connection conn=null;                    //连接数据库对象
        Statement stmt=null;                     //执行sql语句的对象
        ResultSet rs=null;                       //执行sql语句的返回结果
        DBConn db = new DBConn();
        conn = db.getConn();
        int i = 0;
        String sql = "update grade set grade='" + g.getGrade() + "'where sno='" +
                g.getSno() + "'and cno='" + g.getCno() + "'";
        try {
            stmt = conn.createStatement();
            i = stmt.executeUpdate(sql);
            stmt.close();
            conn.close();
        } catch (Exception e1) {
            e1.printStackTrace();
        }
        return i;   }
    //选课
    public int chooseCourse(String sno, String cno) {
        Connection conn=null;                    //连接数据库对象
        Statement stmt=null;                     //执行sql语句的对象
        ResultSet rs=null;                       //执行sql语句的返回结果
        DBConn db = new DBConn();
        conn = db.getConn();
        int i = 0;
        String sql = "insert into grade values('" + sno + "', '" + cno +"', ' ')";
        try {
            stmt = conn.createStatement();
            i = stmt.executeUpdate(sql);
            stmt.close();
            conn.close();
        } catch (Exception e1) {
            e1.printStackTrace();
        }
        return i;
    }
    //根据学号、课程名查询一个学生成绩
    public Grade findGrade(String sno, String cno) {
        Connection conn=null;                     //连接数据库对象
        Statement stmt=null;                      //执行sql语句的对象
        ResultSet rs=null;                        //执行sql语句的返回结果
        String sql = "select *from grade where sno='" + sno + "'and cno='" + cno + "'";
        Grade g = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            if (rs.next()) {
                g = new Grade();
                g.setSno(rs.getString("sno"));
                g.setCno(rs.getString("cno"));
                g.setGrade(rs.getString("grade"));
            }
            rs.close();
            stmt.close();
            conn.close();
        }
        catch (SQLException ex3) {
            ex3.printStackTrace();
        }
        return g;
    }
    //修改成绩
    public int updateGrade(String sno, String cno, String grade) {
        Connection conn=null;                       //连接数据库对象
        Statement stmt=null;                        //执行sql语句的对象
        ResultSet rs=null;                          //执行sql语句的返回结果
        DBConn db = new DBConn();
        conn = db.getConn();
        int i = 0;
        String sql = "update grade set cno='" + cno + "', grade='" + grade +
                "' where sno='" + sno + "'";
        try {
            stmt = conn.createStatement();
            i = stmt.executeUpdate(sql);
            stmt.close();
            conn.close();
        } catch (Exception e1) {
            e1.printStackTrace();
        }
        return i;
    }
    //查询一个学生全部学科的成绩
    public Vector selectGradestudent(String sno) {

                Vector list = new Vector();
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql = "select student.sno, sname, course.cno, cname, grade from student, course, grade where grade.sno='" + sno + "'";
        ZH zh = null;
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            int i = 0;
            while (rs.next()) {
                zh = new ZH();
                zh.setCno(rs.getString("cno"));
                zh.setCname(rs.getString("cname"));
                zh.setGrade(rs.getString("grade"));
                list.add(zh);
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return list;
    }
}

StudentManager类

package cvit.com.manager;
import java.sql.ResultSet;
import cvit.com.pub.DBConn;
import java.sql.*;

import cvit.com.model.*;

import java.util.Vector;
//学生信息管理类
public class StudentManager {
    //添加学生信息
    public int addStudent(Student s) {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        DBConn db = new DBConn();
        conn = db.getConn();
        int i = 0;
        String sql = "insert into student values('" + s.getSno() + "', '" +
                s.getSname() + "', '" + s.getSsex() + "', '" + s.getSethnix() +
                "', '" + s.getShome() + "', '" + s.getSyear() + "', '" +
                s.getSmajor() + "', '" + s.getScollege() + "', '" +
                s.getSbirth() + "')";
        try {
            stmt = conn.createStatement();
            i = stmt.executeUpdate(sql);
            stmt.close();
            conn.close();
        } catch (Exception e1) {
            e1.printStackTrace();
        }
        return i;
    }
    //删除学生信息
    public int deleteUser(String sno) {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        DBConn db = new DBConn();
        conn = db.getConn();
        int i = 0;
        String sql = "delete from student where sno='" + sno + "'";
        try {
            stmt = conn.createStatement();
            i = stmt.executeUpdate(sql);
            stmt.close();
            conn.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return i;
    }
    //修改学生信息
    public int update_Student(String sno, String sname, String ssex,
                              String sethnix, String shome, String syear,
                              String smajor, String scollege, String sbirth) {
        Connection conn=null;                       //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        DBConn db = new DBConn();
        conn = db.getConn();
        int i = 0;
        String sql = "update student set sname='" + sname +"', ssex='" + ssex + "', sethnix='" + sethnix +"', shome='" + shome + "', syear='" + syear +"', smajor='" + smajor + "', scollege='" + scollege +"', sbirth='" + sbirth + "' where sno='" + sno + "'";
        try {
            stmt = conn.createStatement();
            i = stmt.executeUpdate(sql);
            stmt.close();
            conn.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return i;
    }
    //根据学号查询学生信息
    public Student findStudent(String sno) {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        String sql = "select *from student where sno='" + sno + "'";
        Student s = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            if (rs.next()) {
                s = new Student();
                s.setSno(rs.getString("sno"));
                s.setSname(rs.getString("sname"));
                s.setSsex(rs.getString("ssex"));
                s.setSethnix(rs.getString("sethnix"));
                s.setShome(rs.getString("shome"));
                s.setSyear(rs.getString("syear"));
                s.setSmajor(rs.getString("smajor"));
                s.setScollege(rs.getString("scollege"));
                s.setSbirth(rs.getString("sbirth"));
            }
            rs.close();
            stmt.close();
            conn.close();
        }
        catch (SQLException ex3) {
            ex3.printStackTrace();
        }
        return s;
    }
    //根据姓名查询学生信息
    public Student findStudentname(String sname) {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        String sql = "select *from student where sname='" + sname + "'";
        Student s = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            if (rs.next()) {
                s = new Student();
                s.setSno(rs.getString("sno"));
                s.setSname(rs.getString("sname"));
                s.setSsex(rs.getString("ssex"));
                s.setSethnix(rs.getString("sethnix"));
                s.setShome(rs.getString("shome"));
                s.setSyear(rs.getString("syear"));
                s.setSmajor(rs.getString("smajor"));
                s.setScollege(rs.getString("scollege"));
                s.setSbirth(rs.getString("sbirth"));
            }
            rs.close();
            stmt.close();
            conn.close();
        }
        catch (SQLException ex3) {
            ex3.printStackTrace();
        }
        return s;
    }
    //根据性别查询学生信息
    public Student findStudentsex(String ssex) {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        String sql = "select *from student where ssex='" + ssex + "'";
        Student s = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            if (rs.next()) {
                s = new Student();
                s.setSno(rs.getString("sno"));
                s.setSname(rs.getString("sname"));
                s.setSsex(rs.getString("ssex"));
                s.setSethnix(rs.getString("sethnix"));
                s.setShome(rs.getString("shome"));
                s.setSyear(rs.getString("syear"));
                s.setSmajor(rs.getString("smajor"));
                s.setScollege(rs.getString("scollege"));
                s.setSbirth(rs.getString("sbirth"));
            }
            rs.close();
            stmt.close();
            conn.close();
        }
        catch (SQLException ex3) {
            ex3.printStackTrace();
        }
        return s;
    }
    //根据专业查询学生信息
    public Student findStudenmajor(String smajor) {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        String sql = "select *from student where smajor='" + smajor + "'";
        Student s = null;
        DBConn db = new DBConn();
        conn = db.getConn();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            if (rs.next()) {
                s = new Student();
                s.setSno(rs.getString("sno"));
                s.setSname(rs.getString("sname"));
                s.setSsex(rs.getString("ssex"));
                s.setSethnix(rs.getString("sethnix"));
                s.setShome(rs.getString("shome"));
                s.setSyear(rs.getString("syear"));
                s.setSmajor(rs.getString("smajor"));
                s.setScollege(rs.getString("scollege"));
                s.setSbirth(rs.getString("sbirth"));
            }
            rs.close();
            stmt.close();
            conn.close();
        }
        catch (SQLException ex3) {
            ex3.printStackTrace();
        }
        return s;
    }
    //按分院查询所有学生信息
    public Vector findStudentcollege(String scollege) {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        Vector list = new Vector();
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql = "select *from student where scollege='" + scollege + "'";
        Student s = null;
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            int i = 0;
            while (rs.next()) {
                s = new Student();
                s.setSno(rs.getString("sno"));
                s.setSname(rs.getString("sname"));
                s.setSsex(rs.getString("ssex"));
                s.setSethnix(rs.getString("sethnix"));
                s.setShome(rs.getString("shome"));
                s.setSyear(rs.getString("syear"));
                s.setSmajor(rs.getString("smajor"));
                s.setScollege(rs.getString("scollege"));
                s.setSbirth(rs.getString("sbirth"));
                list.add(i,
                        s.getSno() + " " + s.getSname() + " " + s.getSsex() + " " +
                                s.getSethnix() + " " + s.getShome() + " " + s.getSyear() +
                                " " + s.getSmajor() + " " + s.getScollege() + " " +
                                s.getSbirth());
                i++;
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return list;
    }
    //获得全部分院名称
    public Vector selectStudentcollege() {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql = "select scollege from student";
        Vector v = new Vector();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            while (rs.next()) {
                v.add(rs.getString("scollege"));
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return v;
    }
    //获得全部专业
    public Vector selectStudentmajor() {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql = "select smajor from student";
        Vector v = new Vector();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            while (rs.next()) {
                v.add(rs.getString("smajor"));
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return v;
    }
    //按专业查询
    public Vector findStudentmajor(String smajor) {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        Vector list = new Vector();
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql = "select *from student where smajor='" + smajor + "'";
        Student s = null;
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            int i = 0;
            while (rs.next()) {
                s = new Student();
                s.setSno(rs.getString("sno"));
                s.setSname(rs.getString("sname"));
                s.setSsex(rs.getString("ssex"));
                s.setSethnix(rs.getString("sethnix"));
                s.setShome(rs.getString("shome"));
                s.setSyear(rs.getString("syear"));
                s.setSmajor(rs.getString("smajor"));
                s.setScollege(rs.getString("scollege"));
                s.setSbirth(rs.getString("sbirth"));
                list.add(i,
                        s.getSno() + " " + s.getSname() + " " + s.getSsex() + " " +
                                s.getSethnix() + " " + s.getShome() + " " + s.getSyear() +
                                " " + s.getSmajor() + " " + s.getScollege() + " " +
                                s.getSbirth());
                i++;
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return list;
    }
    //按性别查询
    public Vector findStudentsex1(String ssex) {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        Vector list = new Vector();
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql = "select *from student where ssex='" + ssex + "'";
        Student s = null;
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            int i = 0;
            while (rs.next()) {
                s = new Student();
                s.setSno(rs.getString("sno"));
                s.setSname(rs.getString("sname"));
                s.setSsex(rs.getString("ssex"));
                s.setSethnix(rs.getString("sethnix"));
                s.setShome(rs.getString("shome"));
                s.setSyear(rs.getString("syear"));
                s.setSmajor(rs.getString("smajor"));
                s.setScollege(rs.getString("scollege"));
                s.setSbirth(rs.getString("sbirth"));
                list.add(i,
                        s.getSno() + " " + s.getSname() + " " + s.getSsex() + " " +
                                s.getSethnix() + " " + s.getShome() + " " + s.getSyear() +
                                " " + s.getSmajor() + " " + s.getScollege() + " " +
                                s.getSbirth());
                i++;
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return list;
    }
    //按姓名查询
    public Vector find;
    Vector Student_name(String sname) {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        Vector list = new Vector();
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql = "select *from student where sname='" + sname + "'";
        Student s = null;
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            int i = 0;
            while (rs.next()) {
                s = new Student();
                s.setSno(rs.getString("sno"));
                s.setSname(rs.getString("sname"));
                s.setSsex(rs.getString("ssex"));
                s.setSethnix(rs.getString("sethnix"));
                s.setShome(rs.getString("shome"));
                s.setSyear(rs.getString("syear"));
                s.setSmajor(rs.getString("smajor"));
                s.setScollege(rs.getString("scollege"));
                s.setSbirth(rs.getString("sbirth"));
                list.add(i,
                        s.getSno() + " " + s.getSname() + " " + s.getSsex() + " " +
                                s.getSethnix() + " " + s.getShome() + " " + s.getSyear() +
                                " " + s.getSmajor() + " " + s.getScollege() + " " +
                                s.getSbirth());
                i++;
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return list;
    }
    //查询全部
    public Vector selectStudent() {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql = "select sno from student";
        Vector v = new Vector();
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            while (rs.next()) {
                v.add(rs.getString("sno"));
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return v;
    }
    //通过学号查询全部
    public String findOneStudent(String sno) {
        Connection conn=null;                        //连接数据库对象
        Statement stmt=null;                         //执行sql语句的对象
        ResultSet rs=null;                           //执行sql语句的返回结果
        DBConn db = new DBConn();
        conn = db.getConn();
        String sql = "select sname from student where sno='" + sno + "'";
        String s = "";
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            if (rs.next()) {
                s = rs.getString("sname");
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (Exception em) {
            em.printStackTrace();
            System.out.println("sql有错");
        }
        return s;
    }
}

model包

Course类

package cvit.com.model;    //包
//课程类
public class Course {
    public String cno;     //课程编号
    public String cname;   //课程名称
    public String cteacher;//任课教师
    public String ctype;   //科目类型
    public String cplace;  //上课地点
    public String ctime;   //上课时间
    //以下是set和get方法
    public void setCname(String cname) {
        this.cname = cname;
    }
    public void setCno(String cno) {
        this.cno = cno;
    }
    public void setCplace(String cplace) {
        this.cplace = cplace;
    }
    public void setCteacher(String cteacher) {
        this.cteacher = cteacher;
    }
    public void setCtime(String ctime) {
        this.ctime = ctime;
    }
    public void setCtype(String ctype) {
        this.ctype = ctype;
    }
    public String getCtype() {
        return ctype;
    }
    public String getCtime() {
        return ctime;
    }
    public String getCteacher() {
        return cteacher;
    }
    public String getCplace() {
        return cplace;
    }
    public String getCno() {
        return cno;
    }
    public String getCname() {
        return cname;
    }
}

Grade类

package cvit.com.model;
//成绩类
public class Grade {
    public String sno;    //学生学号
    public String cno;    //课程编号
    public String grade;  //成绩
    //以下是set和get方法
    public String getCno() {
        return cno;
    }
    public String getGrade() {
        return grade;
    }
    public String getSno() {
        return sno;
    }
    public void setCno(String cno) {
        this.cno = cno;
    }
    public void setGrade(String grade) {
        this.grade = grade;
    }
    public void setSno(String sno) {
        this.sno = sno;
    }
}

Student类

package cvit.com.model;//包
//学生类
public class Student {
    public String sno;       //学号
    public String sname;     //学生姓名
    public String ssex;      //学生性别
    public String sethnix;   //民族
    public String shome;     //籍贯
    public String syear;     //入学时间
    public String smajor;    //专业
    public String scollege;  //所在分院
    public String sbirth;    //出生日期
    //以下是set和get方法
    public String getSbirth() {
        return sbirth;
    }
    public String getScollege() {
        return scollege;
    }
    public String getSethnix() {
        return sethnix;
    }
    public String getShome() {
        return shome;
    }
    public String getSmajor() {
        return smajor;
    }
    public String getSname() {
        return sname;
    }
    public String getSno() {
        return sno;
    }
    public String getSsex() {
        return ssex;
    }
    public String getSyear() {
        return syear;
    }
    public void setSbirth(String sbirth) {
        this.sbirth = sbirth;
    }
    public void setScollege(String scollege) {
        this.scollege = scollege;
    }
    public void setSethnix(String sethnix) {
        this.sethnix = sethnix;
    }
    public void setShome(String shome) {
        this.shome = shome;
    }
    public void setSmajor(String smajor) {
        this.smajor = smajor;
    }
    public void setSname(String sname) {
        this.sname = sname;
    }
    public void setSno(String sno) {
        this.sno = sno;
    }
    public void setSsex(String ssex) {
        this.ssex = ssex;
    }
    public void setSyear(String syear) {
        this.syear = syear;
    }
}

ZH类

package cvit.com.model;
//综合查询类
public class ZH {
    public String sno;    //学生学号
    public String sname;  //学生姓名
    public String cno;    //课程编号
    public String cname;                      //课程名称
    public String grade;                      //成绩
    //以下是set和get方法
    public String getCname() {
        return cname;
    }
    public String getCno() {
        return cno;
    }
    public String getGrade() {
        return grade;
    }
    public String getSname() {
        return sname;
    }
    public String getSno() {
        return sno;
    }
    public void setCname(String cname) {
        this.cname = cname;
    }
    public void setCno(String cno) {
        this.cno = cno;
    }
    public void setGrade(String grade) {
        this.grade = grade;
    }
    public void setSname(String sname) {
        this.sname = sname;
    }
    public void setSno(String sno) {
        this.sno = sno;
    }
}

pub包

DBConn类

package cvit.com.pub;
import java.sql.*;
public class DBConn{                        //连接数据库
    private String driver = "com.mysql.jdbc.Driver";
    private String url = "jdbc:mysql://localhost:3306/yybtest";
    private Connection conn=null;           //连接数据库对象
    private String user="root";            //用户名
    private String pwd="x5";             //口令
    public Connection getConn() {
        try {
            Class.forName(driver);
        } catch (ClassNotFoundException ex) {
            System.out.println("加载驱动程序有错误,驱动程序类不存在");
        }
        try {
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/yybtest", "root", "x5");
        } catch (SQLException ex1) {
            System.out.print("取得连接的时候有错误,请核对用户名和密码");
        }
        return conn;
    }
    //测试是否连接数据库
    public static void main(String args[]) {
        DBConn db = new DBConn();
        Connection conn = db.getConn();
        System.out.println("Ok");
    }
}

view包

类1:AllgradePanel

package cvit.com.view;

public class AllgradePanel {
}

类2:StuMainFrame

package cvit.com.view;
import java.awt.*;
import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.*;
import java.awt.event.*;
import java.awt.Dimension;
import java.awt.Font;
import cvit.com.view.*;
//系统主界面
public class StuMainFrame extends JFrame implements ActionListener {
    //定义菜单条
    JMenuBar mb = new JMenuBar();
    //定义菜单
    JMenu systemment = new JMenu("系统管理");
    JMenu studentment = new JMenu("学生管理");
    JMenu coursement = new JMenu("课程管理");
    JMenu gradement = new JMenu("成绩管理");
    JMenu informationment = new JMenu("信息查询");
    JMenu student_select = new JMenu("学生查询");
    JMenu course_select = new JMenu("课程查询");
    JMenu grade_select = new JMenu("成绩查询");
    JMenuItem exit = new JMenuItem("退出");
    JMenuItem student_add = new JMenuItem("增加");
    JMenuItem student_update = new JMenuItem("修改");
    JMenuItem student_delete = new JMenuItem("删除");
    JMenuItem student_choose = new JMenuItem("学生选课");
    JMenuItem course_add = new JMenuItem("课程增加");
    JMenuItem course_update = new JMenuItem("课程修改");
    JMenuItem course_delete = new JMenuItem("课程删除");
    JMenuItem grade_add = new JMenuItem("成绩增加");
    JMenuItem grade_update = new JMenuItem("成绩修改");
    JMenuItem select_no = new JMenuItem("按学号查询");
    JMenuItem select_name = new JMenuItem("按学生姓名查询");
    JMenuItem select_sex = new JMenuItem("按学生性别查询");
    JMenuItem select_major = new JMenuItem("按专业查询");
    JMenuItem select_college = new JMenuItem("按学院查询");
    JMenuItem select_cname = new JMenuItem("按课程名称查询");
    JMenuItem select_cteacher = new JMenuItem("按授课教师查询");
    JMenuItem select_allgrade = new JMenuItem("查询所有科目成绩");
    JPanel p = null;
    JTextField jtf1 = new JTextField();
    BorderLayout borderLayout1 = new BorderLayout();

    public StuMainFrame() {
        try {
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }

    private void jbInit() throws Exception {
        getContentPane().setLayout(borderLayout1);
        this.getContentPane().setBackground(new Color(168, 233, 216));
        this.setJMenuBar(mb);
        jtf1.setBackground(SystemColor.control);
        jtf1.setEnabled(false);
        jtf1.setFont(new java.awt.Font("宋体", Font.BOLD, 12));
        jtf1.setForeground(Color.cyan);
        jtf1.setSelectionColor(Color.black);
        //以下是向菜单条添加菜单项
        mb.add(systemment);
        mb.add(studentment);
        mb.add(coursement);
        mb.add(gradement);
        mb.add(informationment);
        //以下是向菜单中添加菜单项
        systemment.add(exit); //系统管理退出
        studentment.add(student_add);                //学生管理
        studentment.add(student_update);
        studentment.add(student_delete);
        studentment.add(student_choose);
        coursement.add(course_add);                  //课程管理
        coursement.add(course_update);
        coursement.add(course_delete);
        gradement.add(grade_add);                    //成绩管理
        gradement.add(grade_update);
        informationment.add(student_select);         //信息查询
        informationment.add(course_select);
        informationment.add(grade_select);
        //以下是向二级菜单中添加菜单项
        student_select.add(select_no);
        student_select.add(select_name);
        student_select.add(select_sex);
        student_select.add(select_major);
        student_select.add(select_college);
        course_select.add(select_cname);
        course_select.add(select_cteacher);
        grade_select.add(select_allgrade);
        this.getContentPane().add(jtf1, java.awt.BorderLayout.SOUTH);
        exit.addActionListener(this);
        //注册菜单监听
        student_add.addActionListener(this);          //添加学生信息
        student_update.addActionListener(this);       //修改学生信息
        student_delete.addActionListener(this);       //删除学生信息
        student_choose.addActionListener(this);       //学生选课
        course_add.addActionListener(this);           //添加课程信息
        course_update.addActionListener(this);        //修改课程信息
        course_delete.addActionListener(this);        //删除学生信息
        grade_add.addActionListener(this);            //添加成绩
        grade_update.addActionListener(this);         //修改成绩
        select_no.addActionListener(this);            //按学号查询
        select_major.addActionListener(this);         //按专业查询
        select_cname.addActionListener(this);         //按课程名称查询
        select_cteacher.addActionListener(this);      //按任课教师查询
        select_college.addActionListener(this);       //按学院查询
        select_sex.addActionListener(this);           //按性别查询
        select_name.addActionListener(this);          //按姓名查询
        select_allgrade.addActionListener(this);      //所有成绩
        //版权信息
        jtf1.setText("学生信息管理系统版由CVIT开发, 盗版必究! ");
        jtf1.setHorizontalAlignment(SwingConstants.CENTER);
        this.setTitle("学生信息管理系统");            //窗体名称
        this.setSize(600, 600);                        //大小
        this.setVisible(true);                        //可见性
        //以下为设置窗体居中
        //获得屏幕的宽和高
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        //获得当前窗体的宽和高
        Dimension frameSize = this.getSize();
        //设置窗体居中
        if (frameSize.height > screenSize.height) {
            frameSize.height = screenSize.height;
        }
        if (frameSize.width > screenSize.width) {
            frameSize.width = screenSize.width;
        }
        this.setLocation((screenSize.width - frameSize.width) / 2,
                (screenSize.height - frameSize.height) / 2);
        this.setVisible(true);
    }

    public static void main(String[] args) {
        StuMainFrame sm = new StuMainFrame();
    }

    public void actionPerformed(ActionEvent e) {
        if (e.getSource() == exit) {                   //退出
            this.setVisible(false);
        }
        //添加学生信息
        if (e.getSource() == student_add) {
            if (p != null) {
                this.remove(p);
            }
            //定义一个添加学生信息页面的对象
            p = new Add_studentPanel();
            //将panel放在页面的中间
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //修改学生信息
        if (e.getSource() == student_update) {
            if (p != null) {
                this.remove(p);
            }
            p = new Update_studentPanel();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //删除学生信息
        if (e.getSource() == student_delete) {
            if (p != null) {
                this.remove(p);
            }
            p = new Delete_studentPanel();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //学生选课
        if (e.getSource() == student_choose) {
            if (p != null) {
                this.remove(p);
            }
            p = new Student_choosePanel();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //添加课程信息
        if (e.getSource() == course_add) {
            if (p != null) {
                this.remove(p);
            }
            p = new Add_coursePanel();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //修改课程信息
        if (e.getSource() == course_update) {
            if (p != null) {
                this.remove(p);
            }
            p = new Update_coursePanel();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //删除课程信息
        if (e.getSource() == course_delete) {
            if (p != null) {
                this.remove(p);
            }
            p = new Delete_coursePanel();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //成绩添加
        if (e.getSource() == grade_add) {
            if (p != null) {
                this.remove(p);
            }
            p = new Add_gradePanel();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //成绩修改
        if (e.getSource() == grade_update) {
            if (p != null) {
                this.remove(p);
            }
            p = new Update_gradePanel();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //按学号查询
        if (e.getSource() == select_no) {
            if (p != null) {
                this.remove(p);
            }
            p = new Select_studentnoPanel1();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //按分院查询
        if (e.getSource() == select_college) {
            if (p != null) {
                this.remove(p);
            }
            p = new Select_studentcollegePanel();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //按专业查询
        if (e.getSource() == select_major) {
            if (p != null) {
                this.remove(p);
            }
            p = new Select_studentmajorPanel1();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //按课程名称查询
        if (e.getSource() == select_cname) {
            if (p != null) {
                this.remove(p);
            }
            p = new Select_coursecnamePanel();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //按任课教师查询
        if (e.getSource() == select_cteacher) {
            if (p != null) {
                this.remove(p);
            }
            p = new Select_coursecteacherPanel1();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //按学生姓名查询
        if (e.getSource() == select_name) {
            if (p != null) {
                this.remove(p);
            }
            p = new Select_studentnamePanel();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //按性别查询
        if (e.getSource() == select_sex) {
            if (p != null) {
                this.remove(p);
            }
            p = new Select_studentsexPanel();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
        //查询所有科目成绩
        if (e.getSource() == select_allgrade) {
            if (p != null) {
                this.remove(p);
            }
            p = new Select_gradestudentPanel1();
            this.getContentPane().add(p, java.awt.BorderLayout.CENTER);
            this.setVisible(true);
        }
    }
}

类3:Add_coursePanel

package cvit.com.view;
import cvit.com.manager.CourseManager;
import cvit.com.model.Course;
import javax.swing.JPanel;
import java.awt.Color;
import javax.swing.JLabel;
import java.awt.Rectangle;
import javax.swing.JButton;
import javax.swing.JTextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;
import cvit.com.manager.CourseManager;
//添加课程
public class Add_coursePanel extends JPanel {
    public Add_coursePanel() {
        try {
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }
    private void jbInit() throws Exception {
        this.setLayout(null);
        this.setBackground(new Color(168, 233, 216));
        btn_add.setBounds(new Rectangle(37, 182, 81, 23));
        btn_add.setText("添加");
        btn_add.addActionListener(new Add_coursePanel_btn_add_actionAdapter(this));
        btn_null.setBounds(new Rectangle(153, 182, 81, 23));
        btn_null.setText("清空");
        btn_null.addActionListener(new Add_coursePanel_btn_null_actionAdapter(this));
        btn_exit.setBounds(new Rectangle(267, 182, 81, 23));
        btn_exit.setText("退出");
        btn_exit.addActionListener(new Add_coursePanel_btn_exit_actionAdapter(this));
        jLabel1.setText("课程类别");
        jLabel1.setBounds(new Rectangle(198, 87, 62, 15));
        jLabel2.setToolTipText("");
        jLabel2.setText("授课教师");
        jLabel2.setBounds(new Rectangle(19, 89, 53, 15));
        tctime.setBounds(new Rectangle(265, 123, 77, 20));
        tcno.setBounds(new Rectangle(93, 45, 77, 20));
        tteacher.setBounds(new Rectangle(91, 85, 77, 20));
        jLabel3.setText("上课时间");
        jLabel3.setBounds(new Rectangle(199, 124, 57, 15));
        jLabel4.setText("课程编码");
        jLabel4.setBounds(new Rectangle(20, 47, 65, 15));
        jLabel5.setText("课程名称");
        jLabel5.setBounds(new Rectangle(201, 47, 60, 15));
        tcplace.setBounds(new Rectangle(93, 123, 77, 20));
        tctype.setBounds(new Rectangle(265, 85, 77, 20));
        tcname.setBounds(new Rectangle(264, 44, 77, 20));
        jLabel6.setText("上课地点");
        jLabel6.setBounds(new Rectangle(19, 124, 67, 15));
        this.add(tteacher);
        this.add(jLabel1);
        this.add(tctime);
        this.add(tcno);
        this.add(jLabel3);
        this.add(jLabel5);
        this.add(tcplace);
        this.add(tctype);
        this.add(tcname);
        this.add(jLabel6);
        this.add(jLabel4);
        this.add(btn_null);
        this.add(btn_add);
        this.add(btn_exit);
        this.add(jLabel2);
        this.setVisible(true);               //窗体可见性
        this.setSize(600, 600);               //设置窗体大小
    }
    JButton btn_add = new JButton();
    JButton btn_null = new JButton();
    JButton btn_exit = new JButton();
    JLabel jLabel1 = new JLabel();
    JLabel jLabel2 = new JLabel();
    JTextField tctime = new JTextField();
    JTextField tcno = new JTextField();
    JTextField tteacher = new JTextField();
    JLabel jLabel3 = new JLabel();
    JLabel jLabel4 = new JLabel();
    JLabel jLabel5 = new JLabel();
    JTextField tcplace = new JTextField();
    JTextField tctype = new JTextField();
    JTextField tcname = new JTextField();
    JLabel jLabel6 = new JLabel();
    public void btn_add_actionPerformed(ActionEvent e) {
        String cno="";                        //定义空的学生信息属性
        String cname = "";
        String cteacher = "";
        String ctype = "";
        String cplace = "";
        String ctime = "";
        if (!tcno.getText().equals("")) {
            cno=tcno.getText();                //获得课程名称文本框中的内容
        } else {
            JOptionPane.showMessageDialog(this, "课程编码不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        if (!tcname.getText().equals("")) {
            cname = tcname.getText();
        } else {
            JOptionPane.showMessageDialog(this, "课程名称不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        if (!tteacher.getText().equals("")) {
            cteacher = tteacher.getText();
        } else {
            JOptionPane.showMessageDialog(this, "授课教师不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        if (!tctype.getText().equals("")) {
            ctype = tctype.getText();
        } else {
            JOptionPane.showMessageDialog(this, "课程类别不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        if (!tcplace.getText().equals("")) {
            cplace = tcplace.getText();
        } else {
            JOptionPane.showMessageDialog(this, "上课地点不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        if (!tctime.getText().equals("")) {
            ctime = tctime.getText();
        } else {
            JOptionPane.showMessageDialog(this, "上课时间不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        Course c=new Course();                //定义课程信息并对信息封装
        c.setCno(cno);
        c.setCname(cname);
        c.setCteacher(cteacher);
        c.setCtype(ctype);
        c.setCplace(cplace);
        c.setCtime(ctime);
        CourseManager cm = new CourseManager();
        int i=cm.addCourse(c);                //调用添加课程信息方法
        if (i > 0) {
            JOptionPane.showMessageDialog(this, "添加成功!", "提示信息",
                    JOptionPane.INFORMATION_MESSAGE);
            tcno.setText("");                 //清空文本框内容
            tcname.setText("");
            tctype.setText("");
            tcplace.setText("");
            tteacher.setText("");
            tctime.setText("");
        } else {
            JOptionPane.showMessageDialog(this, "添加失败!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
        }
    }
    public void btn_null_actionPerformed(ActionEvent e) {
        tcno.setText("");                      //清空文本框内容
        tcname.setText("");
        tteacher.setText("");
        tctype.setText("");
        tcplace.setText("");
        tctime.setText("");
    }
    //退出按钮关闭当前页面
    public void btn_exit_actionPerformed(ActionEvent e) {
        this.setVisible(false);
    }
}
class Add_coursePanel_btn_exit_actionAdapter implements ActionListener {
    private Add_coursePanel adaptee;
    Add_coursePanel_btn_exit_actionAdapter(Add_coursePanel adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        adaptee.btn_exit_actionPerformed(e);
    }
}
class Add_coursePanel_btn_null_actionAdapter implements ActionListener {
    private Add_coursePanel adaptee;
    Add_coursePanel_btn_null_actionAdapter(Add_coursePanel adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        adaptee.btn_null_actionPerformed(e);
    }
}
class Add_coursePanel_btn_add_actionAdapter implements ActionListener {
    private Add_coursePanel adaptee;
    Add_coursePanel_btn_add_actionAdapter(Add_coursePanel adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        adaptee.btn_add_actionPerformed(e);
    }
}

类4:Add_gradePanel

package cvit.com.view;
import javax.swing.JPanel;
import java.awt.Color;
import javax.swing.JLabel;
import java.awt.Rectangle;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JTextField;
import cvit.com.manager.CourseManager;
import cvit.com.manager.StudentManager;
import java.util.Vector;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import cvit.com.model.Course;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import cvit.com.model.Grade;
import javax.swing.JOptionPane;
import cvit.com.manager.GradeManager;
//添加分数
public class Add_gradePanel extends JPanel {
    public Add_gradePanel() {
        try {
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }
    private void jbInit() throws Exception {
        this.setLayout(null);
        this.setBackground(new Color(168, 233, 216));
        jLabel1.setText("学号");
        jLabel1.setBounds(new Rectangle(30, 22, 42, 15));
        jLabel2.setText("姓名");
        jLabel2.setBounds(new Rectangle(200, 20, 42, 15));
        jLabel3.setText("课程名称");
        jLabel3.setBounds(new Rectangle(23, 76, 55, 15));
        jLabel4.setText("课程编码");
        jLabel4.setBounds(new Rectangle(201, 74, 57, 15));
        jLabel5.setText("授课教师");
        jLabel5.setBounds(new Rectangle(15, 129, 61, 15));
        jLabel6.setText("成绩");
        jLabel6.setBounds(new Rectangle(202, 129, 42, 15));
        btn_add.setBounds(new Rectangle(76, 176, 81, 23));
        btn_add.setText("增加");
        btn_add.addActionListener(new addcjPanel1_btn_add_actionAdapter(this));
        btn_exit.setBounds(new Rectangle(233, 175, 81, 23));
        btn_exit.setText("退出");
        btn_exit.addActionListener(new addcjPanel1_btn_exit_actionAdapter(this));
        jcb_sno.setBounds(new Rectangle(91, 17, 89, 23));
        jcb_sno.addItemListener(new addcjPanel1_jcb_sno_itemAdapter(this));
        jcb_cname.setBounds(new Rectangle(92, 72, 89, 23));
        jcb_cname.addItemListener(new addcjPanel1_jcb_cname_itemAdapter(this));
        tsname.setEnabled(false);
        tsname.setBounds(new Rectangle(261, 19, 77, 20));
        tcno.setEnabled(false);
        tcno.setBounds(new Rectangle(260, 74, 77, 20));
        tcteacher.setEnabled(false);
        tcteacher.setBounds(new Rectangle(91, 127, 77, 20));
        tgrade.setBounds(new Rectangle(262, 127, 77, 20));
        this.add(jLabel2);
        this.add(jcb_sno);
        this.add(tsname);
        this.add(jLabel1);
        this.add(tcno);
        this.add(jLabel4);
        this.add(jcb_cname);
        this.add(jLabel3);
        this.add(tcteacher);
        this.add(jLabel5);
        this.add(jLabel6);
        this.add(tgrade);
        this.add(btn_exit);
        this.add(btn_add);
        this.setVisible(true);
        this.setSize(600, 600);
        Vector v=sm.selectStudent();              //调用查询所有学号方法
        for (int i = 0; i < v.size(); i++) {
            jcb_sno.addItem(v.get(i).toString()); //将数据库所有学号添加到下拉列表中
        }
        Vector v1=cm.selectCourse();              //调用查询所有科目名称方法
        for (int i = 0; i < v1.size(); i++) {
            jcb_cname.addItem(v1.get(i).toString());    //将数据库中所有的课程名称添加到列表中
        }
    }
    JLabel jLabel1 = new JLabel();
    JLabel jLabel2 = new JLabel();
    JLabel jLabel3 = new JLabel();
    JLabel jLabel4 = new JLabel();
    JLabel jLabel5 = new JLabel();
    JLabel jLabel6 = new JLabel();
    JButton btn_add = new JButton();
    JButton btn_exit = new JButton();
    JComboBox jcb_sno = new JComboBox();
    JComboBox jcb_cname = new JComboBox();
    JTextField tsname = new JTextField();
    JTextField tcno = new JTextField();
    JTextField tcteacher = new JTextField();
    JTextField tgrade = new JTextField();
    StudentManager sm=new StudentManager();        //初始化中定义学生管理对象
    CourseManager cm=new CourseManager();          //初始化中定义课程管理对象
    public static void main(String[] args) {Add_gradePanel sm = new Add_gradePanel();
    }
    public void jcb_sno_itemStateChanged(ItemEvent e) {
        //调用按学号查询学生信息方法
        tsname.setText(sm.findOneStudent(jcb_sno.getSelectedItem().toString()));
    }
    public void jcb_cname_itemStateChanged(ItemEvent e) {
        //调用按课程名称查询课程信息方法
        Course c = cm.findOneCourse(jcb_cname.getSelectedItem().toString());
        tcno.setText(c.getCno());
        tcteacher.setText(c.getCteacher());
    }
    public void btn_exit_actionPerformed(ActionEvent e) {
        this.setVisible(false);
    }
    public void btn_add_actionPerformed(ActionEvent e) {
        String sno = (String) jcb_sno.getSelectedItem();
        String cno = tcno.getText();
        String grade = tgrade.getText();
        Grade g = new Grade();
        g.setSno(sno);
        g.setCno(cno);
        g.setGrade(grade);
        GradeManager gm = new GradeManager();
        int i=gm.addGrade(g);                      //调用添加成绩方法
        if (i > 0) {
            JOptionPane.showMessageDialog(this, "添加成功!", "提示信息",
                    JOptionPane.INFORMATION_MESSAGE);
        } else {
            JOptionPane.showMessageDialog(this, "学生与实际选课科目不符,请核对!",
                    "提示信息", JOptionPane.ERROR_MESSAGE);
        }
    }
}
class addcjPanel1_btn_add_actionAdapter implements ActionListener {
    private Add_gradePanel adaptee;
    addcjPanel1_btn_add_actionAdapter(Add_gradePanel adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        adaptee.btn_add_actionPerformed(e);
    }
}
class addcjPanel1_btn_exit_actionAdapter implements ActionListener {
    private Add_gradePanel adaptee;
    addcjPanel1_btn_exit_actionAdapter(Add_gradePanel adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        adaptee.btn_exit_actionPerformed(e);
    }
}
class addcjPanel1_jcb_cname_itemAdapter implements ItemListener {
    private Add_gradePanel adaptee;
    addcjPanel1_jcb_cname_itemAdapter(Add_gradePanel adaptee) {
        this.adaptee = adaptee;
    }
    public void itemStateChanged(ItemEvent e) {
        adaptee.jcb_cname_itemStateChanged(e);
    }
}
class addcjPanel1_jcb_sno_itemAdapter implements ItemListener {
    private Add_gradePanel adaptee;
    addcjPanel1_jcb_sno_itemAdapter(Add_gradePanel adaptee) {
        this.adaptee = adaptee;
    }
    public void itemStateChanged(ItemEvent e) {
        adaptee.jcb_sno_itemStateChanged(e);
    }
}

类5:Add_studentPanel

package cvit.com.view;
import cvit.com.manager.StudentManager;
import cvit.com.model.Student;
import javax.swing.JPanel;
import javax.swing.JButton;
import java.awt.Rectangle;
import javax.swing.JLabel;
import javax.swing.JTextField;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;
import javax.swing.JComboBox;
//添加学生信息
public class Add_studentPanel extends JPanel {
    public Add_studentPanel() {
        try {
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }
    private void jbInit() throws Exception {
        this.setLayout(null);
        this.setSize(600, 600);
        this.setBackground(new Color(168, 233, 216));
        this.setVisible(true);
        jLabel1.setText("学号");
        jLabel1.setBounds(new Rectangle(15, 36, 42, 15));
        jLabel2.setText("性别");
        jLabel2.setBounds(new Rectangle(14, 74, 42, 15));
        tsno.setBounds(new Rectangle(79, 33, 77, 20));
        jLabel3.setText("姓名");
        jLabel3.setBounds(new Rectangle(187, 35, 42, 15));
        jLabel4.setText("民族");
        jLabel4.setBounds(new Rectangle(184, 75, 42, 15));
        tsname.setBounds(new Rectangle(250, 32, 77, 20));
        jLabel5.setText("出生日期");
        jLabel5.setBounds(new Rectangle(5, 112, 67, 15));
        jLabel6.setText("入学时间");
        jLabel6.setBounds(new Rectangle(185, 112, 57, 15));
        tsbirth.setBounds(new Rectangle(79, 111, 77, 20));
        tstime.setBounds(new Rectangle(251, 111, 77, 20));
        jLabel7.setText("学院");
        jLabel7.setBounds(new Rectangle(15, 154, 42, 15));
        tscollege.setBounds(new Rectangle(79, 153, 77, 20));
        jLabel8.setText("专业");
        jLabel8.setBounds(new Rectangle(188, 154, 42, 15));
        tsmajor.setBounds(new Rectangle(251, 156, 77, 20));
        jLabel9.setText("籍贯");
        jLabel9.setBounds(new Rectangle(16, 197, 42, 15));
        tsplace.setBounds(new Rectangle(77, 198, 251, 20));
        btn1.setBounds(new Rectangle(35, 247, 81, 23));
        btn1.setText("添加");
        btn1.addActionListener(new Add_studentPanel_btn1_actionAdapter(this));
        btn2.setBounds(new Rectangle(151, 247, 81, 23));
        btn2.setText("清空");
        btn2.addActionListener(new Add_studentPanel_btn2_actionAdapter(this));
        btn3.setBounds(new Rectangle(265, 247, 81, 23));
        btn3.setText("退出");
        btn3.addActionListener(new Add_studentPanel_btn3_actionAdapter(this));
        jcb_sex.setBounds(new Rectangle(77, 66, 43, 23));
        jcb_ethnix.setBounds(new Rectangle(253, 66, 58, 23));
        this.add(tsno);
        this.add(jLabel3);
        this.add(tsname);
        this.add(btn1);
        this.add(btn2);
        this.add(jLabel5);
        this.add(jLabel1);
        this.add(tscollege);
        this.add(tsbirth);
        this.add(tstime);
        this.add(jLabel6);
        this.add(jLabel4);
        this.add(jLabel2);
        this.add(jLabel7);
        this.add(jLabel8);
        this.add(tsmajor);
        this.add(jLabel9);
        this.add(tsplace);
        this.add(btn3);
        this.add(jcb_ethnix);
        this.add(jcb_sex);
        jcb_sex.addItem("男");                                  //向性别的列表中添加内容
        jcb_sex.addItem("女");
        jcb_ethnix.addItem("汉族");                             //向民族的列表中添加内容
        jcb_ethnix.addItem("蒙族");
        jcb_ethnix.addItem("回族");
        jcb_ethnix.addItem("满族");
    }
    JLabel jLabel1 = new JLabel();
    JLabel jLabel2 = new JLabel();
    JTextField tsno = new JTextField();
    JLabel jLabel3 = new JLabel();
    JLabel jLabel4 = new JLabel();
    JTextField tsname = new JTextField();
    JLabel jLabel5 = new JLabel();
    JLabel jLabel6 = new JLabel();
    JTextField tsbirth = new JTextField();
    JTextField tstime = new JTextField();
    JLabel jLabel7 = new JLabel();
    JTextField tscollege = new JTextField();
    JLabel jLabel8 = new JLabel();
    JTextField tsmajor = new JTextField();
    JLabel jLabel9 = new JLabel();
    JTextField tsplace = new JTextField();
    JButton btn1 = new JButton();
    JButton btn2 = new JButton();
    JButton btn3 = new JButton();
    JComboBox jcb_sex = new JComboBox();
    JComboBox jcb_ethnix = new JComboBox();
    public void btn1_actionPerformed(ActionEvent actionEvent) {
        //定义空的学生信息属性
        String sno = "";
        String sname = "";
        String ssex = "";
        String sbirth = "";
        String syear = "";
        String shome = "";
        String smajor = "";
        String scollege = "";
        if (!tsno.getText().equals("")) {
            sno = tsno.getText();
        } else {
            //弹出对话框信息
            JOptionPane.showMessageDialog(this, "学号不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        if (!tsname.getText().equals("")) {
            sname = tsname.getText();
        } else {
            JOptionPane.showMessageDialog(this, "姓名不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        if (!tsbirth.getText().equals("")) {
            sbirth = tsbirth.getText();
        } else {
            JOptionPane.showMessageDialog(this, "出生日期不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        if (!tstime.getText().equals("")) {
            syear = tstime.getText();
        } else {
            JOptionPane.showMessageDialog(this, "入学时间不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        if (!tscollege.getText().equals("")) {
            scollege = tscollege.getText();
        } else {
            JOptionPane.showMessageDialog(this, "学院不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        if (!tsmajor.getText().equals("")) {
            smajor = tsmajor.getText();
        } else {
            JOptionPane.showMessageDialog(this, "专业不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        if (!tsplace.getText().equals("")) {
            shome = tsplace.getText();
        } else {
            JOptionPane.showMessageDialog(this, "籍贯不能为空!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
            return;
        }
        ssex=jcb_sex.getSelectedItem().toString();               //获得列表中选定的性别信息
        String sethnix=jcb_ethnix.getSelectedItem().toString();  //获得民族列表总选到的信息
        Student s=new Student();                                 //定义学生对象s进行封装学生信息
        s.setSno(sno);
        s.setSname(sname);
        s.setSsex(ssex);
        s.setSethnix(sethnix);
        s.setShome(shome);
        s.setSyear(syear);
        s.setSmajor(smajor);
        s.setScollege(scollege);
        s.setSbirth(sbirth);
        StudentManager sm=new StudentManager();                  //定义学生管理对象sm
        int i=sm.addStudent(s);                                  //调用添加学生信息方法
        if (i > 0) {
            JOptionPane.showMessageDialog(this, "添加成功!", "提示信息",
                    JOptionPane.INFORMATION_MESSAGE);
            tsno.setText("");
            tsname.setText("");
            tsplace.setText("");
            tstime.setText("");
            tsmajor.setText("");
            tscollege.setText("");
            tsbirth.setText("");
        } else {
            JOptionPane.showMessageDialog(this, "添加失败!", "提示信息",
                    JOptionPane.ERROR_MESSAGE);
        }
    }
    //退出按钮关闭当前页面
    public void btn3_actionPerformed(ActionEvent e) {
        this.setVisible(false);
    }
    //清空按钮清空各文本框中的内容
    public void btn2_actionPerformed(ActionEvent e) {
        tsno.setText("");
        tsname.setText("");
        tsplace.setText("");
        tstime.setText("");
        tsmajor.setText("");
        tscollege.setText("");
        tsbirth.setText("");
    }
}
//监听
class Add_studentPanel_btn2_actionAdapter implements ActionListener {
    private Add_studentPanel adaptee;                            //编码时双击添加按钮自动生成代码
    Add_studentPanel_btn2_actionAdapter(Add_studentPanel adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        adaptee.btn2_actionPerformed(e);
    }
}
class Add_studentPanel_btn3_actionAdapter implements ActionListener {
    private Add_studentPanel adaptee;
    Add_studentPanel_btn3_actionAdapter(Add_studentPanel adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        adaptee.btn3_actionPerformed(e);
    }
}
class Add_studentPanel_btn1_actionAdapter implements ActionListener {
    private Add_studentPanel adaptee;
    Add_studentPanel_btn1_actionAdapter(Add_studentPanel adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent actionEvent) {
        adaptee.btn1_actionPerformed(actionEvent);
    }
}

类6:Delete_CoursePanel

package cvit.com.view;
import cvit.com.manager.CourseManager;
import javax.swing.JPanel;
import java.awt.Color;
import javax.swing.JTextField;
import java.awt.Rectangle;
import javax.swing.JLabel;
import javax.swing.JButton;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;
//删除科目
public class Delete_coursePanel extends JPanel {
    public Delete_coursePanel() {
        try {
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }
    private void jbInit() throws Exception {
        this.setLayout(null);
        this.setBackground(new Color(168, 233, 216));
        tcno.setBounds(new Rectangle(78, 76, 130, 20));
        jLabel1.setText("课程编号");
        jLabel1.setBounds(new Rectangle(8, 81, 66, 15));
        btn_delete.setBounds(new Rectangle(228, 72, 71, 23));
        btn_delete.setText("删除");
        btn_delete.addActionListener(new
                Delete_coursePanel_btn_delete_actionAdapter(this));
        btn_exit.setBounds(new Rectangle(320, 72, 69, 23));
        btn_exit.setText("退出");
        btn_exit.addActionListener(new
                Delete_coursePanel_btn_exit_actionAdapter(this));
        this.add(tcno);
        this.add(jLabel1);
        this.add(btn_delete);
        this.add(btn_exit);
        this.setVisible(true);               //可见性
        this.setSize(600, 600);               //窗体大小
    }
    JTextField tcno = new JTextField();
    JLabel jLabel1 = new JLabel();
    JButton btn_delete = new JButton();
    JButton btn_exit = new JButton();
    public void btn_delete_actionPerformed(ActionEvent e) {
        String cno=tcno.getText();            //获得课程编码
        CourseManager cm = new CourseManager();
        int ok = JOptionPane.showConfirmDialog(this,
                "是否删除" + tcno.getText() + "课程?", "提示信息", JOptionPane.OK_CANCEL_OPTION);
        if (ok == JOptionPane.OK_OPTION) {
            int i=cm.deleteCourse(cno);        //调用删除课程信息方法
            if (i > 0) {
                JOptionPane.showMessageDialog(this, "删除成功!", "提示信息",
                        JOptionPane.INFORMATION_MESSAGE);
            } else {
                JOptionPane.showMessageDialog(this, "你要删除的课程不存在!",
                        "提示信息", JOptionPane.ERROR_MESSAGE);
                tcno.setText("");
            }
            tcno.setText("");
        }
    }
    public void btn_exit_actionPerformed(ActionEvent e) {
        this.setVisible(false);
    }
    class Delete_coursePanel_btn_delete_actionAdapter implements ActionListener {
        private Delete_coursePanel adaptee;
        Delete_coursePanel_btn_delete_actionAdapter(Delete_coursePanel adaptee) {
            this.adaptee = adaptee;
        }
        public void actionPerformed(ActionEvent e) {
            adaptee.btn_delete_actionPerformed(e);
        }
    }
}
class Delete_coursePanel_btn_exit_actionAdapter implements ActionListener {
    private Delete_coursePanel adaptee;
    Delete_coursePanel_btn_exit_actionAdapter(Delete_coursePanel adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        adaptee.btn_exit_actionPerformed(e);
    }
}

类7:Delete_studentPanel

package cvit.com.view;
import cvit.com.manager.StudentManager;
import javax.swing.JPanel;
import java.awt.Color;
import javax.swing.JTextField;
import java.awt.Rectangle;
import javax.swing.JLabel;
import javax.swing.JButton;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;
//删除学生信息
public class Delete_studentPanel extends JPanel {
    public Delete_studentPanel() {
        try {
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }
    private void jbInit() throws Exception {
        this.setLayout(null);
        this.setBackground(new Color(168, 233, 216));
        tsno.setBounds(new Rectangle(78, 76, 130, 20));
        jLabel1.setText("学号");
        jLabel1.setBounds(new Rectangle(32, 81, 42, 15));
        btn_delete.setBounds(new Rectangle(235, 76, 81, 23));
        btn_delete.setText("删除");
        btn_delete.addActionListener(new Delete_studentPanel_btn_delete_actionAdapter(this));
        btn_exit.setBounds(new Rectangle(233, 111, 81, 23));
        btn_exit.setText("退出");
        btn_exit.addActionListener(new
                Delete_studentPanel_btn_exit_actionAdapter(this));
        this.add(tsno);
        this.add(jLabel1);
        this.add(btn_delete);
        this.add(btn_exit);
        this.setVisible(true);                   //可见性
        this.setSize(600, 600);                   //窗体大小
    }
    JTextField tsno = new JTextField();
    JLabel jLabel1 = new JLabel();
    JButton btn_delete = new JButton();
    JButton btn_exit = new JButton();
    public void btn_delete_actionPerformed(ActionEvent e) {
        String sno=tsno.getText();               //获得学号文本框中的学号
        StudentManager sm=new StudentManager();  //定义学生管理对象sm
        int ok = JOptionPane.showConfirmDialog(this, "是否删除" + tsno.getText() + "同学? ", "提示信息",
                JOptionPane.OK_CANCEL_OPTION);
        if (ok == JOptionPane.OK_OPTION) {
            int i=sm.deleteUser(sno);            //调用删除学生方法
            if (i > 0) {
                JOptionPane.showMessageDialog(this, "删除成功!", "提示信息",
                        JOptionPane.INFORMATION_MESSAGE);
            } else {
                JOptionPane.showMessageDialog(this, "你要删除的同学不存在!",
                        "提示信息", JOptionPane.ERROR_MESSAGE);
            }
            tsno.setText("");
        }
    }
    //退出按钮关闭页面
    public void btn_exit_actionPerformed(ActionEvent e) {
        this.setVisible(false);
    }
}
class Delete_studentPanel_btn_exit_actionAdapter implements ActionListener {
    private Delete_studentPanel adaptee;
    Delete_studentPanel_btn_exit_actionAdapter(Delete_studentPanel adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        adaptee.btn_exit_actionPerformed(e);
    }
}
class Delete_studentPanel_btn_delete_actionAdapter implements ActionListener {
    private Delete_studentPanel adaptee;
    Delete_studentPanel_btn_delete_actionAdapter(Delete_studentPanel adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        adaptee.btn_delete_actionPerformed(e);
    }
}

类8:Select_coursecnamePanel

package cvit.com.view;
import javax.swing.JPanel;
import java.awt.Color;
import javax.swing.JLabel;
import java.awt.Rectangle;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import cvit.com.manager.CourseManager;
import cvit.com.model.Course;
import javax.swing.JComboBox;
import java.util.Vector;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
//根据课程名称查询
public class Select_coursecnamePanel extends JPanel {
    public Select_coursecnamePanel() {
        try {
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }
    private void jbInit() throws Exception {
        this.setLayout(null);
        this.setBackground(new Color(168, 233, 216));
        jLabel1.setToolTipText("");
        jLabel1.setText("授课教师");
        jLabel1.setBounds(new Rectangle(18, 86, 53, 15));
        jLabel2.setText("课程类别");
        jLabel2.setBounds(new Rectangle(198, 87, 62, 15));
        tctime.setEnabled(false);
        tctime.setBounds(new Rectangle(265, 123, 77, 20));
        tcno.setEnabled(false);
        tcno.setBounds(new Rectangle(266, 40, 77, 20));
        tcteacher.setEnabled(false);
        tcteacher.setBounds(new Rectangle(91, 85, 93, 20));
        jLabel3.setText("课程名称");
        jLabel3.setBounds(new Rectangle(20, 45, 60, 15));
        jLabel4.setText("课程编码");
        jLabel4.setBounds(new Rectangle(193, 42, 65, 15));
        jLabel5.setText("上课时间");
        jLabel5.setBounds(new Rectangle(199, 124, 57, 15));
        tctype.setEnabled(false);
        tctype.setBounds(new Rectangle(265, 85, 77, 20));
        tcplace.setEnabled(false);
        tcplace.setBounds(new Rectangle(93, 123, 90, 20));
        jLabel6.setText("上课地点");
        jLabel6.setBounds(new Rectangle(19, 124, 67, 15));
        btn_exit.setBounds(new Rectangle(22, 172, 81, 23));
        btn_exit.setText("退出");
        btn_exit.addActionListener(new
                Select_coursePanel_btn_exit_actionAdapter(this));
        jcb_cname.setBounds(new Rectangle(89, 41, 97, 23));
        jcb_cname.addItemListener(new
                Select_coursecnamePanel_jcb_cname_itemAdapter(this));
        this.add(jLabel2);
        this.add(tctime);
        this.add(tcteacher);
        this.add(jLabel5);
        this.add(tctype);
        this.add(tcplace);
        this.add(jLabel6);
        this.add(tcno);
        this.add(jLabel4);
        this.add(jLabel3);
        this.add(jLabel1);
        this.add(jcb_cname);
        this.add(btn_exit);
        Vector v1=cm.selectCourse();                      //调用查询所有课程名称方法
        for (int i = 0; i < v1.size();i++) {
            jcb_cname.addItem(v1.get(i).toString());      //将查询结果添加到下拉列表中
        }
        this.setVisible(true);
        this.setSize(600, 600);
    }
    JLabel jLabel1 = new JLabel();
    JLabel jLabel2 = new JLabel();
    JTextField tctime = new JTextField();
    JTextField tcno = new JTextField();
    JTextField tcteacher = new JTextField();
    JLabel jLabel3 = new JLabel();
    JLabel jLabel4 = new JLabel();
    JLabel jLabel5 = new JLabel();
    JTextField tctype = new JTextField();
    JTextField tcplace = new JTextField();
    JLabel jLabel6 = new JLabel();
    JButton btn_exit = new JButton();
    JComboBox jcb_cname = new JComboBox();
    CourseManager cm = new CourseManager();
    public void btn_exit_actionPerformed(ActionEvent e) {
        this.setVisible(false);
    }
    public void jcb_cname_itemStateChanged(ItemEvent e) {
        //调用按课程名称查询课程信息
        Course c = cm.findOneCourse(jcb_cname.getSelectedItem().toString());
        tcno.setText(c.getCno());
        tcteacher.setText(c.getCteacher());
        tcplace.setText(c.getCplace());
        tctype.setText(c.getCtype());
        tcplace.setText(c.getCplace());
        tctime.setText(c.getCtime());
    }
}
class Select_coursecnamePanel_jcb_cname_itemAdapter implements ItemListener {
    private Select_coursecnamePanel adaptee;
    Select_coursecnamePanel_jcb_cname_itemAdapter(Select_coursecnamePanel adaptee) {
        this.adaptee = adaptee;
    }
    public void itemStateChanged(ItemEvent e) {
        adaptee.jcb_cname_itemStateChanged(e);
    }
}
class Select_coursePanel_btn_exit_actionAdapter implements ActionListener {
    private Select_coursecnamePanel adaptee;
    Select_coursePanel_btn_exit_actionAdapter(Select_coursecnamePanel adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        adaptee.btn_exit_actionPerformed(e);
    }
}

view包一共19个类。

本篇介绍了1至8类,由于博客字数限制,后半部分代码放到下篇。
下篇从第9个类开始,介绍9至19类:
下篇:学生选课与成绩管理系统2(剩余代码)

四、运行

连接好数据库之后,在view包下的StuviewFrame右键点击运行。通过IDEA的图形界面,进行增删改查等操作。
以增加学生信息为例:
1:增加学生信息
2:在IDEA中的数据库表中验证,确实添加成功。

3:回到mysql数据库中的student表中验证,也确实添加成功了。

经过多次测试,表明此程序运行成功!


文章来源:https://blog.csdn.net/weixin_72986432/article/details/135540757
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!

标签:

相关文章

本站推荐

标签云