JAVA+SQL学生学籍管理系统代码及实验报告之令狐文艳创作_第1页
JAVA+SQL学生学籍管理系统代码及实验报告之令狐文艳创作_第2页
JAVA+SQL学生学籍管理系统代码及实验报告之令狐文艳创作_第3页
JAVA+SQL学生学籍管理系统代码及实验报告之令狐文艳创作_第4页
JAVA+SQL学生学籍管理系统代码及实验报告之令狐文艳创作_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 令狐文艳学生学籍管理系统1令狐文艳2 课程设计目的、设计内容与需求分析1.1 课程设计目的通过本次课程设计的实践操作,能够让学生懂得 Java、SQL 的各种相关知识的使用,真正的提高学生独立开发设计Java 程序,把课堂上的知识运用在实践上,一门编程语言只有在不断实践操作和练习上才会有进步。1.2 软件设计内容学生学籍管理系统,可用于学校等机构的学生信息管理,查询,更新与维护,使用方便,易用性强,图形界面清晰明了。该软件用 java 语言编写,用 SQLServer2005 数据库作为后台的数据库进行信息的存储,用 SQL 语句完成添加,查询,修改,删除的操作。用 ODBC 驱动实现前台J

2、ava 与后台 SQL 数据库的连接。Java 语言跨平台性强,可以在 windows,linux,ubuntu 等系统下使用,方便简单,安全性好。SQLServer2005 数据库高效安全,两者结合可相互利用各自的优势。系统可供输入的属性有“学号”,“姓名”,“性别”,“班级”,“学院”,“籍贯”。该系统实现的大致功能:1管理员登陆界面。该界面可以输入管理员号,登陆密码。用户通过验证通过后方可进入管理系统。一定程度上保证了信息安全性,防止他人未经允许篡改学生信令狐文艳 令狐文艳息。2查询学生信息。可以选择由用户选择“显示系统中当前的所有学生信息”。也可以选择按照“某一个学号查询该学号的学生信

3、息”。查询到的信息会在窗口中依次显示出来。3添加学生信息。可以按照图形的界面的显示依次输入新学生的“学号”,“姓名”,“性别”,“班级”,“学院”,“籍贯”。完成新纪录的添加。4修改学生信息。可以选择按照“学号”或者“姓名”找到该学生的学生信息并输入要修改的属性,并输入新的数据。完成对学生记录的修改。5删除学生记录。可以根据输入的“学号”或者”姓名”进行删除的操作。1.3 需求分析在一些学校等机构,随着学生数量的不断增加,学生的信息不断增多,人工管理信息的难度也越来越大。而且效率也是很低的。所以如何自动高效地管理信息是这些年来许多人所研究的。随着这些年电脑计算机的速度质的提高,成本的下降, I

4、T互联网大众趋势的发展。我们使用电脑的高效率才处理数据信息成为可能。 学生学籍管理系统的出现,正是管理人员与信息数据,计算机的进入互动时代的体现。友好的人机交互模式,清晰简明的图形界面,高效安全的操作使得我们对成千上万的信息的管理得心应手。令狐文艳 令狐文艳学生学籍管理系统,以 SQL 数据库作为后台信息存储,Java 作为前台系统的语言。提供了对学生信息添加,查询,修改,删除的功能。实现了最基本的信息管理。2 设计思路与主功能设计2.1 设计思路2.1.1 开发环境和软件(1) 操作系统:Windows 7(2) 数据库软件:SQL Server 2005(3) Java 开发工具:Ecli

5、pse2.1.2 SQL 数据库表结构2.1.3 程序系统设计图查询修改显示1).管理员登陆界面。该界面可以输入管理员号,登陆密码。用户通过验证通过后方可进入管理系统。一定程度上保删除退出证了信息安全性,防止他人未经允许篡改学生信息。2).查询学生信息。可以选择由用户选择“显示系统中当前的所有学生信息”。也可以选择按照“某一个学号查询该学号的学生信息”。查询到的信息会在窗口中依次显示出来。3).添加学生信息。可以按照图形的界面的显示依次输入新学生的“学号”,“姓名”,“性别”,“班级”,“学院”,“籍贯”。完成新纪录的添加。4).修改学生信息。可以选择按照“学号”或者“姓名”找令狐文艳 令狐文

6、艳到该学生的学生信息并输入要修改的属性,并输入新的数据。完成对学生记录的修改。5).删除学生记录。可以根据输入的“学号”或者”姓名”进行删除的操作。6).显示学生信息。可以显示所有学生的信息、以供查看。2.2 功能设计与介绍1)、添加学生信息2)、修改学生信息3)、查询学生信息4)、删除学生信息5)、显示学生信息6)、退出管理系统具体功能的介绍和数据测试3流程图:学生学籍管函理数系之统间相互调用的图示:登录验证登录验证Modify()Delete()Display()3.1登录界面输入“姓名”和“密码”,点击“确定”,通过验令狐文艳 令狐文艳证则进入主功能菜单。如果输入错误则会有相应的警告!1

