畢業(yè)設(shè)計(jì)選題管理系統(tǒng)_第1頁
畢業(yè)設(shè)計(jì)選題管理系統(tǒng)_第2頁
畢業(yè)設(shè)計(jì)選題管理系統(tǒng)_第3頁
畢業(yè)設(shè)計(jì)選題管理系統(tǒng)_第4頁
畢業(yè)設(shè)計(jì)選題管理系統(tǒng)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、1.前每年畢業(yè)臨近,都有大量的畢業(yè)生需要進(jìn)行畢業(yè)設(shè)計(jì),這其中的首要關(guān)節(jié)就是課題的選擇,以往 指導(dǎo)老師都是采用人工手寫方式給學(xué)生們提供相關(guān)的課題供學(xué)生選擇,如果指導(dǎo)老師帶領(lǐng)的學(xué)生比較 多,或者是當(dāng)年畢業(yè)的學(xué)生比較多,這樣就容易造成學(xué)生的課題選擇很混亂,指導(dǎo)教師難于統(tǒng)計(jì)學(xué)生的 課題選擇情況等一系列問題,基于這些傳統(tǒng)問題, 我們需要一個(gè)能夠自動(dòng)統(tǒng)計(jì)、 實(shí)時(shí)分配課題的一個(gè)管 理平臺(tái)來幫助學(xué)生、指導(dǎo)老師。此系統(tǒng)的開發(fā), 主要的目的是使老師能更好的管理課程設(shè)計(jì), 也能使學(xué)生能更好的把自己想要選的 課程正確無誤的選出來。使處在選課時(shí)期的學(xué)生能有條不紊的進(jìn)行。2.系統(tǒng)的需求分析2.1功能需求2.1.1畢業(yè)設(shè)計(jì)

2、選題管理系統(tǒng)功能要求:1.畢業(yè)設(shè)計(jì)題目維護(hù)和查詢:畢業(yè)設(shè)計(jì)題目的添加、修改;按照項(xiàng)目類型、名稱、編號(hào)等查詢;畢業(yè) 設(shè)計(jì)選題查詢、登記。2.指導(dǎo)教師信息維護(hù)和查詢:指導(dǎo)教師信息的添加、修改、刪除,查詢;3.畢業(yè)生選題管理:學(xué)生選題登記;選題情況查詢;4.畢業(yè)生信息的維護(hù)和查詢。 根據(jù)以上各功能模塊需求將系統(tǒng)的功能細(xì)化為以下幾點(diǎn):(1)前臺(tái)學(xué)生選題學(xué)生網(wǎng)上選題:(2)前臺(tái)教師出題 教師網(wǎng)上出題: 教師管理出題: 選題確認(rèn): 學(xué)生選好題目后,教師可以確認(rèn)該題由選擇該題的學(xué)生做。(3)后臺(tái)管理出題及選題情況 用戶管理模塊:管理員可以對用戶進(jìn)行用戶管理,對已存在的用戶進(jìn)行修改,查看等。 角色管理模塊:管

3、理員可以對用戶的角色進(jìn)行管理,可以給用戶分配角色,對角色分配權(quán)限。2.2開發(fā)環(huán)境需求操作系統(tǒng):window7或更高版本 因?yàn)楫厴I(yè)設(shè)計(jì)課題管理系統(tǒng)針對的用戶是學(xué)生和教師, 以選著windows7或更高版本的操作系統(tǒng)web服務(wù)器:apache-tomcat6apache-tomcat6是開源的免費(fèi)的web服務(wù)器,節(jié)省開發(fā)成本 數(shù)據(jù)庫:MySQLMySQL是一款免費(fèi)的數(shù)據(jù)庫,節(jié)省成本學(xué)生登錄管理系統(tǒng)進(jìn)行選題教師進(jìn)入畢業(yè)選題出題。教師進(jìn)入系統(tǒng)后對畢業(yè)設(shè)計(jì)題目進(jìn)行修改和刪除。學(xué)生和教師普遍使用windows操作系統(tǒng), 所開發(fā)工具:myecii pse8.5myeciipse8.5功能強(qiáng)大的JavaEE開

4、發(fā)工具,該管理系統(tǒng)選用3.系統(tǒng)設(shè)計(jì)3.1基本設(shè)計(jì)概念和處理流程本系統(tǒng)采用結(jié)構(gòu)化分析,設(shè)計(jì)順序?yàn)樽皂斚蛳拢瑢訉又鸩郊?xì)化。 圖3.2軟件功能設(shè)計(jì)3.2數(shù)據(jù)庫設(shè)計(jì)3.2.1 E-R圖3.2.2數(shù)據(jù)庫表用戶表(user)字段類型備注useridVarchar(20)primary key用戶IDPwdvarchar(32)用戶密碼roleIdInt外鍵tn ameVarchar(20)姓名sexVarchar(5)性別AgeInt年齡表1課題表(task)字段類型備注taskIdInt p rimary key課題IDtask namevarchar(20)課題名sflagint狀態(tài)(是否被選)tas

