收藏 分销(赏)

java程序设计之学生选课标准管理系统.doc

上传人:精*** 文档编号:2993165 上传时间:2024-06-12 格式:DOC 页数:34 大小:391.54KB
下载 相关 举报
java程序设计之学生选课标准管理系统.doc_第1页
第1页 / 共34页
java程序设计之学生选课标准管理系统.doc_第2页
第2页 / 共34页
java程序设计之学生选课标准管理系统.doc_第3页
第3页 / 共34页
java程序设计之学生选课标准管理系统.doc_第4页
第4页 / 共34页
java程序设计之学生选课标准管理系统.doc_第5页
第5页 / 共34页
点击查看更多>>
资源描述

1、 Java程序设计结课汇报课程名称 JAVA程序设计 设计题目 学生选课管理系统 专业班级 学 号 学生姓名 教 师 信息工程系目 录目 录III第1章 系统介绍41.1 系统功效4第2章 表设计52.1 系统数据库表结构:5第3章 连接数据库实现6第4章 系统具体设计74.1系统登录模块设计74.2系统主界面具体设计114.3学生管理模块设计164.4课程管理模块设计204.5选课管理模块设计23答辩统计27成绩考评表27学生选课管理系统第1章 系统介绍1.1 系统功效本系统关键功效:1)管理学生信息,其中包含添加,删除,修改等操作。2)管理课程信息,其中包含添加,删除,修改等操作。3)管理

2、选课信息,其中包含添加,删除,修改等操作。4)查询信息,其中包含查询学生信息,查询课程信息,查询选课信息.。5 )维护系统,备份全部表格为Excel格式。1.2 系统引用例子书本P237页 13.10书本P364页 20.5书本P389页 20.10书本P387页 21.6第2章 表设计2.1 系统数据库表结构:在此小节将系统数据库表结构用表形式画出,如:字段名字段类型长度主/外键字段值约束对应汉字名Snonvarchar50PNot null学号Snamenvarchar50Not null学生名字表2.1 学生信息表(S)Sxnvarchar50Not null学生系别字段名字段类型长度主

3、/外键字段值约束对应汉字名Cnonvarchar50PNot null课程号Cnamenvarchar50Not null课程名字表2.2 课程信息表(C)字段名字段类型长度主/外键字段值约束对应汉字名Snonvarchar50PNot null学号Cnonvarchar50PNot null课程号表2.3 选课信息表(SC)Cnvarchar50Not null分数第3章 连接数据库实现此节可简写,可合适贴部分SQL Server数据库连接关键代码,如:Connection dbConn=null;try Class.forName(net.sourceforge.jtds.jdbc.Dri

4、ver); dbConn = DriverManager.getConnection( jdbc:jtds:sqlserver:/localhost:1433/ + student, sa, 123); catch (Exception e) e.printStackTrace(); return dbConn; / 返回Connection对象第4章 系统具体设计4.1系统登录模块设计1、 运行效果图 图4.1.1 登陆界面图4.1.2 登陆成功 图4.1.2 登陆失败 2、 关键代码import java.awt.*;import java.awt.event.*;import javax