7、. 当输入了一个错误时,会出现下图!2.登陆成功后提示主功能界面 显示点击, 则弹出下面的选择菜单。添加3.2.2点 击, 则 弹 出 下 面 的 选 择 菜 单 。令狐文艳 令狐文艳添加学生信息1、设置的学号为主键、所以若添加的学号已存在的、会弹出如下图的提示:2.成功添加学生信息修改学生信息3.2.3点 击, 则 弹 出 下 面 的 选 择 菜 单 。令狐文艳 令狐文艳若 输 入 的 学 号 不 存 在 的 时 候 会 有 如 下 提 示 框 :4如果输入的学号在数据库中可以查询的到、则会有弹出菜5下面的单:令狐文艳 令狐文艳然 后 修 改 学 生 对 应 框 的 学 生

8、信 息 、 修 改 完 成 后 、 点 击、弹出下面的提示3.2.4 查询学生信息点击, 则弹出下面的选择菜单。1.若输入的学号不存在、会弹出如下提示:2、输入的学号存在的时候、会显示学生的所有信息:3.2.5 删除学生信息令狐文艳 令狐文艳点击, 则弹出下面的选择菜单。1.输入的学号不存在时、会弹出提示2.输入学号存在时、完成删除后弹出提示3.2.6 退出点击 ,退出本学籍管理系统。4 课程设计总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程. 本次课程设计虽然很辛苦,实在是受益匪浅。本来这门课的知识学的

9、就不够扎实,本次课程设计,在设计过程中碰到了很多问题,刚开始要设计的时候,还真不知道从哪里下手但最终在图书、同学和老师的帮助下都得到了解决,让我学会了好多书本上没有的东西,通过本次课程设计我也能将课本上的知识融会贯通,起到了很好的辅助学习的效果,但是我发现我学到的知识比整整一个学期学到的都多。理论和实践的相结合是学习最有效的方法。在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,一定把以前所学过的知识重新温故。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得

10、出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。5、参考文献:令狐文艳 令狐文艳1.数据库系统原理与应用孟彩霞主编人民教育出版社2. JAVA 程序设计James Cohoon /Jack Davidson 著清华大学出版社3.JAVA 项目开发案例整合白伟明李伟等著电子工业出版社6、代码:2.登陆:Loginimport java.awt.Dimension;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java

11、x.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPasswordField;import javax.swing.JTextField;public class Login public static void main(String args) final String userName = 1;final String passwrod = 1;final JFrame jFrame = new JFr

12、ame( 登陆界面);Dimensiondimension=Toolkit.getDefaultToolkit().getScreenSize();令狐文艳 令狐文艳jFrame.setBounds(int)dimension.getWidth() - 200) / 2,(int)dimension.getHeight() - 300) / 2, 200, 150);jFrame.setResizable(false);jFrame.setLayout(null);jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);JLabel labe

