版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数擔库课程设计报告题目:学生信息管理系统院系名称:计算机学院专业名称:班 级:学生姓名:学号(8位):指导教师:设计起止时间:2011年12月19日2011年12月30日设计目的1、掌握dbms的基木工作原理2、培养数据库应用系统设计的基本思路和方法3、培养分析、解决问题的能力二.设计内容利用数据库实现对学牛信息的管理 所用数据库:sqlserver 2008 开发语言:java、开发工具:eclipse三.概要设计通过访问数据库实现以下功能:1、不同用户权限登陆系统2、用户密码修改3、学生信息的添加、查询、修改、浏览1. 功能模块图2. 各个模块详细的功能描述。1、系统用户管理模块管理员和普
2、通用户通过这个模块登陆系统,不同的用户用不同的用户名登陆,通过选择 登陆模式(管理员或者普通用户)登陆系统,完成不同的操作。两种用户都可以对白己的登 陆密码进行修改。新用户可进行注册操作,注册后登陆,并进行信息的完善。2、学生信息管理模块管理员和普通用八对学生信息山不同的操作。管理员可以对信息进行增加,删除,修改 和列表查看,普通用户对自己的信息可进行查询,和修改。四.详细设计1.功能函数的调用关系图comfirm() 管理员界面login() f主界面登陆comfirmo普通用户界面query () add()delete()liulan() updatecodeoqueryo update
3、infoo updatecodeo杳询信息操作 添加信息操作 删除信息操作 总体浏览操作 修改密码操作查询个人信息 修改个人信息 修改个人密码2各功能函数的数据流程图£杳询信息修改密码hhii3重点设计及编码.“学生信息表-create table studentinfo(sid int primjiry key identity(l j),sname varchar(30) not null,ssex varchar( 10) check(ssex='男,or ssex=女),snumber varchar(8) check(snumber like *04090-90-9
4、0-90-9*) not null,sprofession varchar(30),sclass varchar(20),sdate datetime default getdate();-普通用户登陆信息表-create table userinfo(id int primary key identity(l,l),name varchar(30) not null,mi ma varchar(20) not null);-管理员登陆信息衣-create table userinfo(id int primary key identity(lj),namc varchar(30) not n
5、ull,mi ma varchar(20) not null);-连接数据库一t ryclass.forname(ncom.microsoft.sqlserver.jdbc.sqlserverdriverh;catch (classnotfoundexception e) system, out .print ("加载驱动程序失败”);string conurl=n jdbc:sqlserver:/localhost:1433; databasename=simsn;tryconnectioncon=drivermanager.getconnection(conurlz nsan r
6、 nmajien);statement st=concreatestatement()八catch(sqlexception g)syste m out: print in 错误(弋码:”+g. geterrorcode ();system, out print in ( 误 容:n+g. getmessage ();五. 测试数据及运行结果1. 正常测试数据和运行结果登录舍学生信息甘理系统log欢迎登陆输入用户名驭消信息査询修改信息区ii o 回 却修改(完善)倍息马杰姓名专班入学2. 异常测试数据及运行结果甘o回 s2添初迸生信息姓名张三班入学聘间2009-09-01六. 调试情况,设计技
7、巧及体会1. 改进方案木次课程设计实现了系统的基木功能,做的不是很复杂,跟预期想的结果有些羌距,数据库 表的设计有点简单,卜來还耍增加表的复杂度,以及触发器的使用。2. 体会连接数据库还是比较顺利的,因为之询有简单的使用过数据库。总体来说系统算是完成了, 基木功能也都实现了,但是在难度上还是不符合要求,还得增加一些更富冇实际价值的设计。七. 参考文献数据库系统原理与应用孟彩霞、乔平安、张荣编著八. 附录:源代码package com. studentms;import javaawt.color;import javaswtcontsiner;import javaawtdimonsion;i
8、mport java awl. gridlayout;import javaawt.toolkit;import java awt event. actionevent;import java awt event actionlistener;import java awt. event eocusevent;import java awl. evenl focuslistener; import java sql. connection;import java sql. drivermanager; import javasql.resultset;import java .sql. sql
9、except ion; import java sql. statement;import javax.swing.jbutton; import javaxswing. jframe; import javax swing. jlabol;import javax swing joplionpane; import javax swing. jpancl;import javax swing. jtextfield; import javax swing. swingconslants;public class add implements actionlistenerjframe fl:c
10、ontainer ct:jpanel jp,jpl,jp2, jp3;jbutton btnl,btn2;jlabel label;jtextfield tfl, tf2, tf3, tf4, tf5, tf6;add()fl二new jframeo ;ct=f 1. getcontcntpanco ;初始化面板jp=new jpanel();jpl=ncw jpancl(new gridlayout(6, 1);jp2=new jpanel (new gridlayout(6, 1);jp3=ncw jpancl();btnl=new jbuttonc确定”);btn2=ncw jbutto
11、n("取消“);label二newjlabel(<html><fonl color-#cc00ff size='4'> 添 加 学 生 信 息</font>/z, swingconstants. center);labcl. setforcground(co 1 or gray);tfl=new jtextfield(20);tf2=new jtextficld(20);tf3=ncw jtextfield(20);tf4二new jtextfield(20);tf5=new jtextfield(20);tf6=new jtext
12、field(20):tf6 settextc例:2000 02-02");/文本框加入提示语tf6. addfocuslistcfocuslistcnor():public void focusgaincd(focusevcnt e) tf6 set/text ("");public void focuslost(focusevent e) ();jp. add(label);ct. add(jp, "north");jpl. add (new jlabel ("姓名",swingconstants. center); jp
13、2. add(tf 1);jpl. add (new jlabel 性别",swingconstants. center);jp2 add(tf2);jpl. add (new jlabel ("学号",swingconstants. center);jp2. add(tf3);jpl. add (new jlabel (”专业,swingconstants. center);jp2 add(tf4);jpl. add (new jlabel ("班级",swingconstants. center);jp2. add(tf5);jpl. ad
14、d (new jlabel ("入学时间",swingconstant s. center); jp2 add(tf6);jp3. add(btnl);jp3. add(btn2);ct. add(jpl, "west");ct add(jp2, "east");ct. add(jp3, "south");toolkit kit-toolkit. getdefaulttoolkit();dimonsion screcn-kit getscrecnsi乃o();int x=screen. widlh;int y二sc
15、reen height;fl.setsize(350, 330);int xcenter=(x-350)/2;int ycenter=(y-330)/2;f1 setlocation(xcenter, ycenter);fl.sctvisible(true);/fl.setdefaultcloscoperation(jframe. exit on_close);blnl.addactionlistener(this);btn2 addactionlistenet(this);public void insert() if (tfl. gettexto. equals("")
16、 | | tf2. gettext(). equals("") | | tf3. gettext(). equals("") | | tf4. gettext (). equals("") | | tf5. gettexto. equals("") | | tf6. gettexto. equals("") jopt ionpane. showmessagedi alog(f 1,"请填写完整信息");return;tryclass forndmo("com mic
17、rosoft sqlscrvcr jdbc sqiervcrdriver"");catch(classnotfoundexceplion e)system, out. print ("加载驱动程序失败"); ” ”string conlirl/zjdbc:sqlscrvcr:/localhost: 1433; databasename'sims;tryconn action con=i)rivcrma nagx gctc onne cti on (con url, "sa",,zmajie,z); statcmcnt st-c
18、on. creatcstatcmcnt();strings二"insertintostudentinfovalues"+tfl. gettext()+"',' "+tf2 gettext()+"',' "+tf3. gettext ()' "+tf4. gettext () +"',' "+tf5. gettext ()' "+tf6. gettextstringquery二"select*fromstudent info
19、wheresnumber=,"+tf3 gettext (). trim()+" “;resultset res=st executcquery (query);if (res. next () joptionpane. showmessagedialog(f 1,"学号信息已经存在! “); con. close();tf3. settext(");else if(tf6. gettexto. length() ! = 10) jopt ionpane. showmessagedialog(f 1,"入学时间格式有误!"); con
20、. closco ;tf6. settext(");int insort二st exccuteupdate(s);if(insert=l) jopt ionpane. showmessagedialog(f 1,"录入信息成功!");tfl. sottoxt(");tf2. settext("");tf3. settext(");tf4. settext ("”);tf5. sottoxt (");tf6. settext (");catch(sqlexcept i on e) system,
21、out. printin("错误代码:"+e. geterrorcodeo);system, out. printing错谋信息:"+e. getmessageo);suppresswarnings("deprecation") publ ic void actionfcrformcd(actionevent e) str in£ cmde get act io ncommsndo ;if(cmd. equals("确定")joptionpane. showmessagedialog(null,"与用户表
22、冲突"); insert();else if (cmd. equals取消")fl. hideo ;public container getct()return ct;public void setct (container ct)this ct = ct; package com studcnt. ms;import java awt bordcrlayout;import java.awt.color;import java.awt.container;import javaawt.dimcnsion;import java.awt.toolkit;import jav
23、a awt event八ct ionevent;import java. awt. event. actionlistener;import java sq1 connect i on;import java sql. drivermanager;import java .sql. rcsultsct;import java .sql. sqlexception;import java .sql. statcmcnt;import javax.swing.jbutton;import javax .swing. jframe;import javax swing. jlabel;import
24、javax swing. joplionpttne;import javax swing. jpancl;import javax swing. jscrollpano;import javaxswing. jtable;import javax swing. jtoxtfield;import javax swing swingconstants;public class delete implemonts actionlistenorjframc f2;container ct;jpanel jpl,jp2,jp3, jp4;jlabel label;jtcxtfield text;jta
25、ble table;/接收数据库中返回的信息jbutton btnl, btn2, btn3;object columnname="姓名"性别"学号专业"班级入学时间'object ar=new object806;dcleteo f2二new jerameo ; ct=f2. getcontentpaneo ; jpl=new jpanel(); jp2=new jpanel0; jp3=new jpanel0; jp4=new jpanel(); label=new jlabel(); text=ncw jtextfieldo ; btnl=
26、new jbuttonc查询“); btn2=new jbutton("删除“); btn3=new jbutton(z,取消“);label=ncw jlabel cz<htmlxfont color=#cc00ff size- x > 请 输 入 要 删 除 的 学生姓 名:</font",swingconstants. center);labc1. sctbackground(colorbluc);table二new jtable(ar, columnname);jscrollpane scroll=new jscrollpane(table);te
27、xt=new jtextfield(20);jp2. add(btnl);jp2. add(btn2);jp2. add(btn3);jpl. add(label);jpl. add (text);ct. add(jpl, "north");jp3 sctlxiyout (new bordcrlayout (); jp3. add (new jlabel ("学生信息如卜"); jp3 add(scroll);ct. add(jp2, "south");ct. add(jp3,"center");toolkit k
28、it=toolkit. gctdcfaulttoolkit();dimension screen二kit getscreensize();int x-scrccn. width;int y=screen.height;f2. setsize(450, 400);int xcenter=(x450)/2:int ycentcr-(y-400)/2;f2 setlocat ion(xcenter, ycenter);f2 setvisiblc(truc);/f2 setdefauitcloseoperat ion(jframe. exit_on_close);bln1.addactionliste
29、ner(this);btn2. addactionlistencr(this);btn3 addactionlistenor(this);int i二0;public void show(string s)whilc(i>=0)(whoaril ari 旳 肚i arih5 i;i=0;try class forname(com. microsoft sqlserver jdbc sqlserverdriverz/);catch(classnotfoundexcept ion e) system, out. print (/z加载驱动程序失败"); ” ”string conu
30、rl'"'jdbc:sqlserver:/localhost: 1433; databasename-sims'*; try connaction con=drivermanagcr getconnection(conurl, "sa", "majic"); statement st-con. createstatement();string sql二"select * from studentinfo where sname="+s+ rcsultsct res二st cxccutcqucry(sq
31、l);/*if(!(res. next()jopt ionpane. showmessagedialog(f,"所要査询的信息不存在"); /while(res next () string sxame=rcsgotstring(l);string ssex=res getstring(2);string snumber=res getstring(3);string sprofession二res getstring(4);string sclass-res. getstring(5);string sdate=res getstring(6);arioj=sname;a
32、ril=ssex;ari2=snumber;ari3=sprofession;ari4=sclass;ar i5=sdate;i+;f2. repaint ();con.close 0;catch(sqlexccpt i on e)system, out. printing错误代码:geterrorcode(); system, out. printing错误信息:"+e. getmessageo);public void del etc(int line) tryclass fornamcccom. microsoft sqlserver jdbc sqi-serverdriver
33、");catch(classnotfoundexcept ion e)system, out. print ("加载驱动程序失败");string conurl-/zjdbc:sq 1 server:/1 oca 1 host: 1433; databasename=sims/z; tryconncction con二dri vermanager getconnccti on(conljrl, "sa", "majic"); statement st=con. crcatcstatcment();string name=(s
34、tring)(arline 2);string sql=,zdelete from studentinfo where snuniber 二'"+nsnie+"'" int del=st exccutcupdate(sql);if (del=l) ar1 ineartlinc 2=;artline 3=;ar 1ino4=""ar line 5="jopt ionpane. showmessagcdia 1 og(nu 11,"删除成功!"信息",joptionpane. yes_no o
35、ption);con close ();f2. repaint ();catch(sqlexcept i on e) system, out. printin("错误代码:"+e. geterrorcodeo);system, out. printing错误信息:"+e. get.messageo); ” ”©supprcsswarnings(deprccation")public void actionperformed(actionevent e)string cmd=e gotact i oncommand();if (cmd. equa
36、ls(“査询")string qu二text gettcxt() trim(); show (qu);if (cmd. equals(”删除")int deniable getselectedrowo ;if(de=-l)joptionpane. showmessagedialog(null,"请选定要删除的行", "错误信息s joptionpane. yes_no option);else delete (de);if(cmd. equals(取消") f2hide(); package com. studentms;import
37、 javaawt.color; import javaawt.container;import javaawt.dimcnsion; import javaawt.toolkit;import java awt event八ct ionevent; import java. awt. event. actionlistener; import java sql connect!on;import java sql. drivermanager; import java .sql. kcsultset;import java .sql. sqlexception; import java .sq
38、l. statemcnt;import javaxswing. jbutton; import javax.swing.jframe;import javax swing. jlabel; import javax swing. jpanel;import javax swing. jscrollpane; import javax.swing.jtablc;import javax swing. swingconstants;public class liulan implcmcnts actionlistenorjframe fl;containcr ct;jpanel jpl, jp2,
39、 jp3, jp4;jlibcl label;jbutton btnl,btn2;jtablc table;object ar=new object806;object columnname="姓名"性别学号专业班级入学时间"liulano f4=new jframe();ct=f4. getcontentpane();jpl=new jpanel0;jp2=new jpanel ();jp3=new jpanel();jp4=new jpanel();btnl=new jbuttonc点击浏览");btn2=ncw jbutton("取消 “
40、);label=new jlabelr<html><fonl color=#00ff22size二'4'> 学 生 信 息 浏 览<font>", swingconstants. center);label setbackground(color blue);table=new jtable(ar, columnname);jscrollpane scroll二now jscrolipanc(table):jpl. add(label);jp2. add(btnl);jp2. add(btn2);jp3 add(scroll);ct
41、.add (jpl,"north");cl. add(jp3, "center");ct. add(jp2, "south");toolkit kit二tool kit. getdefaulttoolkit();dimonsion screcn-kit getscrecnsizco;int x=screen. width;int y二screen height;f4.setsize(500, 530);int xccn=(x-500)/2;int ycen=(y-530)/2;f4.sctlocation(xccn, yeen);f4
42、.setvisible(true);btn1.addact i onli stoner(thi s);btn2.addactionlistencr(this);int i二0;public void selccto while(i>-0)ari0=;aril=;ari“a 讥 ih3=;ari4=;ari5="i=0;tryclass fornamcc'coni microsoft sqlserver jdbc sqiscrvcrdriver");catch(classnotfoundexcept ion e) system, out. prints加载驱动程
43、序失败");string conurl=/zjdbc:sqlserver:/localhost: 1433; i)atabasenamc=stms,z; tryconncct ion con-drivcrmanagor gotconnoction(conurl, "ss", "majie"); statement st=con crcatcstatement();string s="scloct * from studentinfo"resultset res=st executequery(s);whi lc(res. n
44、ext () string sname=res.getstring;string sscx=rcs getstring(2);st ring snuniber=res get st r ing (3);string sprofession=rcs gctstring(4);string sclass=resgetslring(5);string sdate=res getstring(6);ariloj=sname;aril=ssex;ari2=snumber;ari3=sprofession; ari4=sclass; ar i5=sdate;i+;f4 repaint ();con clo
45、seo ;"+e. gete门prcode (); getmcssagco);catch(sqlexccption e)system, out. print in ("错误代码:system, out. println(/z错误信息:suppresswarn i ngs c'deprecation")overridepublic void actionperformed(actionevent e) string emd-e getactioncommand();if(cmd. equals("点击浏览") select ();else
46、 if (cmd. equals(” 取消") f4.hide(); package com student ms;import java awt color; import java .awt. container; import javaawt.dimcnsion;import java.awt.toolkit;import java awt event八ctionevent; import java. awt. event actionlistener; import java awt event itcmevont; import java awl. evenl ilemli
47、slener; import java awt event windowadapter; import java awt. evenl windowevent; import java.sql. resultset;import java sql. sqlexcept ion; i mport java .sql. statcmcnt;import java sql conncction; import java sql. drivermanaj?er;import javax swing buttongroup; import javaxswing.jbutton;import javax
48、.swing. jframc; import javax swing. jlabel;import javax swing joptionpane; import javax swing jpanel;import javax swing. jpasswordfield; import javax swing. jradiobutton;import javax.swing.jtcxtfield; import javax swing swingconstants;suppresswarn i ngs("serial”) class login extends jframe impl
49、ements actionlistenercontainer cp二null;jframe f二null;jbutton buttonl, button2, button3;jtexteield tl;jpasswordfield t2;jlabel jlablel,jlable2;jradiobutton rabtnl, rabtn2;color c;jpanel jpl, jp2, jp3;string table=null;login() f-new jframe ("学生信息管理系统”); buttonl-ncw jbutton确定”); button2=new jbutto
50、n 取消”); button3=new jbutton 注册”);/button3. setopaque(false);button3. setliorder(null);button3. setbackground(color. getcolor("#292421");rabtnl=new jradiobuttonc普通用户"); rabtnl. setbackground(color. getcolor("#292421");rabtn2=new jradiobuttonc管理员"); rabtn2. setbackground(
51、color. getcolor("#292421");buttongroup group二new buttongroupo;group add(rabtnl);group add(rabtn2);cp-f getcontcntpaneo ;jlablel=new jlabelc输入用户名”);jlablc2=ncw jgbel ("输入密码");jpl=new jpanel();jp2=ncw jpanel();jp3=ncw .panel ();tl=new jtoxtfield(20);t2=new jpasswordfield(20);/jp3 a
52、dd(group);jpl. add(jlablel);jpl. add(tl);jpl. add(jlablc2);jpl. add(12);jpl. add(rabtnl);jpl. add(rabtn2);jpl. add(button3);jlabel jl=new jlabel c<htmlxfont color=#292421 size= t ><i>欢迎登陆"+ "</i>/font>", swingconstants. center);cp. add (jl, "north");jp2.
53、 add(buttonl);jp2. add(button2);cp. add(jpl, "center");cp. add ("south", jp2);cp. setbackground(new color(127, 255, 212 ); jp2. setbackground(new color(127, 255, 212 ); jpl.setbackground(new color(127, 255, 212 );toolkit kit=toolkit. getdefaulttoolkit();dimcnsion scrccn-kit gctsc
54、recnsi刁o(); int x=screen.width;int y=scrcen.height;f. setsize(300, 300);int xcenter=(x-300)/2;int ycenter= (y-300)/2;f. setlocat ion (xcenter, ycenter) ;/*显示在窗口 中央*/f. setvisible(true);/f. setdcfaultcloscopcrat i on(jframc. extt_on_close);/*监听事件*/buttonl. addactionlistcncr (this);button2 addactionli
55、stener(lhis);button3 addactionlistcnor(this);rabtn1 add itemlistcner(new itcmlist ener()overridepublic void itemstatechanged(itemevent e)jradiobutton jop-(jradiobutton) e. getsourceo ;if (jop isselectedo)table二"userinfo");rabtn2 addttcmli stener (now itenilistcnor()overridepublic void item
56、statcchangcd(itemevont e)jradiobutton jop二(jradiobutton) c. getsourceo ;if (jop. isselectedo)tablemanagcr;);f. addwindowlistcnor (now windowaddptor () public void windouc 1osing(windowevcnt c)system exit(0););suppresswarn i ngs("deprecat iort)public void confirm(string tablcnamc)tryclass forname("com microsoft sqlserver jdbc sqlscrvcrdriver);catch(classnotfoundexception e)system, out. print ("加载驱动程序失败"); ” ”string conurl=,zjdbc:sqlserver:/localhost: 1433; databasename=stms,z;tryconn ection condr i vermanager getco nn ection(conllrl, "sa", &
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司盘活闲置资产和清收清欠工作专题会讲话
- 单位租车协议书标准范本7篇
- 1.1《沁园春·长沙》【中职专用】高一语文(高教版2023基础模块上册)
- 2023年浸渍、涂布或包覆处理纺织物项目融资计划书
- 《法语学习课件》课件
- 《社会体育指导学》课件
- 江西省上饶市万年县2023-2024学年八年级上学期期末考试数学试卷(含答案)
- 养老院老人兴趣小组活动制度
- 养老院老人康复理疗师培训制度
- 《g无线基础知识》课件
- JGJT397-2016 公墓和骨灰寄存建筑设计规范
- 2024版房产代持协议书样本
- 某现浇钢筋混凝土双向板肋梁楼盖设计计算书
- 八角购销合同范本
- 网课智慧树知道《英美文学(山东第一医科大学)》章节测试答案
- 2024年广东省广州市荔湾区中考一模语文试题【含答案解析】
- 感统训练教育理念(3篇模板)
- 2024年公需课枣庄市继续教育人社局题库及答案18套题合集
- 生命哲学:爱、美与死亡智慧树知到期末考试答案章节答案2024年四川大学
- 地理信息 遥感影像传感器及数据的定标与验证 第3部分:SAR-InSAR
- 家长会上校长的讲话:家长有五层,你在哪一层
评论
0/150
提交评论