欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
全部分类
  • 教学课件>
  • 医学资料>
  • 技术资料>
  • 学术论文>
  • 资格考试>
  • 建筑施工>
  • 实用文档>
  • 其他资料>
  • ImageVerifierCode 换一换
    首页 沃文网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    java学生管理系统课程设计.doc

    • 资源ID:854793       资源大小:1,006.97KB        全文页数:30页
    • 资源格式: DOC        下载积分:20积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录 微博登录
    二维码
    微信扫一扫登录
    下载资源需要20积分
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

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

    java学生管理系统课程设计.doc

    1、目录 一、需求分析11.1课程设计目的11.2课程设计要求11.3选题与操作流程11.4开发环境与开发平台2二、总体设计22.1总体设计概念22.2系统功能22.3系统架构32.4 模块划分3三、 详细设计43.1 SQL数据库表43.2程序系统设计图:53.3主要的类及类间关系:5四、 系统实现编码及运行结果64.1登陆界面:64.2管理员权限:74.3学生权限:134.4核心代码:14五、结论与总结295.1课程设计结论295.2课程设计总结与体会29 一、需求分析1.1课程设计目的a) 掌握面向对象程序设计基本要素(封装、继承、多态)b) 掌握JAVA语言常用类包及其常用方法和JAVA语

    2、言基本语法c) 掌握基于AWT的图形用户界面设计i. 常用标准控件的使用,如标签、按钮、菜单、文本框、单选按钮、滚动条等。ii. 事件处理机制d) 掌握布局、对话框的使用e) 掌握发布JAVA应用程序1.2课程设计要求1. 学生学籍管理系统的需求分析。2. 学生学籍管理系统的总体设计,列出主要的类和类间关系。3. 列出具体的实现代码。4. 写出程序的实现细节,主要的功能界面,实现说明。5. 写出总结和评价1.3选题与操作流程在一些学校等机构,随着学生数量的不断增加,学生的信息不断增多,人工管理信息的难度也越来越大。而且效率也是很低的。所以如何自动高效地管理信息是这些年来许多人所研究的。学生学籍

    3、管理系统,以SQL数据库作为后台信息存储,Java作为前台系统的语言。提供了对学生信息添加,查询,修改,删除的功能。实现了最基本的信息管理。1.4开发环境与开发平台操作系统:Windows 8数据库: SQL 2012Java开发工具: My Eclipse2014JDK: JDK1.7二、总体设计2.1总体设计概念学生学籍管理系统,可用于学校等机构的学生信息管理,查询,更新与维护,使用方便,易用性强,图形界面清晰明了。该软件用java语言编写,用SQLServer2012数据库作为后台的数据库进行信息的存储,用SQL语句完成添加,查询,修改,删除的操作。用JDBC驱动实现前台Java与后台S

    4、QL数据库的连接。Java语言跨平台性强,可以在Windows等系统下使用,方便简单,安全性好。2.2系统功能该系统实现的大致功能:1 登录界面。该登录分为学生登录和管理员登录,用于权限分配。用户通过验证通过后方可进入管理系统。管理员登录后可以对学生信息进行增加、修改、删除、查询。一定程度上保证了信息安全性,防止他人未经允许篡改学生信息。学生登录后可以进行查询和修改登录密码的功能。2 查询学生信息。可以选择由用户选择“显示系统中当前的所有学生信息”。也可以选择按照“某一个学号查询该学号的学生信息”。查询到的信息会在窗口中依次显示出来。3 添加学生信息。可以按照图形的界面的显示依次输入新学生的“

    5、学号”,“姓名”,“性别”,“专业”,“家庭住址”,“籍贯”,“入学时间”。完成新纪录的添加。以及添加学生的各科成绩。4 修改学生信息。可以选择按照“学号”找到该学生的学生信息并输入要修改的属性,并输入新的数据。完成对学生记录的修改。5 删除学生记录。可以根据输入的“学号”进行删除的操作。6 修改密码。登录当前系统的用户可以通过此功能实现登录密码的修改。2.3系统架构界面使用Java应用程序用户界面的开发工具包Swing进行窗体界面的布局,以及实现部分窗口事件的相应。后台使用SQL2012数据库进行数据的存储。2.4 模块划分该系统可以分为两大模块1)管理员:主要实现对学生信息的管理功能。具体

    6、功能如下:添加功能: 添加学生基本信息和学生成绩。修改功能: 对学生的基本信息进行修改。删除功能: 删除某个学号学生的基本信息。查询功能: 可以查询某个学生的基本信息,也可以将所有学生的信息和成绩以表格的形式显示出来。修改密码: 管理员可以将自己的登录密码进行修改。退出系统: 点击后,将会退出该系统。2)学生:主要实现查询功能。具体功能如下:查询成绩:点击该选项,就会将当前登陆的学生成绩显示出来。修改密码:登录后,学生可以根据需要对自己的登录密码进行修改。退出系统: 点击后,将会退出该系统。三、 详细设计3.1 SQL数据库表 该系统数据库中有三张表分别是users(管理员)、student(

    7、学生基本信息)、grade(学生成绩)Users表 Student表 Grade表 3.2程序系统设计图:修 改登录增 加学生学籍管理系统 删 除登录验证证 查 询 失败 管理员成功修改密码 退出 学生成功退出修改密码查询成绩退 出 Database数据库连接 Add 3.3主要的类及类间关系:ChangePassword extendsStuBean数据库操作 Modify ManagerLogin Delete Stu Select :SelectGradeChangePassword 四、 系统实现编码及运行结果4.1登陆界面: 登录界面选择用户类型,输入“用户名”和“密码”,点击“登录

    8、”,通过验证则进入主功能菜单。如果输入错误则会有相应的警告!用户名或密码不正确时:登录成功后会进入相应的主界面。4.2 管理员权限: 4.2.1添加学生信息 当管理员点击添加学生信息时出现此界面。当添加的学生在数据库中已经存在时出现此提示信息: 4.2.2添加学生成绩:当管理员点击添加学生成绩时出现此界面。当添加的学生的成绩在数据库中已经存在时出现此提示信息:添加成功后出现此提示信息:4.2.3修改学生信息:管理员输入要修改的学生学号,点击查询,该学生信息就会出现,此时修改按钮可用修改后,点击“修改”,出现确认对话框点击“是”之后,出现提示消息 4.2.4删除学生信息:管理员输入要删除的学生学

    9、号,点击查询,该学生信息就会出现,此时“删除”按钮可用管理员点击“删除”后,出现确认对话框点击“是”之后学生信息被删除。4.2.5查询单个学生信息: 点击查询后,该学生信息将会被显示出来。4.2.6 查询所有学生信息:4.2.7查询所有学生成绩:4.2.8修改密码: 原密码不正确时,提示消息:原密码正确,但两次新密码不相同时,提示消息:成功修改后,提示消息:4.3学生权限: 4.3.1学生成绩查询: 4.3.2学生修改密码: 界面同管理员修改密码4.4核心代码: 数据库Database:package 学生学籍管理系统;import java.sql.*;public class Databa

    10、se private Statement stmt=null;ResultSet rs=null;private Connection conn=null;String sql;String strurl=jdbc:sqlserver:/localhost:1433;DatabaseName=student; public Database() /* * 打开数据库连接 */ public void OpenConn()throws Exception try Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver); conn=D

    11、riverManager.getConnection(strurl,sa,201314); catch(Exception e) System.err.println(OpenConn:+e.getMessage(); /* * 执行SQL语句,返回数据集rs */ public ResultSet executeQuery(String sql) stmt =null; rs=null; try stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); rs=stmt.ex

    12、ecuteQuery(sql); catch(SQLException e) System.err.println(executeQuery:+e.getMessage(); return rs; /* * 执行SQL语句 */ public void executeUpdate(String sql) stmt =null; rs=null; try stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); stmt.executeQuery(sql); mit(); ca

    13、tch(SQLException e) System.err.println(executeUpdate:+e.getMessage(); public void closeStmt() try stmt.close(); catch(SQLException e) System.err.println(closeStmt:+e.getMessage(); /* * 关闭数据库连接 */ public void closeConn() try conn.close(); catch(SQLException e) System.err.println(aq.closeConn:+e.getMe

    14、ssage(); 数据库操作类StuBean: package 学生学籍管理系统;import java.sql.*;import javax.swing.*;public class StuBean String sql; ResultSet rs=null; String Name; String Password; String Type; String sNum; String sName; String sSex; String sMajor; String sHome; String sBirth; String sYear; String GaoDeng; String LiSa

    15、n; String ShuJu; String GaiLv; String Java; String English; /* * 验证登陆 */ public boolean login(String name,String password,String type) Database DB=new Database(); this.sNum=name; this.Name=name; this.Password=password; this.Type=type; if(Password=null|Password.equals() JOptionPane.showMessageDialog(

    16、null, 请输入正确的用户名和密码,错误,JOptionPane.ERROR_MESSAGE); return false; else if(Type.equals(学生) sql=select * from student where snum=+sNum+and password=+Password+; else if(Type.equals(管理员) sql=select * from users where name=+Name+and password=+Password+; try DB.OpenConn(); rs=DB.executeQuery(sql); if(rs.nex

    17、t() return true; else return false; catch(Exception e) return false; finally DB.closeStmt(); DB.closeConn(); /* * 修改密码 */ public void ChangePassword(String name,String password,String type) Database DB=new Database(); this.sNum=name; this.Name=name; this.Password=password; this.Type=type; if(Passwor

    18、d=null|Password.equals() JOptionPane.showMessageDialog(null, 请输入新密码,错误,JOptionPane.ERROR_MESSAGE); else if(Type.equals(学生) sql=update student set password=+Password+ where snum =+sNum+; else if(Type.equals(管理员) sql=update users set password=+Password+ where name =+Name+; try DB.OpenConn(); DB.execut

    19、eUpdate(sql); JOptionPane.showMessageDialog(null,成功修改密码!); catch(Exception e) System.out.println(e); JOptionPane.showMessageDialog(null,修改失败!,错误,JOptionPane.ERROR_MESSAGE); finally DB.closeStmt(); DB.closeConn(); /* * 添加学生信息 */ public void stuAdd(String num,String name,String sex,String major,String

    20、 home,String birth,String year) Database DB=new Database(); this.sNum=num; this.sName=name; this.sSex=sex; this.sMajor=major; this.sHome=home; this.sBirth=birth; this.sYear=year; if(sNum=null|sNum.equals()|sName=null|sName.equals() JOptionPane.showMessageDialog(null, 请输入学号和姓名,错误,JOptionPane.ERROR_ME

    21、SSAGE); else sql=insert into student(snum,sname,ssex,smajor,shome,sbirth,syear) values + (+sNum+,+sName+,+sSex+,+sMajor+,+sHome+,+sBirth+,+sYear+) ; try DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,成功添加一条新的纪录!); catch(Exception e) System.out.println(e); JOptionPane.showMe

    22、ssageDialog(null,保存失败!,错误,JOptionPane.ERROR_MESSAGE); finally DB.closeStmt(); DB.closeConn(); /* * */ public void GradeAdd(String num,String name,String gaodeng,String lisan,String shuju ,String gailv,String java ,String english ) Database DB=new Database(); this.sNum=num; this.sName=name; this.GaoD

    23、eng=gaodeng; this.LiSan=lisan; this.ShuJu=shuju; this.GaiLv=gailv; this.Java=java; this.English=english; if(sNum=null|sName=null) JOptionPane.showMessageDialog(null, 请输入学号和姓名,错误,JOptionPane.ERROR_MESSAGE); else sql=insert into grade(snum,sname,高等数学,离散数学,数据结构,概率论,Java,大学英语) values + (+sNum+,+sName+,+

    24、GaoDeng+,+LiSan+,+ShuJu+,+GaiLv+,+Java+,+English+) ; try DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,成功添加一条新的纪录!); catch(Exception e) System.out.println(e); JOptionPane.showMessageDialog(null,保存失败!,错误,JOptionPane.ERROR_MESSAGE); finally DB.closeStmt(); DB.closeConn(); /*

    25、 * 修改学生信息 */ public void stuModify(String num,String name,String sex,String major,String home,String birth,String year) Database DB=new Database(); this.sNum=num; this.sName=name; this.sSex=sex; this.sMajor=major; this.sHome=home; this.sBirth=birth; this.sYear=year; sql=update student set sname=+sNa

    26、me+,ssex=+sSex+,smajor=+sMajor+,shome=+sHome+,sbirth=+sBirth+,syear=+sYear+ where snum=+Integer.parseInt(sNum)+; try DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,成功修改一条新的纪录!); catch(Exception e) System.out.println(e); JOptionPane.showMessageDialog(null,更新失败!,错误,JOptionPan

    27、e.ERROR_MESSAGE); finally DB.closeStmt(); DB.closeConn(); /* * 删除学生信息 */ public void stuDelete(String num) Database DB=new Database(); this.sNum=num; sql=delete from student where snum=+Integer.parseInt(sNum)+; try DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,成功删除一条纪录!);c

    28、atch(Exception e) System.out.println(e); JOptionPane.showMessageDialog(null,删除失败!,错误,JOptionPane.ERROR_MESSAGE); finally DB.closeStmt(); DB.closeConn(); /* * 按学号查询 */ public String stuSearch(String num) Database DB=new Database(); this.sNum=num; String s=new String6; if(sNum=null|sNum.equals() s=nul

    29、l; JOptionPane.showMessageDialog(null, 请输入学号,错误,JOptionPane.ERROR_MESSAGE); else sql=select * from student where snum=+Integer.parseInt(sNum)+; try DB.OpenConn(); rs=DB.executeQuery(sql); if(rs.next() s0=rs.getString(sname); s1=rs.getString(ssex); s2=rs.getString(smajor); s3=rs.getString(shome); s4=

    30、rs.getString(sbirth); s5=rs.getString(syear); else s=null; JOptionPane.showMessageDialog(null, 您查询的学生信息不存在,错误,JOptionPane.ERROR_MESSAGE); catch(Exception e) finally DB.closeStmt(); DB.closeConn(); return s; /* * 查询成绩 */ public String stuSelectGrade(String num) Database DB=new Database(); this.sNum=n

    31、um; String s=new String7; sql=select * from grade where snum=+Integer.parseInt(sNum)+; try DB.OpenConn(); rs=DB.executeQuery(sql); if(rs.next() s0=rs.getString(sname); s1=rs.getString(高等数学); s2=rs.getString(离散数学); s3=rs.getString(数据结构); s4=rs.getString(概率论); s5=rs.getString(java); s6=rs.getString(大学

    32、英语); else s=null; catch(Exception e) finally DB.closeStmt(); DB.closeConn(); return s; 登陆类Login: package 学生学籍管理系统;import javax.swing.*;import java.awt.*;import java.awt.event.*;public class Login extends JFrame implements ActionListenerstatic String type;JFrame m=new JFrame(您好,请您先登录!);JTextField t1=

    33、new JTextField(null,5); JPasswordField t2=new JPasswordField(null,5); JPasswordField t3=new JPasswordField(null,5);JRadioButton b1=new JRadioButton(学生);JRadioButton b2=new JRadioButton(管理员);JLabel l1=new JLabel(用户名:); JLabel l2=new JLabel(密码:); Label l3=new Label(确认密码:); JLabel jpic; JLabel l=new JL

    34、abel(欢迎登陆学籍管理系统); JButton bt1=new JButton(登陆); JButton bt2=new JButton(退出); public Login() Container n=m.getContentPane(); n.setLayout(null); l.setFont(new Font(TimesRoman,Font.BOLD,24); l.setBounds(120,20,300,30); l1.setBounds(193,100,75,30); l1.setFont(new Font(TimesRoman,Font.BOLD,16); t1.setBoun

    35、ds(250,100,150,30); l2.setBounds(193,140,75,30); l2.setFont(new Font(TimesRoman,Font.BOLD,16); t2.setBounds(250,140,150,30); bt1.setBounds(250,180,60,30); bt2.setBounds(340,180,60,30); jpic=new JLabel(new ImageIcon(image/denglu.jpg); jpic.setBounds(68,90,120,100); n.add(l);n.add(l1);n.add(t1); n.add(l2); n.add(t2);n.add(l3);n.add(t3); n.add(bt1);n.add(bt2);n.add(jpic); b1.setBounds(250,70,70,30); b2.setBounds(340,70,70,30); ButtonGroup rg=new ButtonGroup(); n.add(b2); rg.add(b2); n.add(b1); rg.add(b1); bt1.addActionListener(this); bt2.addActionListener(this); m.setSize(500,400);


    注意事项

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

    版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

    Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1

    陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922