13、l1 = new JLabel( 姓名);label1.setBounds(10, 10, 100, 30);jFrame.add(label1);JLabel label2 = new JLabel( 密码);label2.setBounds(10, 40, 100, 30);jFrame.add(label2);final JTextField text1 = new JTextField();text1.setBounds(50, 15, 130, 20);jFrame.add(text1);final JPasswordField text2 = new JPasswordField(

14、);text2.setBounds(50, 45, 130, 20);jFrame.add(text2);JButton button = new JButton(Login);button.setBounds(10, 75, 170, 40);button.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEvent e) if(userName.equals(text1.getText()passwrod.equals(text2.getText() &令狐文艳 令狐文艳jFra

15、me.dispose();/使远窗口消失JOptionPane.showMessageDialog(null, 登陆成功, 提示,JOptionPane.INFORMATION_MESSAGE);jFrame.dispose();(new Menu().go(); else JOptionPane.showMessageDialog(null, 错误, 提示,JOptionPane.ERROR_MESSAGE);text1.setText();text2.setText(););jFrame.add(button);jFrame.setVisible(true);jFrame.setLocat

16、ionRelativeTo(null);3.:主界面:Menuimport java.awt.Container;import java.awt.LayoutManager;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;importjava.awt.*;令狐文艳 令狐文艳import javax.swing.JButton;import javax.swing.JFrame;importjava.awt.event.WindowAdapter;importjava.awt.event.WindowE

17、vent;public class Menu JFrame jf;JButton j1,j2, j3, j4, j5,j6;publicstaticvoidmain(Stringargs)Menum =newMenu();m.go();publicvoidgo()jf=newJFrame(学生学籍管理系统);jf.setBounds(200, 200, 300, 200);Containercp=jf.getContentPane();cp.setLayout(newFlowLayout(FlowLayout.LEADING,20,20);j1=newJButton(添加学生信息);j2=ne

18、wJButton(修改学生信息);j3=newJButton(查询学生信息);j4=newJButton(删除学生信息);j5=newJButton(显示学生信息);j6=newJButton(退出管理系统);cp.add(j1);令狐文艳 令狐文艳cp.add(j2);cp.add(j3);cp.add(j4);cp.add(j5);cp.add(j6);j1.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)/jf.dispose();new Add(););j2.addActio

19、nListener(new ActionListener()public void actionPerformed(ActionEvent e)/jf.dispose();Modify modify=new Modify(););j3.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)/jf.dispose();Search search=new Search(););j4.addActionListener(new ActionListener()令狐文艳 令狐文艳public vo

20、id actionPerformed(ActionEvent e)/jf.dispose();Delete delete=new Delete(););j5.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)/jf.dispose();Display display=new Display(););j6.addActionListener(new ActionListener()/ActionListener 接收动作事件的监听器接口。/在处理动作事件感兴趣的类实现这个接口,这个类创建

21、的对象注册一个组件,使用组件的 addActionListener 方法。/动作事件发生时,该对象的 actionPerformed 方法被调用。public void actionPerformed(ActionEvent ae)System.exit(0););jf.setVisible(true);/ jf.setLocationRelativeTo(null);/ jf.setLocationRelativeTo(null) 是用来使窗口显示在屏幕正中间令狐文艳 令狐文艳(三)、添加:Addimport java.awt.*;import javax.swing.*;import ja

22、va.awt.event.*;import java.sql.*;public class Add extends JFrame implementsActionListenerstatic Add s;/*添加学生信息控件*/JPanel jpl = new JPanel();JLabel label1 = new JLabel( 添 加 学 生 信 息,JLabel.CENTER);JLabel label2 = new JLabel(学号:,JLabel.CENTER);JLabel label3 = new JLabel(姓名:,JLabel.CENTER);JLabel label4

23、 = new JLabel(性别:,JLabel.CENTER);JLabel label5 = new JLabel(班级:,JLabel.CENTER);JLabel label6 = new JLabel(生日:,JLabel.CENTER);JLabel label7 = new JLabel( 政治面貌:,JLabel.CENTER);JLabel label8 = new JLabel( 入学年份:,JLabel.CENTER);JLabel label9 = new JLabel( 入学成绩:,JLabel.CENTER);JLabel labelA = new JLabel(

24、联系方式:,JLabel.CENTER);JLabel labelB = new JLabel( 家庭住址:,JLabel.CENTER);令狐文艳 令狐文艳/JLabel labelC = new JLabel( 备 注 信 息 :,JLabel.CENTER);JTextField Sno = new JTextField(2);JTextField Sname = new JTextField(4);JTextField Ssex = new JTextField();JTextField Sclas = new JTextField();JTextField Sbirth = new

25、JTextField();JTextField Snation = new JTextField();JTextField Syear = new JTextField();JTextField Sgrade = new JTextField();JTextField Stel = new JTextField();JTextField Saddress = new JTextField();JButton reset = new JButton( 重置);JButton addmsg = new JButton( 添加);public Add()super(添加学生信息);this.setR

26、esizable(false);this.setSize(500,600);this.setVisible(true);/this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.add(jpl);this.setLocationRelativeTo(null);jpl.setLayout(null);令狐文艳 令狐文艳addmsg.addActionListener(this);reset.addActionListener(this);/*插入面板*/label1.setBounds(100,20,300,20);jpl.add(la

27、bel1);label2.setBounds(100,50,70,20);jpl.add(label2);Sno.setBounds(190,50,140,20);jpl.add(Sno);label3.setBounds(100,90,70,20);jpl.add(label3);Sname.setBounds(190,90,140,20);jpl.add(Sname);label4.setBounds(100,130,70,20);jpl.add(label4);Ssex.setBounds(190,130,140,20);jpl.add(Ssex);label5.setBounds(10

28、0,170,70,20);jpl.add(label5);Sclas.setBounds(190,170,140,20);jpl.add(Sclas);label6.setBounds(100,210,70,20);jpl.add(label6);Sbirth.setBounds(190,210,140,20);令狐文艳 令狐文艳jpl.add(Sbirth);label7.setBounds(100,250,70,20);jpl.add(label7);Snation.setBounds(190,250,140,20);jpl.add(Snation);label8.setBounds(10

29、0,290,70,20);jpl.add(label8);Syear.setBounds(190,290,140,20);jpl.add(Syear);label9.setBounds(100,330,70,20);jpl.add(label9);Sgrade.setBounds(190,330,140,20);jpl.add(Sgrade);labelA.setBounds(100,370,70,20);jpl.add(labelA);Stel.setBounds(190,370,140,20);jpl.add(Stel);labelB.setBounds(100,410,70,20);jp

