




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软 件 学 院课程设计报告书2011 年 6 月目 录1设计时间32设计目的33设计任务33.1任务说明33.2系统目标33.3使用范围33.4功能要求34设计内容44.1界面构建44.2详细设计44.2.1模块设计44.2.2数据库设计(access)54.2.3运行调试54.2.4主要源代码85总结与展望181设计时间 2011.6.112设计目的 本程序用于用户对少量学生信息进行简单的管理,本程序针对于对安全系数要求不高,操作不是很复杂的小型客户开发。本程序可以实现对学生信息的录入、查询、修改、删除等操作,同时支持查看所有学生信息,功能完善,界面简洁美观,布局合理,操作简便,简单易用,任何人可轻松操作。同时,本程序对系统要求配置较低,运行速度快,而却对数据库管理要求较低。本程序数据库采用office2003版本的access数据库.mdb进行数据存储,该数据库可实现关系较为简单的数据管理。3设计任务3.1任务说明设计一个简单学生个人信息管理系统,该系统具有录入,查询,修改三项基本功能。要求如下:(1) 具有简单的录入,查询和修改功能。(2) 修改学生信息必须输入学号,然后对姓名、性别和专业等进行修改;(3) 使用文件存储数据。(也可用数据库)(4) 学生个人信息必须包括:学号、姓名、性别、出生日期、身份证号、专业、班级自我简介,其余可自行丰富。(5) 具有对姓名,出生日期和身份证号进行简单校验的功能。3.2系统目标 软件开发的意图便于用户对学生的管理,方便查看学生的情况。如用户对学生基本信息进行录入、查询、修改、删除等。3.3使用范围本系统仅针对用户对少量学生进行信息管理。3.4功能要求 1录入、查询、修改、删除、显示所有学生信息的功能2 注册新用户、删除已注册用户信息的功能4设计内容4.1界面构建 1、为了便于各种操作,软件采用多窗口的模式。用户可在不同窗口进行相应操作(录入、查询、修改、删除、显示所有学生省信息)。 2、主窗口是用户进行各种操作的平台,具体操作在各个独立功能窗口中完成。 3、主窗口的主要功能位于菜单中,菜单为进入各个功能窗口的唯一通道。 4、当用户在进行个别录入、删除或错误输入操作时,会弹出相应对话框提示用户。如当录入成功或删除成功,弹出成功以及相应的简明信息提示当,当录入、删除失败以及输入不当是,弹出错误以及简单的错误原因提示用户重新操作。5、界面布局尽量合理,各组件位置分布均匀美观。4.2详细设计4.2.1模块设计 登录密码确认进入操作界面添加数据查找数据删除数据修改数据noyes选择编辑对象注册用户删除用户学生信息操作界面用户操作界面退出图1.流程图4.2.2数据库设计(access)图2.学生信息表图3.管理员表4.2.3运行调试 图4.登录界面图5.操作界面图6.添加学生信息图7.删除学生信息图8.修改学生信息图9.查找学生信息图10.注册用户图11.删除用户4.2.4主要源代码import java.awt.*; import javax.swing.*; import java.awt.event.*; import javax.swing.border.*; import javax.swing.joptionpane; import javax.swing.jlabel; import javax.swing.jpanel; import javax.swing.table.defaulttablemodel; import javax.swing.table.tablecolumn; import java.sql.*;import java.awt.gridlayout; class mystudent public mystudent() public static void main(string args) loginframe lf=new loginframe(); lf.setvisible(true); lf.addwindowlistener(new windowadapter() public void windowclosing(windowevent e) system.exit(0); ); class mainframe extends jframe implements actionlistener menubar mymenubar=new menubar();menu mymenufile,mymenuedit,mymenuuser,mymenuabout;menuitem minew,miopen,misave,misaveas,miexit;menuitem miadd,miedit,midel,mifind,mishow,miuser,miabout;public jtable table = new jtable(); icon background_icon=new imageicon(pct.jpg);jlabel background_label=new jlabel(background_icon);public defaulttablemodel mm ; public mainframe()mymenufile=new menu(文件);minew=new menuitem(新建);miopen=new menuitem(打开);misave=new menuitem(保存);miexit=new menuitem(退出);/minew.enable(false);/miopen.enable(false);/misave.enable(false);/mymenufile.add(minew);/mymenufile.add(miopen);/mymenufile.add(misave);mymenufile.add(miexit);mymenuedit=new menu(数据编辑);mifind=new menuitem(查找数据);miadd=new menuitem(添加数据);miedit=new menuitem(修改数据);midel=new menuitem(删除数据);mishow=new menuitem(全部显示);mymenuedit.add(mifind);mymenuedit.add(miadd);mymenuedit.add(miedit);mymenuedit.add(midel);mymenuedit.add(mishow);mymenuuser=new menu(用户);miuser=new menuitem(编辑用户);mymenuuser.add(miuser);mymenuabout=new menu(我的课程设计);miabout=new menuitem(课程设计说明);mymenuabout.add(miabout);mymenubar.add(mymenufile);mymenubar.add(mymenuedit);mymenubar.add(mymenuuser);mymenubar.add(mymenuabout); string col = 学号,姓名,性别,民族,年龄,年级,班级,专业;/创建属性列名 mm= new defaulttablemodel(col,0); table.setmodel(mm); jscrollpane tablescrollpane = new jscrollpane(table); this.setmenubar(mymenubar);this.add(tablescrollpane); miexit.addactionlistener(this);mifind.addactionlistener(this);miadd.addactionlistener(this);miedit.addactionlistener(this);midel.addactionlistener(this);mishow.addactionlistener(this);miuser.addactionlistener(this);miabout.addactionlistener(this); class myconnectionresultset re;string strurl = jdbc:odbc:driver=microsoft access driver (*.mdb);dbq=学生管理数据库.mdb;public myconnection()public resultset getresult(string sql)tryclass.forname(sun.jdbc.odbc.jdbcodbcdriver);connection conn=drivermanager.getconnection(strurl);statement stmt=conn.createstatement(resultset.type_scroll_sensitive,resultset.concur_updatable);resultset re=stmt.executequery(sql);return re;catch(exception e)system.out.println(getresult-+e.tostring();return null;class addframe extends jdialog implements actionlistener public static final int width = 400; public static final int height = 400; jlabel 学号1,姓名1,性别1,民族1,年龄1,年级1,班级1,专业1;jtextfield 学号,姓名,性别,民族,年龄,年级,班级,专业;jbutton b;jpanel p;mainframe mf;class editframe extends jdialog implements actionlistener public static final int width = 400; public static final int height = 400; jlabel 学号1,姓名1,性别1,民族1,年龄1,年级1,班级1,专业1;jtextfield 学号,姓名,性别,民族,年龄,年级,班级,专业;jbutton b;jpanel p;mainframe mf;class findframe extends jdialog implements actionlistener mainframe mf;jpanel p;jcombobox c;jtextfield t;jbutton b;jbutton fall;string sql=select * from student;string colstr=学号,姓名,性别,民族,年龄,年级,班级,专业;public findframe(mainframe mmf)mf=mmf;p=new jpanel();c=new jcombobox(colstr);t=new jtextfield(10);b=new jbutton(查找);fall=new jbutton(全部显示);b.addactionlistener(this);fall.addactionlistener(this);p.add(new jlabel(选择);p.add(c);p.add(new jlabel(查找内容);p.add(t);p.add(b);p.add(fall);this.add(p);this.settitle(查找);this.setsize(450,80);class aboutframe extends jdialogaboutframe()jpanel p1=new jpanel();p1.add(new jlabel(学生信息管理系统);p1.add(new jlabel(赵壬冰 0920011023);p1.add(new jlabel(辽宁工程技术大学);p1.add(new jlabel(软件工程09-10 );p1.setlayout(new gridlayout(4,1,5,5);this.add(p1);this.settitle(关于我);this.setsize(300,200);class userframe extends jframe implements actionlistener jtextfield user,pass;jbutton add,del;jtable t;jpanel p1,p2,p3,p4,p5;defaulttablemodel m;public userframe()p1=new jpanel();p2=new jpanel();p3=new jpanel();p4=new jpanel();p5=new jpanel();user=new jtextfield(8);pass=new jtextfield(8);add=new jbutton(添加);del=new jbutton(删除);string col = 用户名,密码;m= new defaulttablemodel(col,0); t=new jtable();t.setmodel(m); jscrollpane sp = new jscrollpane(t);p1.add(new jlabel(用户名);p1.add(user);p1.add(new jlabel(密码);p1.add(pass);p1.add(add);p2.add(sp);p3.add(del);add.addactionlistener(this);del.addactionlistener(this);myconnection conn=new myconnection();resultset rs;rs=conn.getresult(select * from 管理员);if (rs!=null)try/m.setrowcount(0);/table.setmodel(mm);while(rs.next() string 用户名 = rs.getstring(用户名); string 密码 = rs.getstring(密码); string cloumns =用户名,密码; m.addrow(cloumns); t.setmodel(m);catch(exception e)system.out.println(e.tostring();this.add(p1,borderlayout.north);this.add(p2,borderlayout.center);this.add(p3,borderlayout.south);this.add(p4,borderlayout.west);this.add(p5,borderlayout.east);this.settitle(用户管理);this.setsize(600,400);class loginframe extends jdialog implements actionlistener jpanel p;jtextfield user,pass;jbutton login,cancel;public loginframe()p=new jpanel();user=new jtextfield(10);pass=new jtextfield(10);login=new jbutton(登录);cancel=new jbutton(退出); login.addactionlistener(this);cancel.addactionlistener(this);icon background_icon=new imageicon(pct.jpg);jlabel background_label=new jlabel(background_icon);p.add(background_label);p.add(new jlabel(账号);p.add(user);p.add(new jlabel(密码);p.add(pass);p.add(login);p.add(cancel);this.add(p);this.settitle(系统登录);this.setsize(360,260);5总结与展望做课设让我对java有了新的认识,首先我接触了很多上课见过见过但没有实际用过的类和方法,让我对编程有了许多新的思想。大一学了c语言,虽然当时学的还不错,由于学的都是入门知识,所以自己做的都是dos下执行的程序,虽然可以实现一定的功能,但和自己平时用的软件相差很大。这学期刚开课学java感觉没什么新鲜感,它的跨平台特性也只是听听,根本没有认识,知道学到图形界面gui用户编程的时候,我发现学会之后自己可以做出来的软件就更接近平时使用的软件了,不过由于平时学习不刻苦,到时没有时间静下心来写java代码,知道结课做课设,才静下心来开始研究
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 色彩理论教学案例及课堂讲义
- 园林绿化养护技术规范与施工流程
- 快递物流企业安全管理与服务优化
- 九年级数学教学重点及难点分析
- 制造业标准作业指导书编制方法
- 数字化工厂建设项目管理流程
- 建筑智能化系统集成-洞察及研究
- 高校本科课程教学评价体系
- 深度包检测技术优化-洞察及研究
- 水利工程节水灌溉技术方案
- (高清版)DB11∕T 2456-2025 消防安全管理人员能力评价规范
- 胎心监护及并发症处理
- 锁骨骨折术后护理
- 酒店餐饮部主管考试题库
- 产业策划投标方案(3篇)
- 眼科常见疾病及其用药
- 脑疝患者的急救及护理
- 2025年广西专业技术人员继续教育公需科目(一)答案
- 2024年全市首届档案职业技能竞赛考试题库(含答案)
- 家校社协同育人机制的创新构建与实践探究
- 合作建房框架协议书
评论
0/150
提交评论