



版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选文库 Java 程序设计结课报告课程名称JAVA程序设计设计题目学生选课管理系统专业班级学号学生姓名教师信息工程系精选文库目录目录II第 1 章系统简介31.1 系统功能3第 2 章表的设计42.1 系统数据库表结构:4第 3 章连接数据库的实现5第 4 章系统详细设计64.1系统登录模块设计64.2系统主界面详细设计104.3学生管理模块设计154.4课程管理模块设计194.5 选课管理模块设计22答辩记录26成绩考核表26精选文库学生选课管理系统第 1章系统简介1.1 系统功能本系统主要功能:1)管理学生信息,其中包括添加,删除,修改等操作。2)管理课程信息,其中包括添加,删除,修改等
2、操作。3)管理选课信息,其中包括添加,删除,修改等操作。4)查询信息,其中包括查询学生信息,查询课程信息,查询选课信息.。5 )维护系统,备份所有表格为Excel 格式。1.2 系统引用例子课本 P237 页 13.10课本 P364 页 20.5课本 P389 页 20.10课本 P387 页 21.6精选文库第 2章表的设计2.1 系统数据库表结构:在此小节将系统数据库表结构用表的形式画出,如:字段名字段类型长度主 /外键字段值约束对应中文名Snonvarchar50PNot null学号Snamenvarchar50Not null学生名字Sxnvarchar50Not null学生系别
3、表 2.1学生信息表(S)字段名字段类型长度主 /外键字段值约束对应中文名Cnonvarchar50PNot null课程号Cnamenvarchar50Not null课程名字表 2.2课程信息表( C)字段名字段类型长度主 /外键字段值约束对应中文名Snonvarchar50PNot null学号Cnonvarchar50PNot null课程号Cnvarchar50Not null分数表 2.3 选课信息表(SC)精选文库第 3 章连接数据库的实现此节可简写,可适当贴一些SQL Server数据库连接的关键代码,如:Connection dbConn=null;try dbConn =
4、DriverManager.getConnection("jdbc:jtds:sqlserver:/localhost:1433/"+ "student", "sa", "123"); catch (Exception e) e.printStackTrace();return dbConn; / 返回 Connection对象精选文库第 4 章系统详细设计4.1 系统登录模块设计1、 运行效果图图登陆界面图登陆成功图登陆失败精选文库2、 主要代码public class User extends JFramepr
5、ivate 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.setFont(new Font("Serif",Font.
6、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);
7、b2.addActionListener(d);/添加控件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 cla
8、ss BHandler implements ActionListener public 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*fromadmin
9、whereusername='"+k1.getText()+"'"tryConnection dbConn1=Conn.CONN();stmt=(Statement)dbConn1.createStatement(ResultSet.TYPE_SCROLL_INS ENSITIVE,ResultSet.CONCUR_READ_ONLY);rs=stmt.executeQuery(sql);if(rs.next()Stringxm=rs.getString("password");if(k2.getText().equals(xm
10、.trim()JOptionPane.showMessageDialog(User.th is,"登录成功 ");dispose();new Menu();/ 管理窗口elseJOptionPane.showMessageDialog(User.this,"密码错误 ");elseJOptionPane.showMessageDialog(User.this,"用户名错误 "); rs.close();stmt.close();精选文库catch(SQLException e)JOptionPane.showMessageDialog
11、(User.this,"SQL错误信息:"+e.getMessage();/退出方法结束private class EXIT implements ActionListener public void actionPerformed(ActionEvent even)System.exit(0);/ 父类结束精选文库4.2 系统主界面详细设计1、 运行效果图图登陆成功后界面图学生管理菜单图课程管理菜单图选课管理菜单图查询管理菜单精选文库2、实现代码:添加数据时,若遇到必须信息未填写、不能重复的信息在数据库中已存在,都会提示无法添加及其错误原因。public class Me
12、nu extends JFrame implements ActionListenerAddstu 增加学生界面 ;Updatastu 修改学生界面 ;Delstu 删除学生界面 ;AddC 增加课程界面 ;DelC 删除课程界面 ;UpdateC 修改课程界面 ;AddSC 增加选课界面 ;DelSC 删除选课界面 ;UpdateSC 修改选课界面 ;Selstu 学生查询界面 ;Backup 备份界面 ;JPanel pCenter;CardLayout card=null;JLabel label=null;JMenuBar mb=new JMenuBar();/菜单栏JMenu m1=
13、new JMenu("学生管理 ");JMenuItem add1=new JMenuItem("添加学生学籍");JMenuItem updata1=new JMenuItem("更新学生学籍");JMenuItem delete1=new JMenuItem("删除学生学籍");JMenu m2=new JMenu("课程管理 ");JMenuItem add2=new JMenuItem("增加课程");JMenuItem updata2=new JMenuItem(&
14、quot;更新课程");JMenuItem delete2=new JMenuItem("删除课程");JMenu m3=new JMenu("选课管理 ");JMenuItem add3=new JMenuItem("成绩录入");JMenuItem updata3=new JMenuItem("成绩修改");JMenuItem delete3=new JMenuItem("成绩删除");JMenu m4=new JMenu("查询管理 ");JMenuItem
15、学生查询 =new JMenuItem("查询信息");JMenuItem backup=new JMenuItem("备份信息");JMenuItem m5=new JMenuItem("系统退出 ");Font t=new Font ("sanerif",Font.PLAIN ,12);精选文库public Menu ()this.setTitle("学生选课管理系统 ");tryUIManager. setLookAndFeel(UIManager.getSystemLookAndFeel
16、ClassName(); 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.setHorizontalTextPo
17、sition(SwingConstantsCENTER);. label.setForeground(Colorred);./点击事件add1.addActionListener(this);updata1.addActionListener(this);delete1.addActionListener(this);m5.addActionListener(this);add2.addActionListener(this);delete2.addActionListener(this);updata2.addActionListener(this);add3.addActionListen
18、er(this);delete3.addActionListener(this);updata3.addActionListener(this);学生查询 .addActionListener(this);backup.addActionListener(this);card=new CardLayout();pCenter=new JPanel();pCenter.setLayout(card);增加学生界面 =new Addstu();修改学生界面 =new Updatastu();删除学生界面 =new Delstu();增加课程界面 =new AddC();精选文库删除课程界面 =ne
19、w DelC();修改课程界面 =new UpdateC();增加选课界面 =new AddSC();删除选课界面 =new DelSC();修改选课界面 =new UpdateSC();学生查询界面 =new Selstu();备份界面 =new Backup();pCenter.add("欢迎界面 ",label);pCenter.add("增加学生界面 ",增加学生界面 );pCenter.add("修改学生界面 ",修改学生界面 );pCenter.add("删除学生界面 ",删除学生界面 );pCente
20、r.add("增加课程界面 ",增加课程界面 );pCenter.add("删除课程界面 ",删除课程界面 );pCenter.add("修改课程界面 ",修改课程界面 );pCenter.add("增加选课界面 ",增加选课界面 );pCenter.add("删除选课界面 ",删除选课界面 );pCenter.add("修改选课界面 ",修改选课界面 );pCenter.add("学生查询界面 ", 学生查询界面 );pCenter.add("
21、备份界面 ", 备份界面 );add(pCenter,BorderLayout.CENTER);validate();setVisible(true);setBounds(400,150,600,380);setDefaultCloseOperation(JFrameEXIT._ON_CLOSE);addWindowListener(new WindowAdapter()/ 关闭程序时的操作 public void windowClosing(WindowEvent e)System. exit(0); );validate();private void addJMenuBar()
22、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() / 将菜单加入到菜单栏中m2.add(add2);m2.add(updata2);m2.add(delete2);m2.setFont
23、(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=updata1)card.show(pCenter,"修改学生界面 ");else
24、if(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=
25、delete3)card.show(pCenter, "删除选课界面 ");elseif(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、 运行效果图图添加学生学籍精选文库
26、图修改学生学籍图删除学生学籍2、 实现代码 :Addstu.java/Updatastu.java/Delstu.javapublic class Addstu extends JPanel implements ActionListener JTextField 学号 ,姓名 ,系别 ;JButton 录入 ;public Addstu()tryUIManager. setLookAndFeel(UIManager.getSystemLookAndFeelClassName(); catch(Exception e)Systemerr. .println(" 不能设置外观 : &q
27、uot;+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.ad
28、d(new JLabel("学号 :"/*,JLabel.CENTER*/); box1.add(学号 );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(
29、box3);boxH.add(box4);boxH.add(Box.createVerticalGlue();JPanel messPanel=new JPanel();messPanel.add(boxH);setLayout(new BorderLayout();add(messPanel,BorderLayoutCENTER);.validate();public void actionPerformed(ActionEvent c)Object obj=c.getSource();if(obj= 录入 )if( 学号 .getText().equals("")|姓名
30、 .getText().equals("")|系别 .getText().equals("")JOptionPaneshowMessageDialog(this,".学生信息请填满再录入! " );Statement stmt=null;ResultSet rs1=null;精选文库String sql,sql1;sql1="select * from S where Sno='"+学号 .getText()+"'" sql="insert into S values(
31、'"+学号 .getText()+"','"+ 姓名 .getText()+"','"+ 系别 .getText()+"')" tryConnection dbConn1=ConnCONN();.stmt=(Statement)dbConn1.createStatement(ResultSetTYPE._SCROLL_INSENSI TIVE,ResultSet.CONCUR_READ_ONLY);rs1=stmt.executeQuery(sql1); if(rs1.next
32、()JOptionPane.showMessageDialog(this," 该学号以存在,无法添加 ");elsestmt.executeUpdate(sql);JOptionPaneshowMessageDialog(this,".添加成功 ");rs1.close();stmt.close();catch(SQLException e)is:"+e.getMessage();精选文库4.4 课程管理模块设计1、 运行效果图图课程录入界面图课程修改界面图课程删除界面精选文库2、 运行代码:AddC.java/UpdataC.java/Del
33、C.javapublic class AddC extends JPanel implements ActionListener JTextField 课号 ,课名 ;JButton 录入 ;public AddC()try不能设置外观 :"+e);课号 =new JTextField(12);课名 =new JTextField(12);录入 =new JButton("录入 ");录入 .addActionListener(this);Box box1=Box. createHorizontalBox();/横放 boxBox box2=Box. create
34、HorizontalBox();Box box3=Box. createHorizontalBox();Box box4=Box. createHorizontalBox();box1.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.ad
35、d(box4);boxH.add(Box.createVerticalGlue();JPanel messPanel=new JPanel();messPanel.add(boxH);setLayout(new BorderLayout();精选文库add(messPanel,BorderLayoutCENTER);.validate();public void actionPerformed(ActionEvent c)Object obj=c.getSource();if(obj= 录入 )if( 课号 .getText().equals("")|课名 .getText
36、().equals("")JOptionPaneshowMessageDialog(this,".学生信息请填满再录入! " );Statement stmt=null;ResultSet rs=null,rs1=null;/结果集String sql,sql1;sql1="select * from C where Cno='"+课号 .getText()+"'"sql="insert into C values('"+课号 .getText()+"'
37、,'"+课名 .getText()+"')"tryConnection dbConn1=ConnCONN();.stmt=(Statement)dbConn1.createStatement(ResultSetTYPE._SCROLL_INSENSI TIVE,ResultSet.CONCUR_READ_ONLY);rs1=stmt.executeQuery(sql1);if(rs1.next()JOptionPane.showMessageDialog(this,"该课号以存在,无法添加");elsestmt.executeU
38、pdate(sql);JOptionPaneshowMessageDialog(this,".添加成功");rs1.close();stmt.close();catch(SQLException e)错误信息 :"+e.getMessage();精选文库4.5 选课管理模块设计1、运行效果图图成绩录入界面图成绩修改界面图成绩删除界面精选文库2、运行代码:AddSC.java/UpdataSC.java/DelSC.javapublic class AddSC extends JPanel implements ActionListener JTextField 课
39、号 ,学号 ,成绩 ;JButton 录入 ;public AddSC()tryUIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName();不能设置外观 : "+e); 课号 =new JTextField(12);学号 =new JTextField(12);成绩 =new JTextField(12);录入 =new JButton(" 录入 ");录入 .addActionListener(this);Box box1=Box.createHorizontalBox();/横放 box
40、Box 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.createV e
41、rticalBox();/ 竖放 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();add(messPanel,BorderLayout.CENTER);validate();public void actionPerformed(ActionEvent c)Object obj=c.getSource();if(obj= 录入 )if( 课号 .getText().equals("")| 学号 .getText().equals("&qu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030土工合成粘土衬板行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 2025年云南省建筑安全员《B证》考试题库及答案
- 2025-2030合金产业行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030可生物降解的猫砂行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030半挂车行业深度调研及发展趋势研究报告
- 2025-2030医药零售产业市场深度调研及发展趋势与投资战略研究报告
- 三年级部编人教版语文下学期期末综合复习知识点练习单
- 2025年湖南省安全员考试题库附答案
- 养殖合作股协议合同标准文本
- 2025-2030冷凝锅炉行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 制造执行系统集成
- 公司电工外包协议书
- 房地产经纪人协理考试题库全(附答案)
- 室内设计原木风格研究现状
- 车间班组长岗位竞聘述职报告课件模板
- 康养活动策划方案
- DB11/1950-2021-公共建筑无障碍设计标准
- 2024年三门峡职业技术学院单招职业技能测试题库及答案解析
- (正式版)SHT 3115-2024 石油化工管式炉轻质浇注料衬里工程技术规范
- 2024新生儿肺炎个案护理
- 2022版新课标核心素养关键词解读-运算能力主题研讨与教学分享
评论
0/150
提交评论