5、.swing.*;import java.sql.*;public class User extends JFrameprivate JLabel use,password;private JTextField k1;/用户名输入框private JPasswordField k2;/密码输入框private JButton b1,b2;/登录窗口public User(JFrame f)super(系统登录);Container c=getContentPane();c.setLayout(new FlowLayout();use=new JLabel(username:);use.setF

6、ont(new Font(Serif,Font.PLAIN,20);password=new JLabel(password:);password.setFont(new Font(Serif,Font.PLAIN,20);k1=new JTextField(12);k2=new JPasswordField(12);b1=new JButton(登录);b2=new JButton(退出);/设置登录方法BHandler b=new BHandler();EXIT d=new EXIT();b1.addActionListener(b);b2.addActionListener(d);/添加

7、控件c.add(use);c.add(k1);c.add(password);c.add(k2);c.add(b1);c.add(b2);setBounds(600,300,250,150);setVisible(true);setResizable(false);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/主函数public static void main(String args) User f1=new User(new JFrame();/登录按钮方法private class BHandler implements ActionLi

8、stenerpublic void actionPerformed(ActionEvent event)if(k1.getText().equals()|k2.getText().equals()JOptionPane.showMessageDialog(User.this,用户名密码不能为空! );elseStatement stmt=null;ResultSet rs=null;String sql; sql=select * from admin where username=+k1.getText()+; try Connection dbConn1=Conn.CONN();stmt=

9、(Statement)dbConn1.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);rs=stmt.executeQuery(sql);if(rs.next()String xm=rs.getString(password);if(k2.getText().equals(xm.trim()JOptionPane.showMessageDialog(User.this,登录成功);dispose();new Menu();/管理窗口 elseJOptionPane.showMessage

10、Dialog(User.this,密码错误); elseJOptionPane.showMessageDialog(User.this,用户名错误);rs.close();stmt.close();catch(SQLException e)JOptionPane.showMessageDialog(User.this,SQL错误信息:+e.getMessage(); /退出方法结束private class EXIT implements ActionListenerpublic void actionPerformed(ActionEvent even)System.exit(0);/父类结

11、束4.2系统主界面具体设计1、 运行效果图 图4.2.1 登陆成功后界面图4.2.2 学生管理菜单图4.2.2 课程管理菜单图4.2.2 选课管理菜单图4.2.2 查询管理菜单2、实现代码:添加数据时,若碰到必需信息未填写、不能反复信息在数据库中已存在,全部会提醒无法添加及其错误原因。import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Menu extends JFrame implements ActionListenerAddstu 增加学生界面;Updatastu 修改学生界面;Delst

12、u 删除学生界面;AddC 增加课程界面;DelC 删除课程界面;UpdateC 修改课程界面;AddSC 增加选课界面;DelSC 删除选课界面;UpdateSC 修改选课界面;Selstu 学生查询界面;Backup 备份界面;JPanel pCenter;CardLayout card=null;JLabel label=null;JMenuBar mb=new JMenuBar();/菜单栏JMenu m1=new JMenu(学生管理);JMenuItem add1=new JMenuItem(添加学生学籍 );JMenuItem updata1=new JMenuItem(更新学生

13、学籍 );JMenuItem delete1=new JMenuItem(删除学生学籍 );JMenu m2=new JMenu(课程管理);JMenuItem add2=new JMenuItem(增加课程 );JMenuItem updata2=new JMenuItem(更新课程 );JMenuItem delete2=new JMenuItem(删除课程 );JMenu m3=new JMenu(选课管理);JMenuItem add3=new JMenuItem(成绩录入 );JMenuItem updata3=new JMenuItem(成绩修改 );JMenuItem delet

14、e3=new JMenuItem(成绩删除 );JMenu m4=new JMenu(查询管理);JMenuItem 学生查询=new JMenuItem(查询信息 );JMenuItem backup=new JMenuItem(备份信息 );JMenuItem m5=new JMenuItem(系统退出);Font t=new Font (sanerif,Font.PLAIN,12);public Menu ()this.setTitle(学生选课管理系统);try UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassNa

15、me();catch(Exception e)System.err.println(不能设置外观: +e);/组合菜单addMenu1();addMenu2();addMenu3();addMenu4();addJMenuBar();setJMenuBar(mb);label=new JLabel(欢迎使用江西理工大学应科院选课管理系统,JLabel.CENTER);label.setFont(new Font(宋体,Font.BOLD,25);label.setHorizontalTextPosition(SwingConstants.CENTER);label.setForeground(

16、Color.red);/点击事件add1.addActionListener(this);updata1.addActionListener(this);delete1.addActionListener(this);m5.addActionListener(this);add2.addActionListener(this);delete2.addActionListener(this);updata2.addActionListener(this);add3.addActionListener(this);delete3.addActionListener(this);updata3.ad

17、dActionListener(this);学生查询.addActionListener(this);backup.addActionListener(this);card=new CardLayout();pCenter=new JPanel();pCenter.setLayout(card);增加学生界面=new Addstu();修改学生界面=new Updatastu(); 删除学生界面=new Delstu();增加课程界面=new AddC();删除课程界面=new DelC();修改课程界面=new UpdateC();增加选课界面=new AddSC();删除选课界面=new

18、DelSC();修改选课界面=new UpdateSC();学生查询界面=new Selstu();备份界面=new Backup(); pCenter.add(欢迎界面,label);pCenter.add(增加学生界面,增加学生界面);pCenter.add(修改学生界面,修改学生界面);pCenter.add(删除学生界面,删除学生界面);pCenter.add(增加课程界面,增加课程界面);pCenter.add(删除课程界面,删除课程界面);pCenter.add(修改课程界面,修改课程界面);pCenter.add(增加选课界面,增加选课界面);pCenter.add(删除选课界面

19、,删除选课界面);pCenter.add(修改选课界面,修改选课界面);pCenter.add(学生查询界面, 学生查询界面);pCenter.add(备份界面, 备份界面);add(pCenter,BorderLayout.CENTER);validate();setVisible(true);setBounds(400,150,600,380);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); addWindowListener(new WindowAdapter()/关闭程序时操作public void windowClosing(Windo

20、wEvent e)System.exit(0););validate();private void addJMenuBar() mb.add(m1);mb.add(m2);mb.add(m3);mb.add(m4);mb.add(m5);private void addMenu4() m4.add(学生查询);m4.add(backup); m4.setFont(t);private void addMenu3() m3.add(add3);m3.add(updata3);m3.add(delete3);m3.setFont(t);private void addMenu2() /将菜单加入到

21、菜单栏中m2.add(add2);m2.add(updata2);m2.add(delete2);m2.setFont(t);private void addMenu1() m1.add(add1);m1.add(updata1);m1.add(delete1);m1.setFont(t);/字体public void actionPerformed(ActionEvent e)Object obj=e.getSource();if(obj=m5)System.exit(0);elseif(obj=add1)card.show(pCenter,增加学生界面);elseif(obj=updata

22、1)card.show(pCenter,修改学生界面);elseif(obj=delete1)card.show(pCenter, 删除学生界面);elseif(obj=add2)card.show(pCenter, 增加课程界面);elseif(obj=delete2)card.show(pCenter, 删除课程界面);elseif(obj=updata2)card.show(pCenter, 修改课程界面);elseif(obj=add3)card.show(pCenter, 增加选课界面);elseif(obj=delete3)card.show(pCenter, 删除选课界面);el

23、seif(obj=updata3)card.show(pCenter, 修改选课界面);elseif(obj=学生查询)card.show(pCenter, 学生查询界面);elseif(obj=backup)card.show(pCenter, 备份界面);public static void main(String args) new Menu();4.3学生管理模块设计1、 运行效果图图4.3.1 添加学生学籍图4.3.1 修改学生学籍图4.3.1 删除学生学籍2、 实现代码:Addstu.java/Updatastu.java/Delstu.javaimport java.awt.*;

24、import javax.swing.*;import java.sql.*;import java.awt.event.*;public class Addstu extends JPanel implements ActionListenerJTextField 学号,姓名,系别;JButton 录入;public Addstu()try UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName();catch(Exception e)System.err.println(不能设置外观: +e);学号=new JTex

25、tField(12);姓名=new JTextField(12);系别=new JTextField(12);录入=new JButton(录入);录入.addActionListener(this);Box box1=Box.createHorizontalBox();/横放boxBox box2=Box.createHorizontalBox();Box box3=Box.createHorizontalBox();Box box4=Box.createHorizontalBox();box1.add(new JLabel(学号:/*,JLabel.CENTER*/);box1.add(学

26、号);box2.add(new JLabel(姓名:/*,JLabel.CENTER*/);box2.add(姓名);box3.add(new JLabel(系别:/*,JLabel.CENTER*/);box3.add(系别);box4.add(录入);Box boxH=Box.createVerticalBox();/竖放boxboxH.add(box1);boxH.add(box2);boxH.add(box3);boxH.add(box4);boxH.add(Box.createVerticalGlue();JPanel messPanel=new JPanel();messPanel

27、.add(boxH);setLayout(new BorderLayout();add(messPanel,BorderLayout.CENTER);validate();public void actionPerformed(ActionEvent c)Object obj=c.getSource();if(obj=录入)if(学号.getText().equals()|姓名.getText().equals()|系别.getText().equals()JOptionPane.showMessageDialog(this,学生信息请填满再录入! );Statement stmt=null;

28、ResultSet rs1=null;String sql,sql1; sql1=select * from S where Sno=+学号.getText()+; sql=insert into S values(+学号.getText()+,+姓名.getText()+,+系别.getText()+); try Connection dbConn1=Conn.CONN();stmt=(Statement)dbConn1.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);rs1=stmt

29、.executeQuery(sql1);if(rs1.next()JOptionPane.showMessageDialog(this,该学号以存在,无法添加);elsestmt.executeUpdate(sql);JOptionPane.showMessageDialog(this,添加成功);rs1.close();stmt.close(); catch(SQLException e) System.out.print(SQL Exception occur.Message is:+e.getMessage(); 4.4课程管理模块设计1、 运行效果图图4.4.1 课程录入界面图4.4.

30、2 课程修改界面图4.4.3 课程删除界面2、 运行代码:AddC.java/UpdataC.java/DelC.javaimport java.awt.*;import javax.swing.*;import java.sql.*;import java.awt.event.*;public class AddC extends JPanel implements ActionListenerJTextField 课号,课名;JButton 录入;public AddC()try UIManager.setLookAndFeel(UIManager.getSystemLookAndFeel

31、ClassName();catch(Exception e)System.err.println(不能设置外观: +e);课号=new JTextField(12);课名=new JTextField(12);录入=new JButton(录入);录入.addActionListener(this);Box box1=Box.createHorizontalBox();/横放boxBox box2=Box.createHorizontalBox();Box box3=Box.createHorizontalBox();Box box4=Box.createHorizontalBox();box

32、1.add(new JLabel(课号:);box1.add(课号);box2.add(new JLabel(课名:);box2.add(课名);box4.add(录入);Box boxH=Box.createVerticalBox();/竖放boxboxH.add(box1);boxH.add(box2);boxH.add(box3);boxH.add(box4);boxH.add(Box.createVerticalGlue();JPanel messPanel=new JPanel();messPanel.add(boxH);setLayout(new BorderLayout();ad

33、d(messPanel,BorderLayout.CENTER);validate();public void actionPerformed(ActionEvent c)Object obj=c.getSource();if(obj=录入)if(课号.getText().equals()|课名.getText().equals()JOptionPane.showMessageDialog(this,学生信息请填满再录入! );Statement stmt=null;ResultSet rs=null,rs1=null;/结果集String sql,sql1; sql1=select * fr

34、om C where Cno=+课号.getText()+; sql=insert into C values(+课号.getText()+,+课名.getText()+); try Connection dbConn1=Conn.CONN();stmt=(Statement)dbConn1.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);rs1=stmt.executeQuery(sql1);if(rs1.next()JOptionPane.showMessageDialog(this

35、,该课号以存在,无法添加);elsestmt.executeUpdate(sql);JOptionPane.showMessageDialog(this,添加成功);rs1.close();stmt.close(); catch(SQLException e) System.out.print(SQL 错误信息:+e.getMessage(); 4.5选课管理模块设计1、运行效果图图4.5.1 成绩录入界面图4.5.2 成绩修改界面图4.5.3 成绩删除界面2、运行代码:AddSC.java/UpdataSC.java/DelSC.javaimport java.awt.*;import ja

36、vax.swing.*;import java.sql.*;import java.util.*;import javax.swing.filechooser.*;import java.io.*;import java.awt.event.*;public class AddSC extends JPanel implements ActionListenerJTextField 课号,学号,成绩;JButton 录入;public AddSC()try UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName();ca

37、tch(Exception e)System.err.println(不能设置外观: +e);课号=new JTextField(12);学号=new JTextField(12);成绩=new JTextField(12);录入=new JButton(录入);录入.addActionListener(this);Box box1=Box.createHorizontalBox();/横放boxBox box2=Box.createHorizontalBox();Box box3=Box.createHorizontalBox();Box box4=Box.createHorizontalBox();box1.add(new JLabel(课号:);box1.add(课号);box2.add(new JLabel(学号:);box2.add(学号);box3.add(new JLabel(成绩:);box3.add(成绩);box4.add(录入);Box boxH=Box.cre

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 通信科技 > 开发语言

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服