设计数据库课程设计(Java实现).doc

上传人:小飞机 文档编号:4228960 上传时间:2023-04-10 格式:DOC 页数:14 大小:109.50KB
返回 下载 相关 举报
设计数据库课程设计(Java实现).doc_第1页
第1页 / 共14页
设计数据库课程设计(Java实现).doc_第2页
第2页 / 共14页
设计数据库课程设计(Java实现).doc_第3页
第3页 / 共14页
设计数据库课程设计(Java实现).doc_第4页
第4页 / 共14页
设计数据库课程设计(Java实现).doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《设计数据库课程设计(Java实现).doc》由会员分享,可在线阅读,更多相关《设计数据库课程设计(Java实现).doc(14页珍藏版)》请在三一办公上搜索。

1、一、课程设计目的在数据库原理课程基础上,培养学生综合运用数据库知识的能力。学会数据库的设计、规划以及应用程序的开发和调试,使学生掌握客户机服务器体系结构,学会大型数据库的工作模式。大型数据库管理系统存放于服务器,数据库放在服务器上,学生在客户机上开发应用程序访问服务器上的数据库,并完成应用系统所要求的各项功能,应用程序的开发需要采用当前流行的新软件。二、课程设计内容1 数据库的设计根据学生信息管理系统,经过调查研究,构建合理的数据库。首先构建基本表以及表和表之间的联系,在此基础上构建视图和索引表。2 服务器的组织根据建立的基本表、视图和索引表搭建服务器。3 前端开发工具:java学习并完成编写

2、程序。服务器端:S Serer024 开发应用程序利用所学的新软件开发工具进行应用程序的开发。5 连接、调试。三、软硬件环境及系统所采用的体系结构系统的体系结构为C/S结构,具体开发工具为Epis ,前台为Jv,后台数据库一般为 Serr2。四、需求分析通过对学生信息管理的了解,确定本系统具备一下功能。多用户账号登录只要通过用户登录验证后,能对学生的记录信息进行修改,增加,删除等操作。五、系统设计1系统结构图学生信息管理 浏览 查找 修改 增加 删除a.功能模块图 修改增加查看成绩下一条 用户 删除 查询上一条 删除选课查看学科成绩 查询 增加选课 修改2.数据库设计学生包含的信息:姓名学科成

3、绩学号 性别 电话学生 宿舍 住址 课程 选择学生 N 用户 密码 用户名Login表S StudentOET ANSI_LSONOSET QOTE_DEIER NGOCREAT TABLE b.Lgn(usrNaeachar(20) NOT NUL,pssord nvarc(10) NL, CONSTRAINT K_Logi IMARYKY CLUSTRD (serNaeAC)WITH (PADEX = FF, SATTCS_NOREOPUTE OFF,IGR_DU_E = OF, ALOW_ROW_LOKS= N,ALOPAGLOKS = N) N RIR)OPIMARGOStudenIo

4、r表USE SudeOSET AN_NULLONGOET QOTED_DNTIFIERNOCREATE TAL dbo.StdetIr(codevachr(10) NOT NULL,name nvarhar(0) OT UL,sx ncar() NO UL,rom narchar(10) NT NUL,ddssnvachar(5) NLL,tlvarchar(1) NUL, ONSRAINK_Studenfor RIMR KEYCLUSTERD (cdeSC)WIH (PD_INDX =OFF, STAISIC_NOECOMPUE = FF, IGOREDUP_KEY =OF, ALLOWRO

5、W_LOKSON, LOW_AGE_OCKS= O) ON PRIMARY) ON PRYGOCroue表CREE TA dbo.ours(course har()NOT NULL,curseName narchar(0) NT NUL, CONSRAT PK_CourseRIMARY EYCUSTRED (courseD AC)WIT (D_NEX = FF, STTITICSNORMPTE=OF,IORE_D_EY=, LOW_RWLOCS = ON,LOW_E_LOCKS = ON)ON PRMARY) ON PRMARYOStudtCrse表RETE TABLE dbo.Student

6、_Course(code vrch(0) NOT NUL,corseI nchar(5) NT NULL,corseGrade float NULL, COSTRAINT PK_Sdent_CoursePRIA EYCLSTRE(codeSC,cseIDC)WIT (PAD_IDEX = OF, STAISI_NOCOMPTE= OF, GNORE_UP_KEY = OFF, LLO_ROW_LOCKS ON, ALOWAELCKS = ON) ON PRIMARY) ON IMARYGO六、系统的实施系统的实现方法是用java结合SlSrver012,用java编写前端的用户界面主要的界面代

