JAVA课程设计报告学生信息管理系统.doc

上传人:jian****018 文档编号:8941782 上传时间:2020-04-02 格式:DOC 页数:45 大小:672.50KB
返回 下载 相关 举报
JAVA课程设计报告学生信息管理系统.doc_第1页
第1页 / 共45页
JAVA课程设计报告学生信息管理系统.doc_第2页
第2页 / 共45页
JAVA课程设计报告学生信息管理系统.doc_第3页
第3页 / 共45页
点击查看更多>>
资源描述
JAVA程序设计 课程设计报告课 题: 学生信息管理系统 姓 名: 学 号: 201117030234 同组姓名: 专业班级: 网络工程11102班 指导教师: 设计时间: 2013-6-24 评阅意见:评定成绩: 指导老师签名: 年 月 日目录1.系统描述11.1设计目的11.2 需求分析11.21 设计任务要求11.2 2系统功能需求分析21.23界面构建22.分析与设计22.1功能模块分析22.11图形用户界面的设计42.12个人信息管理模块102.13 选课信息管理模块142.14奖励信息管理模块172.4 测试数据和数据结果193.系统测试20运行截图203.1用户界面203. 2个人信息管理203. 3 选课信息管理213. 4 奖励信息管理214.心得体会225.参考文献236.附录231. 系统描述1.1设计目的 本程序用于用户对少量学生信息进行简单的管理,本程序针对于对安全系数要求不高,操作不是很复杂的小型客户开发。本程序可以实现对学生信息的录入、查询、修改、删除等操作,同时支持查看所有学生信息,功能完善,界面简洁美观,布局合理,操作简便,简单易用,任何人可轻松操作。同时,本程序对系统要求配置较低,运行速度快,而却对数据库管理要求较低。本程序数据库采用SQL server2005进行数据存储,该数据库可实现关系较为简单的数据管理。 1.2 需求分析利用计算机进行学生信息管理,不仅能够保证准确、无误、快速输出,而且还可以利用计算机对有关信息进行查询,检索迅速、查找方便、可靠性高、存储量大、保密性好。要科学地实现信息化管理,开发一个适合学校的,能够进行信息存储、查询、修改等功能的信息管理系统是十分重要的。我这次的课题就是设计与实现一个学生信息管理系统。1.21 设计任务要求该学生信息管理系统的设计要求主要有以下几点:(1)使用图形用户界面;(2)用数据库建立几个学生信息表; (3)能连接数据库并实现对学生信息查询、增、删、改等功能。1.2 2系统功能需求分析系统主要分为以下几个模块:(1) 个人信息管理(2) 选课信息管理(3) 奖励信息管理系统主要包括以下几项功能:(1)添加学生信息;(2)查询学生信息;(3)删除学生信息;(4)修改学生信息。1.23界面构建 1、为了便于各种操作,软件采用多窗口的模式。用户可在不同窗口进行相应操作(录入、查询、修改、删除、显示所有学生信息)。 2、主窗口是用户进行各种操作的平台,具体操作在各个独立功能窗口中完成。 3、主窗口的主要功能位于菜单中,菜单为进入各个功能窗口的唯一通道。 4、当用户在进行个别录入、删除或错误输入操作时,会弹出相应对话框提示用户。5、界面布局尽量合理,各组件位置分布均匀美观。2.分析与设计2.1功能模块分析 以下是学生信息管理系统功能模块关系图,主要包含查询、添加、修改、删除学生信息等功能。学生信息管理系统 个人信息管理选课信息管理奖励信息管理查询,删除,修改,插入操作查询,删除,修改,插入操作查询,删除,修改,插入操作各模块分析如下:2.11图形用户界面的设计功能:用户进入时的页面,丰富了整个系统的结构主界面窗口设计函数代码程序如下:package stumanage;import javax.swing.*;import java.awt.*;import sun.awt.image.*;import java.awt.event.*;/* * Title: * Description: * Copyright: Copyright (c) 2003 * Company: * author not attributable * version 1.0 */public class WelcomeFrame extends JFrame JPanel jPanel1 = new MyPanel(); ImageIcon imageIcon1 = new ImageIcon(beautiful.jpg); BorderLayout borderLayout1 = new BorderLayout(); JPanel jPanel2 = new JPanel(); GridBagLayout gridBagLayout1 = new GridBagLayout(); JButton jButton1 = new JButton(); JButton jButton2 = new JButton(); JButton jButton3 = new JButton(); JButton jButton4 = new JButton(); JButton jButton5 = new JButton(); public WelcomeFrame() try jbInit(); catch (Exception e) e.printStackTrace(); public static void main(String args) WelcomeFrame welcomeFrame = new WelcomeFrame(); welcomeFrame.pack(); welcomeFrame.show(); private void jbInit() throws Exception imageIcon1.setDescription(beautiful.jpg); imageIcon1.setImageObserver(this); jPanel1.setLayout(borderLayout1); jPanel1.setMinimumSize(new Dimension(600, 400); jPanel1.setPreferredSize(new Dimension(600, 420); this.setLocale(java.util.Locale.getDefault(); this.setResizable(true); this.setSize(new Dimension(747, 396); this.setState(Frame.NORMAL); jPanel2.setBackground(UIManager.getColor(RadioButtonMenuItem.selectionBackground); jPanel2.setForeground(Color.black); jPanel2.setMinimumSize(new Dimension(100, 30); jPanel2.setPreferredSize(new Dimension(100, 400); jPanel2.setLayout(gridBagLayout1); jButton1.setToolTipText( 个人信息管理); jButton1.setText( 个人信息管理); jButton1.addActionListener(new WelcomeFrame_jButton1_actionAdapter(this); jButton2.setToolTipText( 选课信息管理); jButton2.setText( 选课信息管理); jButton2.addActionListener(new WelcomeFrame_jButton2_actionAdapter(this); jButton3.setToolTipText(奖励信息管理); jButton3.setText(奖励信息管理); jButton3.addActionListener(new WelcomeFrame_jButton3_actionAdapter(this); jButton4.addActionListener(new WelcomeFrame_jButton4_actionAdapter(this); jButton5.setToolTipText(退出系统); jButton5.setText(退出系统); jButton5.addActionListener(new WelcomeFrame_jButton5_actionAdapter(this); this.getContentPane().add(jPanel1, BorderLayout.CENTER); jPanel1.add(jPanel2, BorderLayout.EAST); jPanel2.add(jButton1, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0 ,GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0); jPanel2.add(jButton2, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0 ,GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(9, 0, 0, 21), 0, 0); jPanel2.add(jButton3, new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0 ,GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(10, 0, 0, 10), 0, 0); jPanel2.add(jButton5, new GridBagConstraints(0, 4, 2, 1, 0.0, 0.0 ,GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 11), 21, 0); jPanel2.add(jButton4, new GridBagConstraints(0, 3, 1, 1, 0.0, 0.0 ,GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(9, 0, 13, 0), 12, 0); class MyPanel extends JPanel public void paintComponent(Graphics g) super.paintComponent(g); imageIcon1.paintIcon(this, g, 0, 0); void jButton4_actionPerformed(ActionEvent e) MainFrame.main( null ); this.hide(); MainFrame.jTabbedPane1.setSelectedComponent( MainFrame.jPanel4); void jButton1_actionPerformed(ActionEvent e) MainFrame.main( null ); this.hide(); void jButton3_actionPerformed(ActionEvent e) MainFrame.main( null ); this.hide(); MainFrame.jTabbedPane1.setSelectedComponent( MainFrame.jPanel3); void jButton2_actionPerformed(ActionEvent e) MainFrame.main( null ); this.hide(); MainFrame.jTabbedPane1.setSelectedComponent( MainFrame.jPanel2); void jButton5_actionPerformed(ActionEvent e) System.exit(0); class WelcomeFrame_jButton4_actionAdapter implements java.awt.event.ActionListener WelcomeFrame adaptee; WelcomeFrame_jButton4_actionAdapter(WelcomeFrame adaptee) this.adaptee = adaptee; public void actionPerformed(ActionEvent e) adaptee.jButton4_actionPerformed(e); class WelcomeFrame_jButton1_actionAdapter implements java.awt.event.ActionListener WelcomeFrame adaptee; WelcomeFrame_jButton1_actionAdapter(WelcomeFrame adaptee) this.adaptee = adaptee; public void actionPerformed(ActionEvent e) adaptee.jButton1_actionPerformed(e); class WelcomeFrame_jButton3_actionAdapter implements java.awt.event.ActionListener WelcomeFrame adaptee; WelcomeFrame_jButton3_actionAdapter(WelcomeFrame adaptee) this.adaptee = adaptee; public void actionPerformed(ActionEvent e) adaptee.jButton3_actionPerformed(e); class WelcomeFrame_jButton2_actionAdapter implements java.awt.event.ActionListener WelcomeFrame adaptee; WelcomeFrame_jButton2_actionAdapter(WelcomeFrame adaptee) this.adaptee = adaptee; public void actionPerformed(ActionEvent e) adaptee.jButton2_actionPerformed(e); class WelcomeFrame_jButton5_actionAdapter implements java.awt.event.ActionListener WelcomeFrame adaptee; WelcomeFrame_jButton5_actionAdapter(WelcomeFrame adaptee) this.adaptee = adaptee; public void actionPerformed(ActionEvent e) adaptee.jButton5_actionPerformed(e); 2.12个人信息管理模块 功能:对学生个人信息进行管理,并且具有查询,删除,修改,插入等功能。代码如下: Font f = new java.awt.Font(SansSerif, 0, 12);UIManager.put(Label.font,f);UIManager.put(Label.foreground,Color.black);UIManager.put(Button.font,f);UIManager.put(Menu.font,f);UIManager.put(MenuItem.font,f);UIManager.put(List.font,f);UIManager.put(CheckBox.font,f);UIManager.put(RadioButton.font,f);UIManager.put(ComboBox.font,f); UIManager.put(TextArea.font,f); UIManager.put(dbTextArea.font,f); UIManager.put(font,f); MainFrame mainFrame = new MainFrame(); mainFrame.setFont(new java.awt.Font(SansSerif, 0, 12); mainFrame.pack(); mainFrame.setSize(600,450); mainFrame.show(); private void jbInit() throws Exception font1 = new java.awt.Font(SansSerif, 0, 12); this.getContentPane().setLayout(paneLayout1); jPanel1.setLayout(borderLayout1); jdbNavToolBar1.setDebugGraphicsOptions(0); jdbNavToolBar1.setAlignment(FlowLayout.CENTER); jPanel5.setLayout(borderLayout2); database1.setConnection(new com.borland.dx.sql.dataset.ConnectionDescriptor(jdbc:microsoft:sqlserver:/localhost:1433;databaseName=student, sa, sa, false, com.microsoft.jdbc.sqlserver.SQLServerDriver); database1.setDatabaseName(); jPanel6.setFont(new java.awt.Font(SansSerif, 0, 12); jPanel6.setMinimumSize(new Dimension(50, 100); jPanel6.setPreferredSize(new Dimension(50, 110); jPanel6.setLayout(borderLayout3); jPanel7.setFont(new java.awt.Font(SansSerif, 0, 12); jPanel7.setMinimumSize(new Dimension(100, 30); jPanel7.setPreferredSize(new Dimension(100, 40); jPanel7.setLayout(flowLayout1); jPanel8.setFont(new java.awt.Font(SansSerif, 0, 12); jPanel8.setMinimumSize(new Dimension(10, 10); jPanel8.setLayout(gridBagLayout2); jLabel1.setText(学号:); flowLayout1.setAlignment(FlowLayout.LEFT); jLabel2.setHorizontalAlignment(SwingConstants.RIGHT); jLabel2.setText(姓名:); jLabel3.setHorizontalAlignment(SwingConstants.RIGHT); jLabel3.setText(性别:); jLabel4.setHorizontalAlignment(SwingConstants.RIGHT); jLabel4.setText(班级:); jLabel5.setHorizontalAlignment(SwingConstants.RIGHT); jLabel5.setText(生日:); jLabel6.setHorizontalAlignment(SwingConstants.RIGHT); jLabel6.setText(电话:); jLabel7.setHorizontalAlignment(SwingConstants.RIGHT); jLabel7.setText(地址:); jButton1.setText(修改); jButton1.addActionListener(new MainFrame_jButton1_actionAdapter(this); jButton2.setText(取消); jdbTable1.setFont(new java.awt.Font(SansSerif, 0, 12); jdbTable1.setDataSet(queryDataSet2); jTabbedPane1.setFont(new java.awt.Font(SansSerif, 0, 12); jTabbedPane1.setMinimumSize(new Dimension(500, 194); jTabbedPane1.setPreferredSize(new Dimension(500, 607); queryDataSet2.setProvider(null); queryDataSet2.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(database1, SELECT student_info.student_id,student_info.student_name,student_info.student_class,student_info.stud + ent_sex,student_info.student_birthday,student_info.student_tel,student_info.student_address + FROM student.dbo.student_info, null, true, Load.ALL); column8.setCaption(生日); column8.setColumnName(student_birthday); column8.setDataType(com.borland.dx.dataset.Variant.TIMESTAMP); column8.setDisplayMask(yyyy-MM-dd); column8.setEditMask(yyyy-MM-dd); column8.setSchemaName(dbo); column8.setTableName(student_info); column8.setWidth(10); column8.setServerColumnName(student_birthday); column8.setSqlType(93); column9.setCaption(学号); column9.setColumnName(student_id); column9.setDataType(com.borland.dx.dataset.Variant.INT); column9.setEditMask(#); column9.setFont(new java.awt.Font(SansSerif, 0, 12); column9.setRowId(true); column9.setSchemaName(dbo); column9.setTableName(student_info); column9.setWidth(10); column9.setServerColumnName(student_id); column9.setSqlType(4); column10.setCaption(姓名); column10.setColumnName(student_name); column10.setDataType(com.borland.dx.dataset.Variant.STRING); column10.setPrecision(50); column10.setSchemaName(dbo); column10.setTableName(student_info); column10.setWidth(10); column10.setServerColumnName(student_name); column10.setSqlType(12); column11.setCaption(班级); column11.setColumnName(student_class); column11.setDataType(com.borland.dx.dataset.Variant.INT); column11.setSchemaName(dbo); column11.setTableName(student_info); column11.setWidth(10); column11.setServerColumnName(student_class); column11.setSqlType(4); column12.setCaption(性别); column12.setColumnName(student_sex); column12.setDataType(com.borland.dx.dataset.Variant.STRING); column12.setPrecision(50); column12.setSchemaName(dbo); column12.setTableName(student_info); column12.setWidth(10); column12.setServerColumnName(student_sex); column12.setSqlType(12); column13.setCaption(联系电话); column13.setColumnName(student_tel); column13.setDataType(com.borland.dx.dataset.Variant.STRING); column13.setPrecision(50); column13.setSchemaName(dbo); column13.setTableName(student_info); column13.setWidth(10); column13.setServerColumnName(student_tel); column13.setSqlType(12); column14.setCaption(联系地址); column14.setColumnName(student_address); column14.setDataType(com.borland.dx.dataset.Variant.STRING); column14.setPrecision(150); column14.setSchemaName(dbo); column14.setTableName(student_info); column14.setWidth(14); column14.setServerColumnName(student_address); column14.setSqlType(12); queryDataSet2.setColumns(new Column column9, column10, column11, column12, column8, column13, column14); queryDataSet2.addNavigationListener(new MainFrame_queryDataSet2_navigationAdapter(this); jPanel1.setFont(new java.awt.Font(SansSerif, 0, 12); jPanel1.setPreferredSize(new Dimension(472, 580); jPanel5.setFont(new java.awt.Font(SansSerif, 0, 12); tableScrollPane1.setFont(new java.awt.Font(SansSerif, 0, 12); tableScrollPane1.getViewport().setFont(new java.awt.Font(SansSerif, 0, 12); this.setFont(new java.awt.Font(SansSerif, 0, 12); jPanel2.setFont(new java.awt.Font(SansSerif, 0, 12); jPanel2.setLayout(borderLayout4); jLabel8.setText(学号:); jLabel9.setRequestFocusEnabled(true); jLabel9.setText(姓名: ); jLabel10.setText(班级: ); jLabel11.setText(性别: ); jdbNavToolBar2.setEnabled(false); jdbNavToolBar2.setAlignment(FlowLayout.CENTER); jPanel10.setMinimumSize(new Dimension(300, 10); jPanel10.setPreferredSize(new Dimension(300, 10);jPanel10.setLayout(borderLayout5);2.13 选课信息管理模块功能:对学生选课信息进行管理,方便学生查询,具有查询,修改,删除,插入功能模块代码如下:jLabel12.setText(学校设置可选课程信息); jPanel11.setMinimumSize(new Dimension(200, 10); jPanel11.setPreferredSize(new Dimension(200, 10); jPanel11.setLayout(borderLayout6); jLabel13.setText(个人已选课程信息); jButton3.setText(选课); jButton3.addActionListener(new MainFrame_jButton3_actionAdapter(this); jButton4.setText(退课); jButton4.addActionListener(new MainFrame_jButton4_actionAdapter(this); jPanel12.setLayout(xYLayout1); queryDataSet1.setReadOnly(false); queryDataSet1.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(database1, SELECT student_coursecode.course_code,student_coursecode.course_name,student_coursecode.course_period + ,student_coursecode.course_credit,student_coursecode.course_teacher,student_coursecode.course_address + FROM student.dbo.student_coursecode, null, true, Load.ALL); column1.setCaption(课程代号); column1.setColumnName(course_code); column1.setDataType(com.borland.dx.dataset.Variant.INT); column1.setRowId(true); column1.setSchemaName(dbo); column1.setTableName(student_coursecode); column1.setWidth(10); column1.setServerColumnName(course_code); column1.setSqlType(4); column2.setCaption(课程名称); column2.setColumnName(course_name); column2.setDataType(com.borland.dx.dataset.Variant.STRING); column2.setPrecision(50); column2.setSchemaName(dbo); column2.setTableName(student_coursecode); column2.setWidth(10); column2.setServerColumnName(course_name); column2.setSqlType(12); column3.setCaption(课程学时); column3.setColumnName(course_period); column3.setDataType(com.borland.dx.dataset.Variant.INT); column3.setSchemaName(dbo); column3.setTableName(student_coursecode); column3.setWidth(10); column3.setServerColumnName(course_period); column3.setSqlType(4); column4.setCaption(课程学分); column4.setColumnName(course_credit); column4.setDataType(com.borland.dx.dataset.Variant.DOUBLE); column4.setSchemaName(dbo); column4.setTableName(student_coursecode); column4.setWidth(10); column4.setServerColumnName(course_credit); column4.setSqlType(6); column5.setCaption(任课老师); column5.setColumnName(course_teacher); column5.setDataType(com.borland.dx.dataset.Variant.STRING); column5.setPrecision(50); column5.setSchemaName(dbo); column5.setTableName(student_coursecode); column5.setWidth(10); column5.setServerColumnName(course_teacher); column5.setSqlType(12); column6.setCaption(上课地点); column6.setColumnName(course_address); column6.setDataType(com.borland.dx.dataset.Variant.STRING); column6.setPrecision(50); column6.setSchemaName(dbo); column6.setTableName(student_coursecode); column6.setWidth(10); column6.setServerColumnName(course_address); column6.setSqlType(12); queryDataSet1.setColumns(new Column column1, column2, column3, column4, column5, column6); jdbTable2.setDataSet(queryDataSet1); jdbTable2.setEditable(false); column7.setCaption(学生姓名); column7.setColumnName(course_name); column7.setDataType(com.borland.dx.dataset.Variant.STRING); column7.setPrecision(50); column7.setSchemaName(dbo); column7.setTableName(student_course); column7.setWidth(10); column7.setServerColumnName(course_name); column7.setSqlType(12); jLabel14.setText(学号:); jLabel15.setText(性别: ); jLabel16.setRequestFocusEnabled(true); jLabel16.setText(姓名: ); jLabel17.setText(班级: ); jPanel3.setLayout(borderLayout7); jPanel15.setMinimumSize(new Dimension(200, 100); jPanel15.setPreferredSize(new Dimension(200, 250); jPanel15.setLayout(borderLayout8); jPanel14.setLayout(borderLayout9); jPanel14.setMinimumSize(new Dimension(300, 50); jPanel14.setPreferredSize(new Dimension(300, 50); jPanel14.setVerifyInputWhenFocusTarget(true); jPanel13.setPreferredSize(new Dimension(404, 40); jPanel16.setPreferredSize(new Dimension(280, 10);jPanel16.setLayout(gridBagLayout1);2.14奖励信息管理模块功能:对学生奖励信息进行管理,具有插入,删除,修改,查询功能模块代码如下:jLabel18.setText(获奖时间:); jLabel19.setText(获奖名称:); jdbTextField1.setText(jdbTextField1); jdbTextField1.setColumnName(gcheck_time); jdbTextField1.setDataSet(qSet_jiangli); jdbTextField2.setText(jdbTextField2); jdbTextField2.setColumnName(gcheck_title); jdbTextField2.setDataSet(qSet_jiangli); jdbTextArea1.setText(jdbTextArea1); jdbTextArea1.setColumnName(gcheck_disc); jdbTextArea1.setDataSet(qSet_jiangli); jPanel17.setLayout(borderLayout10); jButton5.setText(增加); jButton6.setText(取消); jPanel18.setLayout(borderLayout11); borderLayout11.setVgap(10); jLabel20.setText(获奖内容具体描述:); jdbTextField3.setEnabled(true); jdbTextField3.set
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!