《java连接sqlserver学生成绩管理系统》由会员分享,可在线阅读,更多相关《java连接sqlserver学生成绩管理系统(21页珍藏版)》请在金锄头文库上搜索。
1、学生成绩管理系统课程设计实验报告题 目 学生成绩管理系统 学 院 数学与信息工程学院 专 业 计算机科学与技术 班 级 同组成员 编写日期 一、 课程设计目的 做这个小的学生成绩管理系统来加深对JAVA所学知识的巩固,以及学习JAVA与数据库的连接和JAVA的GUI图形界面。二、 需求分析此系统实现如下系统功能:(1)使得学生的成绩管理工作更加清晰、条理化、自动化。(2)通过用户名和密码登录系统,查询学生基本资料,学生所学课程成绩,等功能。 容易地完成学生信息的查询操作。(3) 设计人机友好界面,功能安排合理,操作使用方便,并且进一步考虑系统在安全性,完整性,并发控制,备份和恢复等方面的功能要
2、求。三、系统模块设计用户登录此系统可分为2个模块,教师管理模块和学生操作模块,期中教师又包括学生信息输入与学生成绩录入等;学生模块则包括学生成绩查询与学生信息录入查询操作等。系统流程图:学生学生信息查询学生成绩查询教师学生成绩录入学生信息录入四、数据库1、学生表:FieldTypeNullKeyComment IDVarchar(10)PRI用户名(学号)PwdVarchar(10)密码NameChar(10)姓名SexChar(10)性别ClassChar(10)班级CollageChar(10)学院2、教师表FieldTypeNullKeyComment IDVarchar(10)PRI用
3、户名PwdVarchar(10)密码3、成绩表FieldTypeNullKeyComment Sidchar(10)PRI学号计算机网络char(10)课程Linux操作系统char(10)课程计算机专业英语char(10)课程计算机信息技术char(10)课程Java程序设计char(10)课程数据库应用实训char(10)课程高等数学char(10)课程XMLchar(10)课程五、E-R图六、心得体会通过本次课程设计,成功的完成了这个小型简单的系统的设计,在整个设计过程中我对JAVA使用和它强大的作用有了一个更深刻的认识,尽管这个系统很简单,但是它让我综合运用了这个学期所学的JAVA的很
4、多内容,在此基础上,对JAVA的基础知识得到了更好的巩固。在制作的过程中我也学到很多思想:首先,要学会统筹全局,合理规划,例如在制作整个框架的时候提前就要做全面考虑,要把整个结构图画出来,并且要对数据库表里的东西做全面规划。同时在编写程序的时候也要想好先实现什么功能,再实现什么功能,这样做出来的东西才有条理性,更容易实现和理解。其次,要细心仔细。Java程序虽然容易理解,但在写的过程中一不留心就会出现错误。当然出错是在所难免的,与性质有关的错误可以经过思考讨论后进行改正,但如果粗心大意,出现输入上的错误就很难发现和修改,会耽误很多时间。我认为最大的收获是提高了自己的动手能力。在平时的上机中大多
5、数是根据书上的思想和布局来写程序的。这次的课程设计要自己思考自己写,考虑的东西比平时上机考虑的要多的多。在整个设计过程中写代码不是最难的,最难的是构思和布局。这次课程设计也是一次很好的实践活动,让我们体会到了java的神奇作用。附录:源代码1、用户登录界面import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.sql.*;public class Systems extends JFrame implements ActionListenerstatic Systems ss;JPanel panel
6、 = new JPanel();JLabel label1 = new JLabel(输入姓名:);JTextField name = new JTextField();JLabel label2 = new JLabel(密 码:);JPasswordField pwd = new JPasswordField();JButton Enter = new JButton(登录);JButton Exit = new JButton(退出);String url = E:mysqlTM1.jpg;ButtonGroup bgp = new ButtonGroup();JRadioButton
7、stu = new JRadioButton(学生);JRadioButton tch = new JRadioButton(教师);public Systems()super(登录系统);this.setResizable(false); JLabel img = new JLabel(new ImageIcon(url);img.setBounds(0,0,500,125);panel.add(img);stu.setBounds(165,210,70,20);tch.setBounds(265,210,70,20);bgp.add(stu);bgp.add(tch);panel.add(
8、stu);panel.add(tch);Enter.setBounds(150,250,80,20);Exit.setBounds(270,250,80,20);Enter.addActionListener(this);Exit.addActionListener(this);panel.add(Enter);panel.add(Exit); panel.setLayout(null);this.add(panel);label1.setBounds(135,130,100,25);panel.add(label1); name.setBounds(265,130,100,25);panel
9、.add(name);label2.setBounds(135,165,100,25);panel.add(label2); pwd.setBounds(265,165,100,25);panel.add(pwd);this.setBounds(100,100,500,350);this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);public void actionPerformed(ActionEvent e)if(e.getSource()=Enter)String username , pas
10、sword;username = name.getText(); password = new String(pwd.getPassword();tryClass.forName(sun.jdbc.odbc.JdbcOdbcDriver);catch (ClassNotFoundException ce)JOptionPane.showMessageDialog(ss,ce.getMessage();if(stu.isSelected()try Connection con = DriverManager.getConnection(jdbc:odbc:shujuku,sa,); Statem
11、ent stmt = con.createStatement(); ResultSet rs = stmt.executeQuery(select * from STU); while(rs.next() if(rs.getString(ID).equals(username) if(rs.getString(Pwd).equals(password) JOptionPane.showMessageDialog(ss,登陆成功); Students stu = new Students(); else JOptionPane.showMessageDialog(ss,登录失败); rs.clo
12、se(); stmt.close(); catch (SQLException se) JOptionPane.showMessageDialog(ss,se.getMessage(); else if(tch.isSelected()tryConnection con = DriverManager.getConnection(jdbc:odbc:shujuku,sa,);Statement stmt = con.createStatement();ResultSet rs = stmt.executeQuery(select * from TCH);while(rs.next()if(rs.getString(ID).equals(username)if(rs.getString(Pwd).eq