5、kTextvarchar(50)課題內(nèi)容JavaEE開發(fā)。表2選擇課題(chosetask)字段類型備注ctIdint p rimary key學(xué)生選課題iduIdvarchar(10)外鍵taskIdInt課題ID表3上傳課題(puttask)字段類型備注ptIdint p rimary key教師上傳課題iduIdvarchar(10)外鍵taskIdInt課題ID表4角色表(roleinfo)字段類型備注roleIdIntp rimary key角色I(xiàn)Drole namevarchar(10)角色名表5權(quán)限表(rightinfo)字段類型備注rightCodevarchar(20 )p

6、rimary key權(quán)限r(nóng)ight Paren tCodevarchar(30)父權(quán)限r(nóng)ightT ypevarchar(20)rightTextvarchar(50)RightUrlvarchar(30)url地址RightTipvarchar(50)表6角色權(quán)限表(roleright)rr idIntp rimary key主鍵rr roleidInt外鍵role表rr rightCodevarchar(20)外鍵rightinfo表表74.典型功能模塊的詳細(xì)設(shè)計(jì)和實(shí)現(xiàn)過程用戶模塊登錄功能代碼:P ublicStri ng doLogi n()Userinfo uu=userService

7、 .checkUser( user );if (uu!= null )ServletActi onCon text.getRequest().getSessi on( ).setAttnbute(int roleld=uu.getRole in fo().getRoleld();Rolei nfo r= roleService .getRoleWithRights(roleld);Stri ng men uStri ng=buildDTreeMe nuStri ng(r);ServletActionCon text.getRequestQ.getSessio n( ).setAttnbute(

8、men uStri ng); elseint maxP ageItems;max Pageltems = 5;uu);returninp utp ublicUseri nfo checkUser(Useri nfo u) Useri nfo uu=n ull ;String hql= from Useri nfo where userid=? and p wd=?Object args =new Objectu.getUserid(),u.get Pwd();List list =com mon Dao .list(hql, args);(list!= null & list.size

9、()0)ifuu = list.get(0);return uu;p ublicList list(Stri ng hql, Object args) List list=this.getHibernateTemp late().fi nd(hql,args);return list;查詢信息功能代碼:p ublicStri ng toList()SP ageBea n spb = new SP ageBea n();Htt pServletRequest request = ServletActi on Con text.getRequest(); int offset = 0;if(req

10、uest.get Parameter offset =0;else offset = In teger.p ager.offset)=n ull ) p arse Int(request.get Parameter(p ager.offset);USER,MENU_STRING,returnmainif (request.getAttribute(maxPageltems) = null ) In teger.p ublic p ublic else maxP ageItems =p arse Int(request.get Parameter(sp b.setOffset(offset);s

11、p b.set PageSize(max Pageltems); infoService.getList(s pb);request.setAttribute( return listmax Pageltems);SPB , spb);void getList(S PageBea n spb) String hql=from Useri nfo com mon Dao .listB yP age(hql,sp b);voidfinalfinallistBy Page(Stri ng hql, SP ageBean spb) Stri ng hql1=hql;SP ageBea n sp b1=

12、s pb;if (hql!= null )int total=(I nteger)Hiber nateCallbackQ p ublicObject doInH iber nate(Sessi on sess)Hiber nateExce pti on.this.getHiber nateTe mp late().execute(throwsnewSQLExce ption String qStri ng=if (hql1.toLowerCase().indexOf(int idx=hql1.toLowerCase().i ndexOf( qStri ng=select cou nt(*)+h

13、ql1.substri ng(idx,hql1.le ngth();else qStri ng=select cou nt(*)Query cQuery=sess.createQuery(qStri ng);cQuery.setCacheable(true );long o= (Lon g)cQuery.u ni queResult(); int ii=( returnint )o;ii;HHselect +hql1;)!=-1)from););sp b.setTotal(total);List data=(List)Hiber nateCallbackQ this .getHibern at

14、eTemplate().execute(newp ublicObject doInH iber nate(Sessi on sess)throwsHiber nateExce pti on.void setDatas(List datas) .datas = datas;publicreturnp ublicSQLExce ption Query query= sess.createQuery(hql1);query.setFirstResult(s pb1.getOffset();query.setMaxResults(s pb1.get PageSizeO); returnquery.li

15、st(););sp b.setDatas(data);privateintoffsetprivateintp ageSizeprivateinttotal ;privateListdataspublicintgetTotal() classSP ageBea n totalreturnpublicthisvoidpublicreturnsetTotal( int total) .total = total;List getDatasO datas ;publicthisvoidpublicreturnsetOffset( int offset) .offset = offset;intget

16、PageSizeO pageSize ;p ublic voidset PageSize( int p ageSize) this . pageSize= pageSize;上傳課題功能代碼:p ublicStri ng toadd()publicthisintgetOffsetO offset ;return add publicStri ng doadd()if(taskService .doAdd( task )= true )null ) In teger.p ublicSP ageBea n spb =new SP ageBea n();Htt pServletRequest req

17、uest = ServletActio nCon text.getRequest(); int offset = 0;if(request.get Parameter( offset= 0;else offset = In max Pageltems;p ager.offsetp arse Intif)= n ull(request.get Parameter(request.getAttribute(maxP ageItems = 5; else maxP ageItems =p arse Int(request.get Parameter(sp b.setOffset(

18、offset);sp b.set PageSize(max Pageltems); taskService .getTask info(s pb);ServletActi onCon text.getRequest().setAttribute(max Pageltems);returnlistp ager.offsetmax PageltemsSPB1 , spb););)= elsereturnaddboolea n doAdd(TaskInfo t) Serializable ret =return ret!= null管理員模塊管理員對角色管理功能:p ublicclass RoleA

19、cti onp rivateIRoleServicep rivateIRightServicecom mon Dao .add(t);exte nds Action SupportroleServicerightServiceList rights=Role info r =roleServicerightService .getAllRights();.getRoleWithRights(privatepublic thisRolei nforolevoid setRoleService(IRoleService roleService) .roleService =roleService;

20、publicthisvoid setRightService(IRightService rightService) .rightService = rightService;publicreturnRolei nfo getRole() role ;publicthisvoidsetRole(Role info role) .role = role; publicStri ng toListOroleService .getList();List roles=ServletActi onCon text.getRequest().setAttnbute(ROLES , roles);retu

21、rn listp ublicString toAssig n()for(Right info rightrights)if (r.getRights().contains(right) right.setChecked(checked);ServletActio nCon text.getRequest().setAttribute(ServletActio nCon text.getRequest().setAttribute( retur nassig n;ROLE , r);RIGHTS ,rights);p ublicString doAssig n()Htt pServletRequ

22、est request=ServletAction_Stri ng n ewRights=request.get ParameterValues(CheckBox_RightsroleService.up dateRoleRights(role .getRoleId( ),n ewRights);Htt pServletRes ponse response=ServletActio_throwsExce pti on);respon se.se ndRedirect(+&message=ok);returnn ull ;role!toAssig n. actio n?role.rold

23、ld=+ role .getRoleId()role.getRoleldO);return list ;imp leme ntsIRightServiceICom monDAO com mon Dao ;void setCom mon Dao(ICom monDAO com mon Dao) .com mon Dao = com mon Dao;ListvRighti nfo getAllRights() from Right infoList list =return list;com mon Dao .lisMhql);userService .detail(uid);ServletAct

24、i onCon text.getRequest().setAttribute( return edit ;p ublic Stri ng edit()booleanflag = userService.update(user );if (flag)管理員對用戶管理功能:(增、刪、改、查)p ublicStri uid =In teger.p arse Int(ServletActionCon text.getRequestQ.get Parameter(boolea nflag = userService .delete(uid);userid );if (flag)

25、returnlisti elsereturnlist編輯用戶Stri ng toedit()/publicintuid=In teger.);p arse Int(ServletActionCon text.getRequestO.get Parameteruserid )p ublic class RightServiceIm pl_H private publicthis publicString hql=Useri nfo uu =USER2 , uu);return mai n; elsep ublic String toadd()return add p ublic String d

26、oLogi nOServletActi onCon text.getRequest().getSessi on( ).setAttribute(int roleId=uu.getRole in fo().getRoleId();Rolei nfo r= roleService .getRoleWithRights(roleld);Stri ng men uStri ng=buildDTreeMe nuStri ng(r);ServletActionCon text.getRequestO.getSessio n( ).setAttribute( men uStri ng);elsereturn

27、 edit errorpublicintStri ng detail。uid=In teger.);p arse Int(ServletActionCon text.getRequestQ.get Parameteruserid )userService .detail(uid);ServletActio nCon text.getRequest().setAttribute( returndetail ;Useri nfo uu =USER1,uu); publicifStri ng add()(userService .addUser( user )= trueListvUseri nfo

28、 user =userService.list();ServletActi onCon text.getRequest().setAttribute(USERS , user);returnlistreturnaddUseri nfo uu=userService .checkUser(user );if(uu匸null )USER,uu);MENU_STRING,return falseelsereturn inputboolean addUser(Userinfo u) public List list() String hql =List list =commonDao .list(hql);return list;if (list!= null & list.size()0)uu=list.get(0);return uu;public Userinfo toedit(if (list!= null & list.size()0)uu=list.get(0);return uu;boolean

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論