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

正文內(nèi)容

iyo校園綜合服務平臺軟件工程設計報告-文庫吧

2025-04-25 14:29 本頁面


【正文】 電話 School Varchar(30) 學院 Major Varchar(30) 專業(yè) ClassNum Intsger(3) 班級 說明:記錄所有社團成員(有社團一卡通者)。 (八)社團身份表 CB_Identity 表 列名 數(shù)據(jù)類型 完整性 描述 identityid Integer(5) 主鍵 身份 id identityname Varchar(20) 唯一 身份名稱 說明:描述社團中人員的身份。 (九)社團人員身份 表 CB_MemberDesc 表 列名 數(shù)據(jù)類型 完整性 描述 memberdescid Integer(10) 主鍵 社團人員身份 id 9 cardid Integer(5) 參照 List(cardid) 卡號 userid Integer(10) 參照 User(userid) 用戶 id clubid Integer(5) 參照 Club(clubid) 社團 id identityid Integer(5) 參照 Identity(identityid) 社團內(nèi)身份 說明:描述每個社團成員的社團 身份。 (九)社團人員申請表 CB_MemberApp 表 列名 數(shù)據(jù)類型 完整性 描述 memberappid Integer(10) 主鍵 申請表 id cardid Integer(5) 參照 List(cardid) 卡號 userid Integer(10) 參照 User(userid) 用戶 id clubid Integer(5) 參照 Club(clubid) 社團 id 說明:描述每個社團成員的社團身份。 項目架構(gòu)設計 為了使該系統(tǒng)具有良好的健壯性、穩(wěn)定性 、安全性、可維護性,將該系統(tǒng)分為如下七層: 1) Dao層: 操作數(shù)據(jù)庫的接口層。為了保證系統(tǒng)內(nèi)數(shù)據(jù)的安全性,利用接口技術(shù)實現(xiàn)面向?qū)ο蟪绦蛟O計的封裝性與多態(tài)性,從而保證操作數(shù)據(jù)庫代碼的隱蔽性與安全性。 2) DaoImp層: 實現(xiàn) Dao層所對應的接口,將操作數(shù)據(jù)庫的具體代碼寫在此層。操作數(shù)據(jù)庫時利用面向?qū)ο蟪绦蛟O計的向上轉(zhuǎn)型技術(shù)實現(xiàn)該層代碼的封裝。 3) Model層: 實體模型層。模型與數(shù)據(jù)庫中的數(shù)據(jù)表一一對應,將數(shù)據(jù)表中的數(shù)據(jù)映射為系統(tǒng)內(nèi)實體時所使用。 4) Service層: 提供各種功能性操作的服務層。該網(wǎng)站所具有的功能均由該層提供的操作處理完成,比如登陸、注冊、瀏覽、管理等操作。 5) Action層: 業(yè)務邏輯處理層。與前端直接交互的功能層,負責與前端信息的交互,識別并區(qū)分請求,然后決定調(diào)用 Service層合適的功能, 6)前端: 與用戶直接接觸,負責接收用戶發(fā)來的消息,并將反饋回的數(shù)據(jù)顯示給用戶,前端包括頁面和安卓客戶端。 項目實現(xiàn) 程序設計語言選擇 服務端: Java+ssh 框架 客戶端: java、 jsp、 html、 javascript 10 原因: java+ssh 框架實現(xiàn)網(wǎng)站服務器端,網(wǎng)站穩(wěn)定性較好,平臺不受限制,易于實現(xiàn),易于擴展和維護,數(shù)據(jù)封裝性好。 數(shù)據(jù)庫服務: mysql 原因:適用于中小型項目的數(shù)據(jù)庫系統(tǒng),安全、穩(wěn)定、易用、免費。 設計模式: MVC 原因: 1) 低耦合性。視圖層和業(yè)務層分離,這樣就允許更改視圖層代碼而不用重新編譯模型和控制器代碼,同樣,一個應用的業(yè)務流程或者業(yè)務規(guī)則的改變只需要改動 MVC 的模型層即可。因為模型與控制器和視圖相分離,所以很容易改變應用程序 的數(shù)據(jù)層和業(yè)務規(guī)則。 2) 高重用性和可適用性。隨著技術(shù)的不斷進步,現(xiàn)在需要用越來越多的方式來訪問應用程序。 MVC模式允許你使用各種不同樣式的視圖來訪問同一個服務器端的代碼。它包括任何 WEB( HTTP)瀏覽器或者無線瀏覽器( wap),比如,用戶可以通過電腦也可通過手機來訂購某樣產(chǎn)品,雖然訂購的方式不一樣,但處理訂購產(chǎn)品的方式是一樣的。由于模型返回的數(shù)據(jù)沒有進行格式化,所以同樣的構(gòu)件能被不同的界面使用。例如,很多數(shù)據(jù)可能用 HTML 來表示,但是也有可能用 WAP來表示,而這些表示所需要的僅是改變視圖層的實現(xiàn)方 式,而控制層和模型層無需做任何改變。 3) 較低的生命周期成本。 MVC 模式開發(fā)可提高開發(fā)效率,降低開發(fā)成本,易于進行產(chǎn)品的維護。 4) 快速的部署。使用 MVC 模式使開發(fā)時間得到相當大的縮減,它使程序員( Java 開發(fā)人員)集中精力于業(yè)務邏輯,界面程序員( HTML 和 JSP 開發(fā)人員)集中業(yè)務于表現(xiàn)形式上。 5) 可維護性。分熟視圖層和業(yè)務邏輯層也使得 WEB 應用更易于維護和修改。 有利于軟件工程化管理。由于不同的層各司其職,每一層不同的應用具有某些相同的特征,有利于通過工程化、工具化管理程序代碼。 技術(shù)介紹: 1)表現(xiàn)層技術(shù): jsp 本系統(tǒng)用 jsp作表現(xiàn)層,負責收集用戶請求數(shù)據(jù),以及數(shù)據(jù)的表示。 2) MVC 框架 本系統(tǒng)使用 struts2 作為 MVC 框架。系統(tǒng)中所有用戶請求,包括系統(tǒng)超鏈接和數(shù)據(jù)提交等都不直接發(fā)送到處理層,而是發(fā)送給 struts2 的 action,struts2 控制所有請求的處理與轉(zhuǎn)發(fā)。 3) spring 框架的作用 Spring 提供的 Ioc 容器是業(yè)務邏輯組合各 dao組件的工廠,它負責生成并管理這些實例。借助于 spring 的依賴注入,各組件以松耦合方式 組合在一起,組件之間的依賴通過 spring 的依賴管理。 4) hibernate 的作用 Hibernate 框架簡化了數(shù)據(jù)庫的訪問,以簡單靈活的方法操作數(shù)據(jù)庫,為底層的 dao 對象實現(xiàn)提供支持。 11 具體實現(xiàn) 1) 系統(tǒng)結(jié)構(gòu) 表現(xiàn)層:由 jsp 頁面組成。 MVC 層:使用 MVC 框架技術(shù)。 業(yè)務邏輯:主要由 Spring Ioc 容器管理的業(yè)務邏輯組件組成。 DAO 層:由 16 個 DAO 組件組成。在 hibernate 管理下完成數(shù)據(jù)庫操作。 數(shù)據(jù)庫服務層: mysql 數(shù)據(jù)庫存儲持久化數(shù)據(jù)。 2) 功能模塊 XXXDAO:提供 XXX表的數(shù)據(jù)庫操作。 XXXService:提供 XXX 表的業(yè)務邏輯處理功能。 XXXAction:提供 XXX 角色的請求處理。 3) hibernate 持久層 持久化實體: User: 注冊用戶信息,包括用戶名,名戶密碼,用戶權(quán)限等信息。 MemberList: 社團卡與學號綁定信息,包括社團卡號與學生學號信息。 Member: 辦卡人員詳細信息,包括專業(yè)、班級、真實姓名、聯(lián)系方式等。 MemberDesc: 社團個員信息,包括所在社團,在社團中的身份等信息。 MemberApp: 申請社 團人員的信息表,包括所申請的社團和申請人詳細信息。 Club: 社團信息,包括社團名,社團號,社團簡介等信息。 Store: 贊助商信息,同 Club 表。 Right: 用戶權(quán)限表,包括權(quán)限名,權(quán)限 id 兩個屬性。 Identity: 加入社的用戶在社團中的職位描述,包括職位名和職位id 兩個屬性。 其他 : 還有一些持久化實體類,因為客觀原因使與其相關(guān)的功能暫不能開放,在此不給予描述。 我們使用 annotation 實現(xiàn)實體的映射,實現(xiàn)零配置。 4) 實現(xiàn) DAO 層 每個 DAO組件對應一個數(shù)據(jù)表的操作。包括 DAO 接口和 DAO 實現(xiàn)類。 基本組件: getById(long id): 根據(jù)主鍵取持久化實體。 add(object entity)。 保存持久化實例。 update(object entity): 更新持久化實例。 Delete(long id): 根據(jù)主鍵刪除持久化實例。 getAll(): 取出表中所有持久化實體。 getXXByYYList(int first,int size,...): 根據(jù)數(shù)據(jù)表的某個屬性列分頁取出持久化實例。 通過 spring 注入 SessionFactory 實現(xiàn) DAO 層的部 署。 5) 實現(xiàn) Serivce 層 這一層我們做的很簡單,只是在 DAO 層上加了一些簡單的判斷,大部分的業(yè)務邏輯處理都被放到了 action 里。 12 6) 實現(xiàn) web 層 Struts2 與 spring 整合。在 中配置 struts2 核心 Filter 與初始化 spring 容器,實現(xiàn) action 的自動裝配。 業(yè)務控制器 Action。主要是對用戶請求做業(yè)務處理,并通過 jsp把處理結(jié)果呈現(xiàn)給用戶。主要有 : UserAction: 處理用戶一般的操作,例如登錄、注冊、申請社團等。 ManageAction: 處理管理 角色用戶操作請求,例如審核社團申請、設置權(quán)限等。 PageAction: 處理部分頁面跳轉(zhuǎn)請求。 項目測試 分層測試: 1) Model:建立持久化實體類,并在 中部署,運行測試,運行后數(shù)庫據(jù)中自動生成數(shù)據(jù)表,通過命令行查詢,表和表之間的對應關(guān)系正確。 2) DAO 層:建立接口和實現(xiàn)類,在 XXXText 使用單元獨立測試,針對數(shù)據(jù)庫操作組件一一測試。添加、查找功能正常,刪除、更新時出導常。審查代碼,沒有發(fā)現(xiàn)錯誤,通過命令查看數(shù)據(jù),發(fā)現(xiàn)外鍵級聯(lián)設置錯誤,經(jīng)手動調(diào)節(jié)后再次運行測試代碼,運 行正確。 3) Service 層:這一層是基于 Model 層和 DAO 層建立的邏輯處理層,主要負責進行數(shù)據(jù)庫操作之前的邏輯處理,主要是對 DAO 層的調(diào)用和數(shù)據(jù)流向的控制。我們采用各功能函數(shù)獨立測試,主要是檢查是否正常調(diào)用 DAO 層,問題主要是輸入數(shù)據(jù)不能保存,查詢時數(shù)據(jù)存有存在時出異常。解決辦法是在保存數(shù)據(jù)時驗證數(shù)據(jù)是否正確,在取出時檢查數(shù)據(jù)是否存在,不能取出的數(shù)據(jù)當作不存在處理。 4) Action:這一層主要是處理請求返回結(jié)果到表現(xiàn)層,主要測試能否正確接收提交上來的數(shù)據(jù),能否正確存儲數(shù)據(jù)和提取數(shù)據(jù),能否正確返回表現(xiàn) 層。測試依賴表現(xiàn)層,異常不確定,主要表現(xiàn)在數(shù)據(jù)提取不正確,中文亂碼等。解決辦法:提取數(shù)據(jù)錯誤時返回錯誤提示,統(tǒng)一工程使用字符編碼集。 功能模塊測試: 測試數(shù)據(jù)( 1): 郵箱: 用
點擊復制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1