版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学生信息管理系统开发过程中采用 B/S结构,使用JSP编程、利用SQLServer2000 建立数据库、采用 HTM,L JavaScript 等编程技术。该系统主要由学籍维护、成绩查询等功能模块组成,本文具体介绍了各功能 模块所包含的小模块的功能,学籍维护模块主要是对学生的基本信息进行添加、 查询、修改、删除;成绩查询模块主要是对必修课进行添加、删除、录入成绩, 以及学生进行查询成绩等功能。学生信息管理系统主要是对学生的学籍, 成绩的管理。 学生信息管理首先就 应该有学生, 所以系统应该有对学生的添加和删除以及学生信息的修改; 成绩管 理就是学生能够在网上平台上快速查询自己的分数, 这个功能
2、的实现首先应该有 添加、删除基础课程的功能,学生登入界面后能够查询功能。本系统功能主要包过三大块:学籍维护(管理员添加、删除学生基本信息; 学生查看、修改个人附加信息);成绩查询(管理员添加、删除成绩课表,添加 学生分数以及查询单人或单课分数情况;学生查看自己所学基础课成绩)。管理员功能模块1. 学生管理:该模块主要添加新学生基本信息; 查看已有学生基本信息及可对其 修改,删除多余或出错学生信息。2. 成绩管理:可以添加学生所学的基本课程并修改; 添加学生成绩; 查看学生成 绩(根据输入学号和课程号来查看不同的成绩情况) ;可以对学生成绩进行修改。总结:Java 是一种面向对象编程技术, 功能
3、强大, 是精心设计的语言, 它具有简单性、 面向对象性、平台性、安全性和健壮性等诸多特点,但由于涉及的内容较多,学 习起来感觉困难得多。 与传统的面向过程编程语言相比, 面向对象的语言提出了 很多新概念,Java中有一些抽象的很难理解的内容,如继承,多态,异常,多线 程等。对于编程者来说,严谨,细致是必备的,不容得有丝毫的马虎。通过半个学期对Java的学习,使我掌握了 Java的一些基础知识,并能够使用Java 做一些简单的小程序。我最喜欢Java的地方就是它能够由用户自由的创建一个类 或者继承某个类来创建新类,相当于对用户开放了一些源代码,还有Java应用的 范围很广,这在我以后制作网页有很
4、大的帮助。去图书馆借了一本Java书,通过一个礼拜的学习,对Java程序有一个更深的 理解,然后经过老师和学生中精英们的指导, 最终我编出了这一个小程序, 虽然 功能不怎么强大,但也是经我之手弄出来的,心里别提多高兴了。package StudentInformation;import java.awt.event.*;import javax.swing.*;import StudentInformation.StudentInformation;public class login extends JFrame implements ActionListener private JText
5、Field user_input ;private JPasswordField pwd_input ;privateJButtonbutton_ok, button_cancle ;privateJDialogdialog ;private JLabel label_dialog ;private StudentInformation main ; public login()super ( " 登陆 " );this .setSize(150,250);设定窗口大小this .setResizable( false );this .setBackgrou nd(java
6、.awt.Color.lightGray );/ 设定登陆界面背景色this .setLocati on (300,240);this .setDefaultCloseOperation(EXIT_ON_CLOSE );this .setLayout( new java.awt.FlowLayout();this .add( new JLabel( "用户名称");user_ in put= new JTextField(10);this .add( user_ in put);user_ in put.addActi on Liste ner(this );this .a
7、dd( new JLabel( "密码");pwd_ in put= new JPasswordField(10);this .add( pwd_ in put);pwd_ in put.addActi on Liste ner(this );button_ok=new JButton("确定");this .add( butt on_ok);butt on_ok.addActi on Liste ner(this );button_cancle =new JButton("取消");this .add( butt on _ca nc
8、le);butt on_can cle.addActi on Liste ner(this );this .setVisible( true );dialog = new JDialog( this ,"提示 ”,true );dialog .setSize(240,80);label_dialog = new JLabel( "" ,JLabel. CENTER);dialog .add( label_dialog );public void acti on Performed(Acti on Eve nt e) if (e.getActi on Comma n
9、d()="确定")String text2 =pwd_in put .Stri ng text = text2;if ( user_in put.getText().equals("123" )= true &&text.equals("123")=true ) label_dialog.setText("登陆成功“);dialog.setLocati on(this .getX()+100,this .getY()+100);dialog.setVisible(true );try mai n = new
10、Stude ntl nformatio n(); catch (Exception ee)else JOptionPane. showMessageDialog ( null , " 您输入的账号或密码有误 " , " 错误" , JOptionPane. ERROR_MESSAGE);if (e.getActionCommand()= " 取消 " )System. exit (0);public static void main(String arg)new login();/ 第二个文件清单: package StudentIn
11、formation;import java.awt.*;import java.awt.event.*;import java.io.*;public class StudentInformation implements ActionListener Frame mainFrame ;Frame inputFrame ;Frame searchFrame ;TextArea stuInfo ;Label lb = new Label9;Label lb2 = new Label2;TextField tf =new TextField9;TextField tf2 = new TextFie
12、ld2;Button btn = new Button3;Button btn2 = new Button2;Panel p1, p2 , p3, p4;IOOperation ioo ;Student stu ;Student student = new Student100;public StudentInformation() /* 制定主框架 */mainFrame = new Frame( " 学生信息管理 " ); / 主体框架名称 mainFrame .addWindowListener( new WindowAdapter() public void win
13、dowClosing(WindowEvent e) System. exit (0);MenuItem item1 =MenuItem item2 =MenuItem item3 =MenuItem item4 = MenuItem item5 = item1.addActionListener( item2.addActionListener( item3.addActionListener( item4.addActionListener( item5.addActionListener(new MenuItem( new MenuItem( new MenuItem( new MenuI
14、tem( new MenuItem( this ); this );this );this );this );" 录入学生信息 " ); " 查询学生信息 " ); " 修改学生信息 " );" 退出 " );" 关于 " );Menu menu1 = new Menu( " 主菜单 " ); menu1.add(item1);menu1.add(item2);menu1.add(item3);menu1.addSeparator();menu1.add(item4);Men
15、u menu2 =new Menu( " 帮助 " );menu2.add(item5);MenuBar mb = new MenuBar();mb.add(menu1);mb.add(menu2);mainFrame .setMenuBar(mb);stuInfo = new TextArea();stuInfo .setFont( new Font( "serif" , Font. PLAIN , 18); mainFrame .add( stuInfo );mainFrame .setSize(400, 250);mainFrame .setLoc
16、ation(200, 100);mainFrame .setVisible( true );/* 设置用于记录学生信息的输入文本框*/inputFrame = new Frame();inputFrame .addWindowListener( new WindowAdapter() public void windowClosing(WindowEvent e) inputFrame .setVisible( false ););p1 = new Panel( new GridLayout(9, 2);p2 = new Panel();"C 语言成绩 :" ;String
17、 lb 姓名 = "学号:" , "姓名:" , " 性别:" , "出生地" 所在班级 :" , " 高数成绩 :" , " 英语成绩 :" , "JAVA 成绩 :" , String btn姓名 = " 保存" , "删除 ", " 退出 " ;for ( int i=0; i<9; i+) lb i = new Label(lb 姓名 i);tf i = new TextF
18、ield(15);p1 .add( lb i);p1 .add( tf i);for ( int i=0; i<3; i+) btn i = new Button(btn 姓名 i);btn i.addActionListener( this );p2 .add( btn i);btn 2.setActionCommand( " 请输入 " );inputFrameinputFrame.add( p1 , BorderLayout.add( p2 , BorderLayout.CENTER);SOUTH);inputFrame.pack();inputFrame.se
19、tLocationRelativeTo(mainFrame );/* 创建用于搜索学生信息的搜索框*/searchFrame= new Frame( " 查询学生信息 " );searchFrame.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) searchFrame .setVisible( false ); );p3 = new Panel( new GridLayout(2, 2);p4 = new Panel();String lbname2 = &quo
20、t; 学号 :" , " 姓名 :" ;String btnname2 = " 查询学生信息 " , " 退出 " ; for ( int i=0; i<2; i+) lb2 i =new Label(lbname2i);tf2 i =new TextField(15);p3 .add( lb2 i);p3 .add( tf2 i);new Button(btnname2i);this );for ( int i=0; i<2; i+) btn2 i = btn2 i.addActionListener(p4 .
21、add( btn2 i); btn2 1.setActionCommand( searchFramesearchFrame" 查询学生信息 " );.add( p3, BorderLayout.add( p4, BorderLayout.CENTER);SOUTH);searchFrame.pack();searchFrame.setLocationRelativeTo(mainFrame);/* 输入输出体*/ioonew IOOperation(); student = ioo .getAllStudent();public void actionPerformed(A
22、ctionEvent e) /* 主菜单动作*/if (e.getSource()instanceof MenuItem) MenuItem mi = (MenuItem) e.getSource(); if (mi.getLabel().equals(inputFrame .setTitle( for ( int i=0; i<9; i+) tf i.setText( "" );" 录入学生信息 " ) " 录入学生信息 " );p2 .remove( btn 1);btn 0.setActionCommand( inputF
23、rame .setVisible(" 请输入 " ); true );else if (mi.getLabel().equals( searchFrame .setVisible(true" 查询学生信息 );else if (mi.getLabel().equals( inputFrame .setTitle( if ( stu != null" 修改学生信息 " 修改学生信息 " );) ) tf 0.setText(tf 1.setText(stustu.get 学号 ();.get 姓名 ();tf 2.setText(stu
24、.get性别 ();tf 3.setText(stu.get出生地 ();tf 4.setText(stu.get所在班级 ();tf 5.setText(stu.get高数成绩 () +tf 6.setText(stu.get英语成绩 () +tf 7.setText(stu.getJAVA 成绩 ()tf 8.setText(stu.getC语言成绩 ()p2 .remove( btn2);p2 .add( btn 1);p2 .add( btn 2);+"" );"" );"" );"" );btn 0.se
25、tActionCommand( inputFrame .setVisible(true" 修改学生信息 " ); );elseSystem.if(mi.getLabel().equals(exit (0);" 退出 " )elseif(mi.getLabel().equals(Dialog progInfo =progInfo.addWindowListener(public void windowClosing(WindowEvent e) final" 关于 " ) new Dialog( mainFrame , "Pr
26、ogInfo" new WindowAdapter() true );progInfo.dispose(););progInfo.setLayout( new FlowLayout();Label l =new Label( " 学生信息管理系统 by 杨建严 " );progInfo.add(l);mainFrame );progInfo.setSize(200, 80);progInfo.setLocationRelativeTo( progInfo.setVisible( true ); * 按钮动作*/else Button btn= (Button)e.
27、getSource();if (btn.getLabel().equals(" 保存 " ) if (! tf0.getText().equals("" ) &&! tf1.getText().equals("" ) &&! tf2.getText().equals("" ) &&! tf3.getText().equals("" ) &&! tf4.getText().equals("" ) &&
28、;! tf5.getText().equals("" ) &&! tf6.getText().equals("" ) &&!tf 7.getText().equals(!tf 8.getText().equals(Student s = new Student("" ) &&"" ) tf 0.getText(),tf 1.getText(),tf2.getText(),tf3.getText(),tf 4.getText(),Integer.parseInt( tf
29、5.getText(),Integer.parseInt( tf6.getText(),Integer.parseInt( tf7.getText(),Integer.parseInt( tf8.getText();" 请输入 " ) if (btn.getActionCommand().equals( for ( int i=0; i<student. length; i+) if ( student i = null student i = s;break ;ioo .write( student );elseforif( int i=0; i< stude
30、nt( student i.equals(. length ) ; i+) stustudenti = s;break ;ioo .write(student);inputFrame stuInfo .setText(.setVisible(III!);false);" 删除 " ) else if (btn.getLabel().equals( int index = 200;if ( stu != null ) for ( int i=0; i<student .length ;i+) if ( student i!=null &&studenti
31、.equals(stu ) index = i;if (i != student. length-1)student i =studenti+1;elsestudent i =null ;if (i=index &&studenti+1=null )break ;student . length -1) else if (i>index && i<studenti = student i+1;if (i =student . length - 1)studenti = null ;ioo .write(student );stu = null ;in
32、putFrame .setVisible( false ); stuInfo .setText( "" );for(int i=0; i<student.length; i+) if(studenti!=null)学号 ();查询学生信息 " ) System.out.println(i + " " + studenti.get else if (btn.getLabel().equals( stu = null ;if (! tf2 0.getText().equals( "" ) | ! tf2 1.getText
33、().equals( "" ) String condition ="" ;if (! tf20.getText().equals("" ) condition =elsetf20.getText();condition =tf21.getText();for ( inti=0; i<student . length; i+) if ( student i != null ) if ( student i.get学号 ().equals(condition) |student i.get姓名 ().equals(conditio
34、n) stu = student i;break ;if ( stu != null ) stuInfo .setText(" 学号 :" + stu .get学号 () + "n" +" 姓名 : " +stu .get姓名 () + "n" +" 性别 : " +stu .get性别 () + "n" +" 出生地 : " +stu .get出生地 () + "n" +" 班级 : " +stu .get所在班级
35、 () + "n"+" 高数成绩 : " +stu .get高数成绩 ()+ "n" +" 英语成绩 : " +stu .get英语成绩 () + "n"+"JAVA 成绩 : " +stu .getJAVA 成绩 () + "n"+"C 语言成绩 : " + stu .getC 语言成绩 ();" 退出 " )请输入 " )searchFrame .setVisible( false );else if
36、(btn.getLabel().equals(if (btn.getActionCommand().equals(inputFrame .setVisible(false );false );elsesearchFrame .setVisible( public static void main(String args) new StudentInformation();* 用于存储学生信息的类 */classStudentimplementsSerializable privateString学号;privateString姓名;privateString性别;privateString出生
37、地 ;privateString所在班级 ;privateint高数成绩 ;privateint英语成绩 ;privateintJAVA 成绩 ;privateintC语言成绩;出生地 ,int C 语言成public Student(String 学号 , String 姓名 , String 性别 , StringString 所在班级 , int m 高数成绩 , int e 英语成绩 , int jJAVA 成绩 , 绩) super ();this.学号=学号;this.姓名=姓名;this.性别=性别;this . 出生地 = 出生地 ;this . 所在班级 = 所在班级 ;高数
38、成绩 = m 高数成绩 ;英语成绩 = e 英语成绩 ;JAVA 成绩 = jJAVA 成绩 ;this . C语言成绩=C语言成绩;public String get 出生地 () return 出生地 ;public int get 高数成绩 () return 高数成绩 ;public String get学号 () return 学号 ;public int getJAVA 成绩 () return JAVA 成绩 ;public int get 英语成绩 () return 英语成绩 ;public String get 姓名 () return 姓名 ;public String
39、get 性别 () return 性别 ;public String get 所在班级 () return 所在班级 ;public int getC 语言成绩 () returnC语言成绩;public boolean equals(Object obj) if (obj != null && (obj instanceof Student)if ( this.get学号 ().equals(Student)obj).get学号 () &&this.get姓名 ().equals(Student)obj).get姓名 () &&this.get
40、性别 ().equals(Student)obj).get性别 () &&this.get出生地 ().equals(Student)obj).get出生地 () &&this.get 所在班级 ().equals(Student)obj).get所在班级 () &&this.get 高数成绩 () = (Student)obj).get高数成绩 () &&this.get 英语成绩 () = (Student)obj).get英语成绩 () &&this.getJAVA 成绩 () = (Student)obj)
41、.getJAVA成绩 () &&this.getC 语言成绩 () = (Student)obj).getC语言成绩 ()returntrue ;returnfalse ;* 用于输入输出信息的类*/class IOOperation private File file = new File( "D:stuinfo.txt" ); public IOOperation() try if (! file .exists()file .createNewFile(); catch (IOException e) e.printStackTrace();/ 读取所
42、有学生信息 */ public Student getAllStudent() * 写入文件*/public void write(Student s) try FileOutputStream fos =new FileOutputStream( file );ObjectOutputStream objOut =new ObjectOutputStream(fos);objOut.writeObject(s);objOut.close();fos.close(); catch (Exception e) e.printStackTrace();Student ss = try new St
43、udent100;if ( file .length() > 0) FileInputStream fis =new FileInputStream( file );ObjectInputStream ois =new ObjectInputStream(fis);ss = (Student) ois.readObject();ois.close();fis.close(); catch (Exception e) e.printStackTrace();return ss;图一:登陆成功少 Java - Studentkiformatio n/src/Studentlnfc rmati
44、on/ in Java - MyEdipse Enterprise WorkbenchFile Edit Source Refactor Navigate Sea rch Pnojett f/lyEWindow Help|JJ Studentlnf rnnation,java抽 log in Java 关1 packige Smd皀nt_In士2.5 t import5import importj avd.awt.event.*;javax,swinffStudentlnfornation Studentlnformation;clas login extends JFraire implem
45、encs ActionListenerpublic private JTexcField us已工 irijii匸;910a eaprivate private private privateUtl J.J- |I14- j|15 1116JFasswardFzLeld rwd.JButrantJEialcg dialog;JLabel lahel_dialog private SrndentlnformacirLpublic login(jsuper 广登Fi11;2021'22232621狛20this-aetSize(150,250 this.secResizatle(fa th
46、is . setBdckgroirid. (3 tills. set.LocatiQn(3 0C this.setDfaitClass tills setLyout (new ju用户名称:srEi ;登陆磁功this. add (new JLaael (tr用户名称”): ser_input = new JTextField(ID); this . add ( 'ihgt inr:ut.);user input.addAcvionLiateDez fzhis;this. add (new JLx社 1 rr蔭码;图二:跳转至学生管理系统回地:成成成汀 号名别生级数语VA翳 学姓性出班
47、高英JA冷主菜单孝助3080701219 杨建严 男 涡阳 计算机100100100LOO图三:录入学生信息F Jyd SiiwIenUhhHrThiikjnArt/lilcfUirilcjrindtMffVSIijJenUjTltwiTijUtMijdiv. lyE£q|A4? Enl<?pd:Mif WbrkLcrKhFife drt Sgkjtizs 良1phsli” hl'viyjt-F SBartf1 PtdjkI MyEclipse Ruh Window Hiep严k Q昂iQljfk®:拮眉匿 珈fQf足F 酉酉:审夕.s.mdenOnfocnm
48、kioQv:luyinjjva 叮 loghjflM 血 £hidcmlMMflq>flirJwaWUWWMUWWMUWWUWWMiJWWWiJUWWWWWM.WWWWWWWWiJWWWyMWW<.MWWMWWLmhMWWUWWWjWWWUMWWWiWWWyi ±:繭:;:衣盘!«虫®:!:裳;:番>=£肉强:沁嘉“:滾-x»l-:-:-:?:i$is?:.xs%s:rx:£s:.os±:ss:i裁姜if (e-tfetSourceO instanoef Henultep) M*-nuTtrn m
49、i =e-. getSaum (If (CU.g时LibZ 门,钳=n n + utiuUllZUtFXjnLe - SetTltLe : "x-OT Cmt; Z=t3;1<9;14-4-z±±:口2 - =emrre (bt.ii 1);ItLiL 0 .LAC 匚丄 口口 亡 S£qmptitf imt.c , nW心 asflls# if* (mi i getL«'bel ()else if (mi, gie-tLabel (jLjputFzcitjc . setTxtle ; wi f (stu ! - null) tf
50、 0 . 29etText >; st -. q-etf 1 aetTcati; (-stu 越亡tf 121 * wtevt. (atu * getttfil () * x tf 3 . 3*tTFXt (sti.射壬七酣生地); tr4 . raTnux (clu. q«0i在粧袒门); tr -&ffECHERswtmmet高林咸第门 - tf . Mt-Texrt (3tu. g-tfi; : ? * " *) t£ J ? . MtText (stu . geti + "n |tf ft . MLTejrt (stu getCiSs贰绘()+ nn,r:2rrero-re(btn2):图四:查询学生信息fbrfnatl0fVsf</£tudBnunfDrmMlorV£tud4n社nform吉附<mja曲-Myfcdtpe tntarpnw workbench” Retartor_ Navoate Search Project Mytclipse Run Wm-dow °wlp秒 公七心卫 qjt:苹。述虫家追I:;madciri 抱阳 I 口 JT login ,Jaa | login Java £ studntM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数据分析-成对数据的统计分析+课件-2026届高三数学二轮复习
- 基本外科考试试题及答案
- 2026五年级数学 人教版数学乐园植树问题变式四
- 2026年长沙出版中考试卷及答案
- 2026三年级数学下册 年月日单元易错纠正
- 2026二年级数学下册 质量单位的认识
- 供应商服务评价制度
- 2026二年级数学上册 加减法知识点
- 2026九年级上语文组织技巧指导方法
- 青协项目部奖惩制度范本
- 5.1人民代表大会制度 课件(23张幻灯片)+内嵌视频 道德与法治统编版八年级下册
- 动火作业与受限空间安全管理标准
- 2026年包头轻工职业技术学院单招综合素质考试题库附答案详解(基础题)
- 2026年当辅警笔试题库及一套完整答案
- 2026年兴安职业技术学院单招职业倾向性测试题库及答案详解(新)
- 国家基层糖尿病防治管理指南(2025版)
- 2025年国企招聘考试(建筑工程及造价)经典试题及答案
- (2026)中华人民共和国海关注册登记和备案企业信用管理办法解读课件
- 2025CSCO胰腺癌诊疗指南课件
- 慈善基金会内控制度
- DB15∕T 385-2025 行业用水定额
评论
0/150
提交评论