7、码如下:public cass wndws ilement ActionListenrprivte JFramefae;piate JLabe labl;rivate JTxtFieldtxFie;private JLitlis;privateJScollP jscrolane;private faultistMo lstMoel;prvat JRdioBtonmjioButn, fjRadoButtn;private BtnoueButtGrp;pivate tton buto;private JButo jbu;prvate Cnair on;privae RsultSet resuSet

8、;priat Sri infor * 学号:,* 姓名:,* 性别:,*宿舍:,住址:,电话:;pivate Strg binfr = 增加,删除,修改,查找,上一条,下一条;pblicwindws()frme= nw Frame(学生信息管理 );cn rame.getConetPae();on.setayout(nul);fram.stocato(350, 150);rae.stSie(77701,600/15);faesetReizab(fe);txid =ewJetFid6;lael = new JLabl6;utto= e Jton;for(int =0; 6; i)abeli e

9、Label(snfi);labeliseLocaton(5, 3 + (i *615));lali.stze(570/15,601);con.dd(lbel);i(i!= 2)textFeldi =nwJTextFild();tetFeldi.stSz(200, 70/15);textFeldi.etocatio(770/1,5+( 6701);con.ad(textFieli);elsemjaioButton = nw JRadiouon(男,alse);mRadioButo.Visible(tue);mjadioBtn.setSie(501, 60/1);mjRaioButton.soca

10、tio(970/5, (2 * 15));mRdioBtton.dAcioLiener(this);mjRadioBttn.etCursor(Curso.etPrdfnedCursor(usor.HD_UR);jRadioBn ewJadioButton(女,false);fdioButton.setSie(5015, 67015);fjioButon.sLocation(2070,5 + (2 *67015));fjadioButsetCrs(Crso.getPreenedCurs(Curso.HAND_CRSOR);fjRadoButtosetibe(true);jaditonaddAct

11、ionLisene(is);setButtonGrp= n ButonGo();setutoGop.a(mRadoutton);seBtGropadd(jRadiBtton);con.add(mjadoButon);conad(fjRadioButon);utoi =w JButtn(binfori);butoni.stSi(570/15,37015);btoistCor(urso.getPredidursor(Cursor.HADCROR);bttnaddActonListne(hi);if(i = 2)buttonistLcation(40/15 (i 200/1),300/1);eleb

12、uti.stocaion(240/1 + ((i-3)* 200/), 430015+ 4/5);n.add(buttni);bu = n Bt(查看成绩);ju.setSize(15/15,015);jbu.setLoation( * 200/15, 430015);jbudActiniener(thi);con.add(bu);seltse = newselect();esultSt= e.sctTable();litMoe newDefaultLstModl();ty whle(esuSetnex()lstMdeddElmet(resltSet.ettring(co) + + esulS

13、tgetSrng(nme)); catc (SLExceptone)e.pitackTrac();seisDisnct();lit = ew Lit(Moel);lit.dMositenr(nw ouedapt()ubic oi mouliked(MouseEent e)if(.getlicCount() = 2 & li.getSlectedInex() != 1)ickTwo(lst.geelectedVae(););jsrollPne= newJScroPan(list);jsolPan.setSie(200,25);sllPane.socatin(0, 7);con.d(jscroll

14、Pae);ra.seVisb(true);fram.etaultCsOpein(JFrmeEIT_NCLSE);应用程序的编制方法是用户点击给出的功能按钮实现对应的功能,按钮响应中调用相应的类及方法,重要代码如下:pivte void lckw(Objet vlu)Srnt= nul;RsutSetre;slect s;str = vaue.oSi()sutrig(, 8);st.trim();se =nw seect();re = se.sectCde(sr);try extFid0.setext( r.getring(ce);textFeld1.setTxt(re.getSring(am)

15、);if(re.gtString(x).al(女 ) = tre)fjRaioButton.seteected(e);elsmjRadioButton.etelecte(true);textField3.etTet(e.geStrin(room));teteld4setet(regetStrg(addrss));exField5.eText(regtStrig(te); ath (SQLEcepo e) .prntSkTrae();e.isscnnetion();ubl oid ctionPerformed(ctinEve e) String ode= null, nae ul, sex =

16、, rom nul, address =null, tel = null;(e.tSource() = bttn0)oe = extield0getTet();name= textField1.geTxt();numeraoAsractutton en=setBttGrop.etElemets();whie(e.haMoreElemes())Abtrauton =en.etElemen();if(ab.isSelce()sex =abgetText();room = extil3.etTx();adess =texField4.etext();tel= extFld5.gtTet();cod.

17、trim();amtri();oom.trim();addres.trim();tel.tri();f(code.equa()!= true &na.quas()!=true& room.equls()!=tue & e.eul()!=true)i(ew ddfor(code, nam, sex, adess,rom, tl).addToDatase() = true)JpionPane.howMesageialog(fam, 增加成功);selectse= new eect();eultSet = e.seectTable();lstModel =new DeftListMol();tryw

18、hil(resltS.nxt()listModel.addEleen(resuSet.getStrin(coe) + + rsutSeeString(nam)); catch (QExcetion 1) e1.printSackTrace();lst.stMel(liode);e.isDisconection();fo(nt i= 0; i esetuttr.tElements();hi(ehasMoreEleents()bstraButtoab=n.extElement();if(ab.sSected())sex =b.gtText();rom = tFild3.etText();adess

19、 = tetFied4.geTet();tl ttFil5.gtTet();ode.rim();naetri();oom.im();addres.tim();tel.trim();f(code.equals()! tue & nme.eqals()!true & room.es()!=tr & sx.equs()!= tru)if(newudate(cde,name,sex,oo,adrss,e).updateStuetIfor() =tre)OptionPan.showessageDialog(frame, 修改成功);select s = newselc();resutSet se.see

20、cbl();istMod= new efaultLiso();ry while(reutet.nxt()lstModel.addEemn(reule.getString(ode) + restSe.getString(name); ah(SQLxcepion 1)e1.pintStackTrac();ist.stModel(listMdel);e.isisconnectio();eeJptioane.sowMesgeDialo(frm, 修改失败,请核对信息,错误,ptonPane.OR_MSSAE);eleJOptiPan.hwMsaDialog(fame, 填入信息不全,请核对,警告,pt

21、inPane.WARNNG_MESSAGE);if(.gtSource() = buttn3)RsultSet s;seect sAll;Stig eac=ull;seac OpionPae.shownputDlog(frame,请输入查找的学号:);f(each ! null)sach.trim();if(sea.eqal() != e)sAl new selec();s sl.secCoe(ach);tfor(int = 0; i ;+)if(i =)if(s.geti(3).eua(男))jRadioutonetSlectd(tru);lsefjRadutto.setSleted(tru

22、e);lsetextFieli.seTx(s.getString(i+);ctc (HadlessExcepto e1) e.pnStacTrac(); ach (QLExcepion e) JOptioPa.shwMesageDilog(ram, 查找的学生记录不存在:);Al.sDiscnectio();elsOtionane.shoeageDialog(frame, 学号不能为空,错误,JOptionPaeERRO_MESSAGE);if(getouce() = utn)JScrlB jsscroBar;int lis;li = liseteletedInde();if(lis = -1

23、)list.setSelectedInd();ssrBar = jscollane.etVerticalScollBar();ssroBar.setalue(0);elseist.stSeletedId(ls 1);jscroBar=scrollPnegtVerticalScollBar();scBar.seValue(is * 1 - );if(egetSoure() = utn5)i li;JSrllBarssoBar;lis= ls.getelectedndex();list.setSlectIdex(li+1);jscoBa = jscrolan.geVertcaScrollBar()

24、;jscoBar.seVu(ls* 10 + 1);f(eSour() = u)cde =textFil0.gText();if(cde!= null)ce.tm();if(cod.equals() != ru)nw coueFrae(cde);leOpnPashwesaDog(fram,学号不能为空);七、系统评价及心得体会改进方案本次实验中,自己设计的程序功能上存在不足的地方,如查询时有限制格式,没有很好的容错性,代码健壮性不足,没有具体的应用价值。同时代码执行的效率也是还有提高的空间的,没有很好的算法加入进去。对于这些问题,需要以后更加深入学习a并且需要有大量的编程经验才能解决的,以后学习的东西还有能多。体会这次数据库的课程设计,体会最深刻的就是 ,我将面向对象是思想有了更深的了解,之前javaGUI程序设计没有学习,本次要求系统要有界面,用两周时间边自学边编写自己的程序。所以这次收获之一就是java的掌握有所提高并且,在熟悉语言的同时,我也学会了如何使用jav连接slsrver12数据库,并且掌握了这次主要联系的数据库操作,实现了连接,查询入库删除等功能,虽然还有待提高,但是本次课程设计让我了解了不少,也学习了不少。我感到收获很到。这对我以后的学习或者工作都有很大的帮助。八、参考文献jaa语言程序设计 北京邮电大学出版社

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号