30、l.add(labelB);Saddress.setBounds(190,410,140,20);jpl.add(Saddress);reset.setBounds(120,450,90,20);addmsg.setBounds(240,450,90,20);jpl.add(reset);令狐文艳 令狐文艳jpl.add(addmsg);public void actionPerformed(ActionEvent e)if(e.getSource()=addmsg)tryClass.forName(sun.jdbc.odbc.JdbcOdbcDriver);catch (ClassNotFo

31、undException ce)JOptionPane.showMessageDialog(s,ce.getMessage();tryDriverManager.registerDriver(newcom.microsoft.sqlserver.jdbc.SQLServerDriver();Connectionconn=DriverManager.getConnection(jdbc:sqlserver:/localhost:1433;databasename=master,sa,123);Statement stmt=conn.createStatement();int a = stmt.e

32、xecuteUpdate(insert into shujuku(Sno ,Sname , Ssex , Sclas ,Sbirth , Snation , Syear ,令狐文艳 令狐文艳Sgrade,Stel,Saddress)values(+Sno.getText()+,+Sname.getText()+,+Ssex.getText()+,+Sclas.getText()+, +Sbirth.getText()+,+Snation.getText()+,+Syear.getText()+, +Sgrade.getText()+,+Stel.getText()+,+Saddress.get

33、Text()+);System.out.println(a);if(a=1)JOptionPane.showMessageDialog(s, 已成功添加 , 提示,JOptionPane.INFORMATION_MESSAGE);elseJOptionPane.showMessageDialog(s, 添加失败, 提示,JOptionPane.ERROR_MESSAGE);stmt.close();catch (SQLException se)JOptionPane.showMessageDialog(s,se.getMessage();se.printStackTrace();令狐文艳 令狐

34、文艳elseSno.setText();Sname.setText();Ssex.setText();Sclas.setText();Sbirth.setText();Snation.setText();Syear.setText();Sgrade.setText();Stel.setText();Saddress.setText();Sno.requestFocus();public static void main(String args)Add amg = new Add();(四)、修改:Modifyimport javax.swing.*;令狐文艳 令狐文艳import java.a

35、wt.*;import java.awt.event.*;import java.sql.*;public class Modify extends JFrame implementsActionListenerConnection cnn;Statement stm;ResultSet rs;JLabel label2 = new JLabel(学号:,JLabel.CENTER);JLabel label3 = new JLabel(姓名:,JLabel.CENTER);JLabel label4 = new JLabel(性别:,JLabel.CENTER);JLabel label5

36、= new JLabel(班级:,JLabel.CENTER);JLabel label6 = new JLabel(生日:,JLabel.CENTER);JLabel label7 = new JLabel( 政治面貌:,JLabel.CENTER);JLabel label8 = new JLabel( 入学年份:,JLabel.CENTER);JLabel label9 = new JLabel( 入学成绩:,JLabel.CENTER);JLabel labelA = new JLabel( 联系方式:,JLabel.CENTER);JLabel labelB = new JLabel

37、( 家庭住址:,JLabel.CENTER);JTextField Sno = new JTextField(12);JTextField Sname = new JTextField(12);JTextField Ssex = new JTextField(12);JTextField Sclas = new JTextField(12);JTextField Sbirth = new JTextField(12);JTextField Snation = new JTextField(12);令狐文艳 令狐文艳JTextField Syear = new JTextField(12);JT

38、extField Sgrade = new JTextField(12);JTextField Stel = new JTextField(12);JTextField Saddress = new JTextField(12);JButton btnModify=new JButton( 修改);JButton btnCancel=new JButton( 取消);JButton btnQuery=new JButton( 查询);JPanel pan=new JPanel();JPanel pan1=new JPanel();JPanel pan2=new JPanel();JPanel pan3=new JPanel();JPanel pan4=new JPanel();JPanel pan5=new JPanel();JPanel pan6=new JPanel();JPanel pan7=new JPanel();JPanel pan8=new JPanel();JPanel pan9=new JPanel();JPanel pan10=new JPanel();JPanel pan11=new JPanel();Modify()super(修改学生信息);setSize(500,600);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论