欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    JAVA课程设计(论文)学生学籍管理系统.doc

    • 资源ID:2387124       资源大小:1.21MB        全文页数:23页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    JAVA课程设计(论文)学生学籍管理系统.doc

    目 录一、 设计目的2二、 功能介绍21、 系统功能要求22、 其他要求2三、 程序流程31、 数据库设计32、 应用程序设计4四、 设计步骤61、 连接数据库类DBConnect62、 用户登录面板63、 应用程序功能81. 查询全部82. 条件查询93. 个人信息显示144. 添加信息155. 删除信息186. 修改密码217. 注销22五、 设计总结23六、 参考资料23一、 设计目的通过课程设计,使学生提高理论联系实际解决实际问题的能力;也使学生对基于面向对象的理论进行系统设计过程中的诸多具体问题有感性的认识和深入的理解;进而提高学生的学习兴趣为其将来顺利进入毕业环节作必要的准备。由教师布置课程设计的题目与思路,学生每56人一个题目,按照教师给出的思路和计划进度安排独立完成课程设计,最后每人提交一份课程设计报告。二、 功能介绍(一)系统功能要求:(1)具有新用户注册功能。(2)具有注册用户登录功能。(3)具有学生学籍的录入功能。(4)具有数据查询功能,可以实现查询全部信息和按条件执行查询。(5)具有按条件删除数据功能。(二)其它要求:(1)只能使用Java语言,采用面向对象方法进行设计,要求源程序要有适当的注释,使程序容易阅读。(2)程序必须与数据库进行通信。(3)系统必须是图形用户界面的形式并连接数据库。(4)学生可根据自身情况酌情增加新功能(视情况可另外加分)。(5)独立完成课程设计,并完成课程设计报告,报告应记录设计的过程,尤其是分析/设计/实现过程中的决策。三、 程序流程1、 数据库设计1.admin表的设计表1 admin表2.student_info表的设计表2 student_info表2、应用程序设计1.程序功能表视图图1 功能视图2.程序流程图图2 流程图四、 设计步骤1. 设计连接数据库类DBConnect。功能说明:该类主要用于数据库的连接。方法:public static Connection getConnect();方法实现:public static Connection getConnect() throws ExceptionString driver = "com.mysql.jdbc.Driver"String url = "jdbc:mysql:/localhost:3306/student"String user = "root"String password = "root"Class.forName(driver);return DriverManager.getConnection(url,user,password);2. 设计欢迎使用面板功能说明:显示用户登录欢迎界面,当用户选择不同类型用户登录时,设置不同的下一页面显示信息。方法:public void loginButton_actionPerformed(ActionEvent e); 效果展示:图3 欢迎界面方法实现:public void loginButton_actionPerformed(ActionEvent e)if(e.getSource()=adminLoginButton)flag = true;user = "管理员"else if(e.getSource()=userLoginButton)flag = false;user = "普通"this.setTitle("学生学籍管理系统-"+user+"用户登录");LoginInfo.setText("欢迎"+user+"用户登录");setInfo();3. 设计用户登录面板功能说明:该面板主要用于填写用户登录信息,并根据用户登录信息查询数据库。点击提交按钮,查询数据库,若数据库中有该用户信息并且输入密码正确,则登录成功,否则提示错误。点击重置按钮则清空文本框,点击返回则返回上一级欢迎面板。方法:public void submit_actionPerformed(ActionEvent e); public void cancel_actionPerformed(ActionEvent e); public void back_actionPerformed(ActionEvent e);效果展示:图4 填写登录信息方法实现:/点击提交按钮public void submit_actionPerformed(ActionEvent e) throws Exceptionconnection = DBConnect.getConnect();statement = connection.createStatement();String textField = jTextField.getText().toString();String password = jPasswordField.getText().toString();String select = null;if(flag = true)select = "select password from admin where username = '"+textField+"'"elseselect = "select password from student_info where sno = '"+textField+"'"rs = statement.executeQuery(select);if(rs.next()&&rs.getString("password").equals(password)username = textField;jTextField.setText("");jPasswordField.setText("");showInfo();elseJOptionPane.showMessageDialog(this, "用户名或密码错误,请重新输入");jPasswordField.setText("");rs.close();/点击重置按钮public void cancel_actionPerformed(ActionEvent e)jTextField.setText("");jPasswordField.setText("");/点击返回按钮public void back_actionPerformed(ActionEvent e)this.setTitle("欢迎使用学生学籍管理系统");jTextField.setText("");jPasswordField.setText("");try welcome(); catch (Exception e1) / TODO Auto-generated catch blocke1.printStackTrace();4. 设计应用程序功能1. 查询全部 功能说明:当该用户是管理员用户的时候,该用户具有查询全部学生信息和全部管理员信息的权限,当该用户是普通学生用户时,只有查询全部学生信息的功能。在查询全部标签下,点击学生信息或管理员信息按钮,程序就会将所有查询信息显示在右下角的表格里。方法:public void jButtonQurryAll_ationPerformed(ActionEvent e);效果展示图5 查询全部学生信息图6 查询全部管理员信息方法实现:public void jButtonQurryAll_actionPerformed(ActionEvent e)if(e.getSource()=jButtonQurryAllAd)selectFlag = true;jTable.setModel(JTableInfo.tableModelAd);JTableInfo.setColumnWidth(jTable);qurryString = "select username, name, sex, people, age, dept from admin;"else if(e.getSource()=jButtonQurryAllSt)selectFlag = false;jTable.setModel(JTableInfo.tableModelSt);JTableInfo.setColumnWidth(jTable);qurryString = "select sno, sname, sex, people, age, sid, address, dept, sclass, inscore from student_info;"try cnt = setJTableInfo(); catch (Exception e1) / TODO Auto-generated catch blocke1.printStackTrace();if(jComboBoxQuery.isEnabled() jComboBoxQuery.setEnabled(false);if(jComboBoxCon.isEnabled()jComboBoxCon.setEnabled(false);if(jButtonUpdateInfo.isEnabled() jButtonUpdateInfo.setEnabled(false);if(jLabelQurryValue.isVisible() jLabelQurryValue.setVisible(false);if(jTextFieldQuery.isVisible() jTextFieldQuery.setVisible(false);if(jButtonQueryOK.isEnabled() jButtonQueryOK.setEnabled(false);2. 条件查询功能说明:当该用户是管理员用户的时候,该用户具有按条件查询学生信息和管理员信息的权限,当该用户是普通学生用户时,只有按条件查询学生信息的功能。在条件查询标签下,点击学生信息或管理员信息按钮,之后在查询条件下拉列表里选择要查询的条件并填写相应的值之后点击查询按钮,在面板的右下角的表格中就会显示查询结果,若没有记录则给出提示。方法:public void jButtonQurryPrt_actionPerformed(ActionEvent e); public void jButtonQueryOK_actionPerformed(ActionEvent e); public void jComboBoxQuery_actionPerformed(ActionEvent e);效果展示:图7 按条件查询学生信息成功图8 按条件查询管理员信息成功图9 没有符合条件的信息方法实现:/search as conditionpublic void jButtonQurryPrt_actionPerformed(ActionEvent e)jComboBoxQuery.removeAllItems();jComboBoxCon.removeAllItems();if(e.getSource()=jButtonQurryPrtSt)selectFlag = false;jTable.setModel(JTableInfo.tableModelSt);for(int i = 0; i < cbxStringSt.length; i +)jComboBoxQuery.addItem(cbxStringSti);else if(e.getSource()=jButtonQurryPrtAd)selectFlag = true;jTable.setModel(JTableInfo.tableModelAd);for(int i = 0; i < cbxStringAd.length; i +)jComboBoxQuery.addItem(cbxStringAdi);JTableInfo.setColumnWidth(jTable);JTableInfo.setJTableEmpty(jTable);if(jButtonUpdateInfo.isEnabled() jButtonUpdateInfo.setEnabled(false);if(!jComboBoxQuery.isEnabled() jComboBoxQuery.setEnabled(true);if(!jButtonQueryOK.isEnabled() jButtonQueryOK.setEnabled(true);/查询按钮事件处理public void jButtonQueryOK_actionPerformed(ActionEvent e)if(jTextFieldQuery.isEnabled() &&jTextFieldQuery.isVisible()&&(jTextFieldQuery.getText().toString() = null|jTextFieldQuery.getText().toString().equals("") JOptionPane.showMessageDialog(this, "请输入查询的值");elseif(selectFlag)jTable.setModel(JTableInfo.tableModelAd);JTableInfo.setColumnWidth(jTable);qurryString = "select username, name, sex, people, age, dept from admin where "if(jComboBoxQuery.getSelectedIndex()=0)qurryString += "username = '"+jTextFieldQuery.getText()+"'"else if(jComboBoxQuery.getSelectedIndex()=1)qurryString += "name like '%"+jTextFieldQuery.getText().toString()+"%'"else if(jComboBoxQuery.getSelectedIndex()=2)qurryString +="age "if(jComboBoxCon.getSelectedIndex()=0)qurryString += "< "+jTextFieldQuery.getText()+""else if(jComboBoxCon.getSelectedIndex()=1)qurryString += "<= "+jTextFieldQuery.getText()+""else if(jComboBoxCon.getSelectedIndex()=2)qurryString += "= "+jTextFieldQuery.getText()+""else if(jComboBoxCon.getSelectedIndex()=3)qurryString += "> "+jTextFieldQuery.getText()+""else qurryString += ">="+jTextFieldQuery.getText()+""else if(jComboBoxQuery.getSelectedIndex()=3)qurryString += "dept = '"+jTextFieldQuery.getText()+"'"else if(jComboBoxQuery.getSelectedIndex()=4)if(jComboBoxCon.getSelectedIndex()=0)qurryString += "sex = '男'"else qurryString += "sex = '女'"else qurryString += "people = '"+jTextFieldQuery.getText()+"'"try cnt = setJTableInfo(); catch (Exception e1) / TODO Auto-generated catch blocke1.printStackTrace();elsejTable.setModel(JTableInfo.tableModelSt);JTableInfo.setColumnWidth(jTable);qurryString = "select sno, sname, sex, people, age, sid, address, dept, sclass, inscore from student_info where "if(jComboBoxQuery.getSelectedIndex()=0)qurryString += "sno = '"+jTextFieldQuery.getText()+"'"else if(jComboBoxQuery.getSelectedIndex()=1)qurryString += "sname like '%"+jTextFieldQuery.getText().toString()+"%'"else if(jComboBoxQuery.getSelectedIndex()=2)qurryString +="age "if(jComboBoxCon.getSelectedIndex()=0)qurryString += "< "+jTextFieldQuery.getText()+""else if(jComboBoxCon.getSelectedIndex()=1)qurryString += "<= "+jTextFieldQuery.getText()+""else if(jComboBoxCon.getSelectedIndex()=2)qurryString += "= "+jTextFieldQuery.getText()+""else if(jComboBoxCon.getSelectedIndex()=3)qurryString += "> "+jTextFieldQuery.getText()+""else qurryString += ">="+jTextFieldQuery.getText()+""else if(jComboBoxQuery.getSelectedIndex()=3)qurryString += "dept = '"+jTextFieldQuery.getText()+"'"else if(jComboBoxQuery.getSelectedIndex()=4)if(jComboBoxCon.getSelectedIndex()=0)qurryString += "sex = '男'"else qurryString += "sex = '女'"else if(jComboBoxQuery.getSelectedIndex()=5)qurryString += "people = '"+jTextFieldQuery.getText()+"'"else if(jComboBoxQuery.getSelectedIndex()=6)qurryString += "address = '"+jTextFieldQuery.getText()+"'"else if(jComboBoxQuery.getSelectedIndex()=7)qurryString += "sclass = '"+jTextFieldQuery.getText()+"'"else qurryString +="inscore "if(jComboBoxCon.getSelectedIndex()=0)qurryString += "< "+jTextFieldQuery.getText()+""else if(jComboBoxCon.getSelectedIndex()=1)qurryString += "<= "+jTextFieldQuery.getText()+""else if(jComboBoxCon.getSelectedIndex()=2)qurryString += "= "+jTextFieldQuery.getText()+""else if(jComboBoxCon.getSelectedIndex()=3)qurryString += "> "+jTextFieldQuery.getText()+""else qurryString += ">="+jTextFieldQuery.getText()+""try cnt = setJTableInfo(); catch (Exception e1) / TODO Auto-generated catch blocke1.printStackTrace();if(cnt = 0) JOptionPane.showMessageDialog (this, "没有符合条件的信息");/jComboBoxQuery 第一个下拉列表事件public void jComboBoxQuery_actionPerformed(ActionEvent e)jTextFieldQuery.setText("");if(jComboBoxQuery.getSelectedIndex() = 2|jComboBoxQuery.getSelectedIndex() = 4|jComboBoxQuery.getSelectedIndex() = 8)jComboBoxCon.setEnabled(true);if(jComboBoxQuery.getSelectedIndex() = 4)jComboBoxCon.removeAllItems();for(int i = 0; i < cbxStringSexCon.length; i +)jComboBoxCon.addItem(cbxStringSexConi);if(jLabelQurryValue.isVisible() jLabelQurryValue.setVisible(false);if(jTextFieldQuery.isVisible() jTextFieldQuery.setVisible(false);elseif(!jLabelQurryValue.isVisible() jLabelQurryValue.setVisible(true);if(!jTextFieldQuery.isVisible() jTextFieldQuery.setVisible(true);jComboBoxCon.removeAllItems();for(int i = 0; i < cbxStringCon.length; i +)jComboBoxCon.addItem(cbxStringConi);elseif(!jLabelQurryValue.isVisible() jLabelQurryValue.setVisible(true);if(!jTextFieldQuery.isVisible() jTextFieldQuery.setVisible(true);jComboBoxCon.setEnabled(false);3. 个人信息显示功能说明:主要显示个人信息,当用户点击个人信息标签下的显示信息按钮时,在面板的右下角显示用户个人信息方法:public void jButtonUpdate_actionPerformed(ActionEvent e);效果展示:图10 显示当前用户信息方法实现:/show own infopublic void jButtonUpdate_actionPerformed(ActionEvent e)if(flag)jTable.setModel(JTableInfo.tableModelAd);JTableInfo.setColumnWidth(jTable);qurryString = "select username, name, sex, people, age, dept from admin where username = '"+username+"'"selectFlag = true;elsejTable.setModel(JTableInfo.tableModelSt);JTableInfo.setColumnWidth(jTable);selectFlag = false;qurryString = "select sno, sname, sex, people, age, sid, address, dept, sclass, inscore from student_info where sno = '"+username+"'"try cnt = setJTableInfo(); catch (Exception e1) / TODO Auto-generated catch blocke1.printStackTrace();if(jComboBoxQuery.isEnabled() jComboBoxQuery.setEnabled(false);if(jComboBoxCon.isEnabled() jComboBoxCon.setEnabled(false);if(jButtonUpdateInfo.isEnabled() jButtonUpdateInfo.setEnabled(false);if(jLabelQurryValue.isVisible() jLabelQurryValue.setVisible(false);if(jTextFieldQuery.isVisible() jTextFieldQuery.setVisible(false);if(jButtonQueryOK.isEnabled() jButtonQueryOK.setEnabled(false);4. 添加信息功能说明:主要用于添加学生记录和管理员。当点击添加信息标签下的学生记或管理员用户时,在面板右下角的表格中就会有一个空行,在空行中填写你要添加的记录,点击添加按钮,若数据库中没有该学号的学生或用户名唯一,则会提示添加成功,否则提示添加失败方法:public void jButtonAdd_actionPerformed(ActionEvent e); public void jBtuuonUpdateInfo_actionPerformed(ActionEvent e);效果展示:图11 添加学生记录成功图12 添加管理员用户失败方法实现:/add infopublic void jButtonAdd_actionPerformed(ActionEvent e)if(e.getSource()=jButtonAddSt)selectFlag = false;jTable.setModel(JTableInfo.tableModelSt);JTableInfo.setJTableEmpty(jTable);JTableInfo.setColumnWidth(jTable);DefaultTableModel tableModel = (DefaultTableModel)jTable.getModel();tableModel.addRow(new Objectnull, null, null, null, null, null, null, null, null, null);else if(e.getSource()=jButtonAddAd)selectFlag = true;jTable.setModel(JTableInfo.tableModelAd);JTableInfo.setJTableEmpty(jTable);JTableInfo.setColumnWidth(jTable);DefaultTableModel tableModel = (DefaultTableModel)jTable.getModel();tableModel.addRow(new Objectnull,null,null,null,null,null);if(jComboBoxQuery.isEnabled()jComboBoxQuery.setEnabled(false);if(jComboBoxCon.isEnabled()jComboBoxCon.setEnabled(false);if(!jButtonUpdateInfo.isEnabled() jButtonUpdateInfo.setEnabled(true);if(jLabelQurryValue.isVisible() jLabelQurryValue.setVisible(false);if(jTextFieldQuery.isVisible() jTextFieldQuery.setVisible(false);if(jButtonQueryOK.isEnabled() jButtonQueryOK.setEnabled(false);/添加信息public void jButtonUpdateInfo_actionPerformed(ActionEvent e)qurryString = "insert into "if(selectFlag)qurry

    注意事项

    本文(JAVA课程设计(论文)学生学籍管理系统.doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开