freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

smart系統(tǒng)-系統(tǒng)功能管理模塊設計與開發(fā)—免費畢業(yè)設計論文-閱讀頁

2024-12-19 06:10本頁面
  

【正文】 要由用戶登錄、用戶注銷、session 維護三部分構(gòu)成,其詳細設置流程圖如圖41:圖41 登錄驗證詳細設計流程圖 代碼實現(xiàn)用戶通過登錄頁面向系統(tǒng)發(fā)送登錄用戶信息,服務器端通過filter機制,首先檢測到用戶發(fā)送過來的登錄請求,然后執(zhí)行用戶登錄驗證,如果通過用戶登錄驗證,將加載用戶權(quán)限,代碼如下:LoginInfo userData = (uin, pass, type)。 } (userData)。 permission = (userData)。 ().getRequestDispatcher(/).forward(request, response)。}其中對用戶的查詢loadAuthorization方法中主要調(diào)用了另一個后臺方法,該方法主要根據(jù)傳入的用戶名稱、用戶類型來加載當前系統(tǒng)中是否存在這種用戶,代碼如下: StringBuffer buffer = new StringBuffer()。 (uin, uin)。 if (type != null amp。 ()) {//教師用戶 (select , + , + , from PcmUser as user, SmartTeacher as teacher )。 } (userData)是根據(jù)用戶登錄驗證后的信息來為該用戶加載系統(tǒng)權(quán)限,然后臺查詢代碼 (Authorization)(from Authorization where userId=:userId and type=:type, params)可以得到用戶的角色信息,然后通過用戶角色關(guān)系以及角色任務關(guān)系將用戶的權(quán)限存儲在一個HashMap中,代碼如下:Set set = null。 Map map = new HashMap()。//獲取用戶角色列表 if (set != null) { Iterator iter = ()。 if (role != null amp。 () != null) { Set roleTasksSet = ()。 ()。 PcmTask task = ()。amp。...... (map)。 (teacherNo, ())。List list = (List) (new Carrier(map, , SearchTeacherByNo))。其business中通過((PcmUserDAO) ()).seacherByNo(map)來調(diào)用Impl接口中的一個seacherByNo方法來實現(xiàn)數(shù)據(jù)查找的,其全部代碼如下: HashMap params = new HashMap()。 if (type != null amp。 ()) { (teacherNo, (teacherNo))。 }2. 用戶的UIN唯一性檢查UIN唯一性檢查和NO唯一性檢查結(jié)構(gòu)上是一樣的。 String type = (String) (type)。 if (type != null amp。 ()) { return (from SmartTeacher where uin=:uin, params)。 Iterator iter = ()。 if (obj != null) { return ()。 角色管理 用戶界面角色管理設計圖:圖44 角色管理設計圖角色編輯界面設計圖:圖45 角色編輯設計界面 代碼實現(xiàn)角色的搜索功能主要是通過調(diào)用存儲過程來實現(xiàn),在程序中我們通過queryBySP(SearchRole, params)方式來調(diào)用數(shù)據(jù)庫中的SP_SearchRole存儲過程來實現(xiàn)的,角色的更新和刪除時是通過Struts來獲取要更新和刪除的實體,并將這個實體存儲在Carrier的載體變量中,將它傳入到我們的business方法中進行刪除,更新代碼如: Map map = ()。 if (role != null) {//更新實體 ((PcmRoleDAO) ()).update(role)。 } 角色設置管理 用戶界面和流程圖要對用戶進行角色設置之前必須查詢出需要對哪些用戶設置,角色設置就是對某一個用戶或多個用戶進行角色分配,由于用戶和角色的對應關(guān)系是一對多,而角色和用戶的關(guān)系也可以是一對多的關(guān)系,所以在用戶角色設置的界面方式以table的方式來實現(xiàn)。amp。 List result = null。 params[1] = ((uin) != null) ? (uin) : 。 PcmUserDAO dao = new PcmUserImpl()。 }(params)(params)分別是對相關(guān)教師用戶和學生用戶搜索的方法。還要對用戶的相關(guān)用戶角色和相關(guān)角色進行搜索,對用戶的相關(guān)角色搜索和上面的搜索用戶一樣也是用存儲過程的方式實現(xiàn)的,而對相關(guān)的用戶角色的搜索實現(xiàn),其查詢代碼是: (select pur from PcmUserRole pur, ).append(//教師用戶角色搜索 PcmRole as role, ).append(SmartTeacher as st, ).append( PcmUser as user ).append( where = and = 39。 ).append( and = ).append( and = )。 權(quán)限設置管理 用戶界面和流程圖權(quán)限設置就是對某一個角色進行任務(系統(tǒng)中的每一個功能就叫做一個任務)分配,由于任務和角色的對應關(guān)系是一對多,而角色和任務的關(guān)系也可以是一對多的關(guān)系,所以在權(quán)限設置的時候采用表格的方式來進行,所以在用戶角色設置的界面方式以table的方式來實現(xiàn)。其結(jié)果展現(xiàn)代碼如下:display:table name= class=DisplayTable style=width:100% pagesize=10 logic:iterate scope=session id=element name=resultList2 % Map row = (Map) (element)。%=((property))%39。%=((title))%39。%=((Boolean) (sortable)).booleanValue()%39。Ajax實現(xiàn)權(quán)限設置是通過一個Servlet和一個js回調(diào)函數(shù)來實現(xiàn),其后臺回調(diào)函數(shù)實現(xiàn)代碼如下: StringBuffer innerHTML = new StringBuffer()。39。).append( ()).append(39。).append(()) .append(39。).append(newValue).append(39。 String callback = callback(39。, \ + () + \)。其權(quán)限功能實現(xiàn)是在Struts的Action中完成的,該部分主要包括有日志管理、日志搜索、日志查看、日志刪除四種權(quán)限,比如對日志查看和日志刪除的權(quán)限實現(xiàn)我們在Action里面是這樣實現(xiàn)的:(CancelButton)。 } else { throw ((), SMART_AUDIT_0403,SMART_AUDIT_0404)。 菜單權(quán)限控制 用戶界面和流程圖其菜單在頁面上的展現(xiàn)方式設計圖如圖:圖412 菜單展現(xiàn)設計菜單功能實現(xiàn)詳細設計流程圖如圖:圖413 菜單功能詳細設計流程圖 代碼實現(xiàn)菜單的權(quán)限管理是通過J2EE中的自定義標簽來實現(xiàn),在前臺的菜單展示通過smart:menu/smart:menu來實現(xiàn),將所有的菜單權(quán)限的控制放在smart:menu標簽中來實現(xiàn)。 HttpServletRequest req = (HttpServletRequest) ()。來實現(xiàn),在取得了用戶的權(quán)限CODE之后,我們就通過一個displayMenu()方法來檢測哪些菜單是在用戶的權(quán)限范圍內(nèi)的,并將生成在用戶權(quán)限范圍內(nèi)的菜單結(jié)果返回。 for (int i = 0。 i++) { String[] temp = str[i].split(。 for (int j = 0。 j++) { if (!(temp[j])) { break。 } }5 結(jié)果測試、性能分析 單元測試單元測試主要是通過一個開源項目JUNIT進行,不過平時也自己手動寫了一些測試程序。 Object obj = null。 } catch (ApplicationException ex) { throw ex。 }下面列出了對PcmUserBusiness類的三個方法的測試例子,代碼如下: Map params = new HashMap()。 (teacherUin, teacher)。 (teacherSubject, )。 SearchTeacher entity = null。 ()。 ((), teacher1)。 (teacherNo,A20030332095)。 (result)。圖53 菜單列表從上面的測試結(jié)果可以看到,系統(tǒng)對菜單的權(quán)限控制功能成功。1. 教師用戶權(quán)限測試我們用教師用戶UIN為:teacher的用戶登錄,該用戶目前擁有整個系統(tǒng)的全部權(quán)限。第一步:查看當前這兩個教師用戶更新的權(quán)限情況,如圖5圖55:圖54 teacher用戶權(quán)限更改前的更新頁面圖圖55 StuLife用戶權(quán)限更改前的更新頁面圖我們通過權(quán)限設置頁面將“教師用戶編輯”這個權(quán)限去掉。如果我們將他去掉的話,那么我們的正確結(jié)果應該是teacher將不能夠更新其它人的用戶信息,但是他可以更新自己的用戶信息。2. 用戶角色權(quán)限測試我們選擇兩個角色,Admin和STU,其中當前用戶teacher只具有Admin角色,并且Admin角色不具有刪除日志的權(quán)限(日志的刪除權(quán)限已經(jīng)經(jīng)過測試通過),而STU則具有刪除日志的權(quán)限。通過上面的方式為teacher用戶添加了一個新的STU角色,由于這個角色包含了日志刪除的權(quán)限,為此我們的預期結(jié)果應該是teacher也應該包含日志刪除權(quán)限。結(jié) 論通過對系統(tǒng)管理功能的前期分析、設計,以及后期的開發(fā),雖然沒有完全按照預期的時間進度安排完成了相關(guān)的系統(tǒng)設計和程序開發(fā),但最終還是完成了最初系統(tǒng)設計的全部功能,包括:實現(xiàn)對多種用戶的管理和維護;實現(xiàn)系統(tǒng)角色的管理和維護;實現(xiàn)對系統(tǒng)功能的權(quán)限管理和維護;實現(xiàn)對用戶角色任務的管理和維護;實現(xiàn)對日志的管理和維護;實現(xiàn)多種用戶的登陸;實現(xiàn)對菜單權(quán)限的管理。在這個系統(tǒng)的開發(fā)中,讓我感受最深的是,要想讓這個系統(tǒng)功能管理模塊很輕松的融入其它的應用系統(tǒng)中,最好的方式就是將系統(tǒng)功能管理模塊獨立出來。本系統(tǒng)不但完成了設計上的系統(tǒng)功能開發(fā),同時也將其應用到SMART系統(tǒng)中進行二次系統(tǒng)開發(fā),但系統(tǒng)仍然在很多設計方面存在著不足之處,比如安全性等方面,有待后期進行改進。[2] 計磊,李里,—Eclipse、Struts、Hibernate及Spring整合應用案例[M].北京:人民郵電出版社,2006。[4] [M].北京:電子工業(yè)出版社,2005。[6] 夏昕,曹曉鋼, [M].北京:電子工業(yè)出版社,2005。致 謝本論文的工作是2007年2月至2007年6月在成都信息工程學院網(wǎng)絡工程系完成的。最后向在百忙之中評審本文的各位專家、老師表示衷心的感謝!作者簡介姓 名:何義凱 性別: 男出生年月:19850412 民族: 漢Email: zywmh1997聲 明本論文的工作是 2007年 2 月至2007年 6 月在成都信息工程學院網(wǎng)絡工程系完成的。除非另有說明,本文的工作是原始性工作。(2)學??梢圆捎糜坝?、縮印或其他復制方式保存學位論文。(4)學??稍试S學位論文被查閱或借閱。除非另有科研合同和其他法律文書的制約,本論文的科研成果屬于成都信息工程學院。s backyard. The stripes were orange and black. Billy and his wife, Valencia, nestled like spoons in their big double bed. They were jiggled by Magic Fingers. Valencia didn39。t have ovaries or a uterus any more. They had been removed by a surgeonby one of Billy39。s two children, children no more. They were gone forever. Billy was guided by dread and the lack of dread. Dread told him when to stop. Lack of it told him when to move again. He stopped. He went into his daughter39。Who killed me? he would ask. And everybody knew the answer., which was this: Billy Pilgri
點擊復制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1