手機(jī)論壇的設(shè)計與開發(fā)畢業(yè)論文(doc 34頁).doc_第1頁
手機(jī)論壇的設(shè)計與開發(fā)畢業(yè)論文(doc 34頁).doc_第2頁
手機(jī)論壇的設(shè)計與開發(fā)畢業(yè)論文(doc 34頁).doc_第3頁
手機(jī)論壇的設(shè)計與開發(fā)畢業(yè)論文(doc 34頁).doc_第4頁
手機(jī)論壇的設(shè)計與開發(fā)畢業(yè)論文(doc 34頁).doc_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

編號 淮安信息淮安信息職業(yè)職業(yè)技技術(shù)術(shù)學(xué)院學(xué)院 畢畢業(yè)業(yè)論論文文 題 目手機(jī)論壇的設(shè)計與開發(fā) 學(xué)生姓名 學(xué) 號35102025 系 部計算機(jī)與通信工程學(xué)院 專 業(yè)計算機(jī)應(yīng)用技術(shù) 班 級351020 指導(dǎo)教師李焱 講師 顧問教師 二 一二年十月 摘 要 摘摘 要要 隨著 Internet 技術(shù)的快速發(fā)展 人與人之間交流方式逐漸增多 網(wǎng)絡(luò)視頻 網(wǎng)絡(luò)聊天 博客已成為人們彼此溝通 交流信息的主要方式 此外 為了方便 人們在某一專業(yè)領(lǐng)域探討問題和發(fā)表意見 Internet 上還出現(xiàn)了一種在線交流 平臺 論壇 在論壇上 人們可以對某一領(lǐng)域提出自己遇到的問題 即發(fā)表 某一主題 隨后 論壇上的其他人會根據(jù)自己的學(xué)識 經(jīng)驗發(fā)表意見或提出解 決問題的方法 開發(fā)本手機(jī) BBS 論壇系統(tǒng)的目的是提供一個供手機(jī)用戶交流的平臺 為廣 大手機(jī)用戶提供交流經(jīng)驗 探討問題的網(wǎng)上社區(qū) 因此 手機(jī)論壇系統(tǒng)最基本 的功能首先應(yīng)是發(fā)表主題 其次是其他人員根據(jù)主題發(fā)表自己的看法 此外 為了記錄主題的發(fā)表者和主題的回復(fù)者信息 系統(tǒng)還需要提供用戶注冊和登錄 的功能 只有注冊的用戶登錄后才能夠發(fā)表和回復(fù)主題 瀏覽者 游客 的權(quán) 限只能瀏覽主題信息 本論壇系統(tǒng)是基于是 MyEclipse 8 5 SQL Server 2005 實現(xiàn)的 它具有使 用方便 操作靈活 運(yùn)行穩(wěn)定 安全可靠等特點(diǎn) 關(guān)鍵詞關(guān)鍵詞 在線交流 BBS 論壇 網(wǎng)上社區(qū) MyEclipse 目 錄 I 目目 錄錄 摘摘 要要 I 第一章第一章 手機(jī)論壇系統(tǒng)分析手機(jī)論壇系統(tǒng)分析 1 1 1 需求分析 1 1 1 1 功能性需求 1 1 1 2 非功能性需求 1 1 2 可行性分析 1 1 2 1 技術(shù)可行性 1 1 2 2 經(jīng)濟(jì)可行性 2 1 2 3 社會可行性 2 第二章第二章 系統(tǒng)總體設(shè)計系統(tǒng)總體設(shè)計 3 2 1 JSP 開發(fā)環(huán)境的配置 3 2 1 1 開發(fā)環(huán)境配置 3 2 1 2 Web 項目的創(chuàng)建 3 2 2 SERVELET 開發(fā)模式 3 2 2 1 JSP 開發(fā)模式與 MVC 三層結(jié)構(gòu) 3 2 2 2 了解 Servelet 3 2 3 系統(tǒng)功能結(jié)構(gòu) 4 第三章第三章 數(shù)據(jù)庫分析與設(shè)計數(shù)據(jù)庫分析與設(shè)計 5 3 1 數(shù)據(jù)庫分析 5 3 2 數(shù)據(jù)庫概念設(shè)計 5 3 2 1 根貼實體 5 3 2 2 用戶實體 6 3 2 2 整體實體 6 3 3 數(shù)據(jù)庫邏輯設(shè)計 6 3 3 1 tb board 6 3 3 2 tb topic 7 3 3 3 tb reply 7 3 3 4 tb masterinfo 7 3 3 5 tb userinfo 8 第四章第四章 系統(tǒng)詳細(xì)設(shè)計與實現(xiàn)系統(tǒng)詳細(xì)設(shè)計與實現(xiàn) 9 4 1 前臺設(shè)計 9 目 錄 II 4 1 1 論壇頁頭功能欄設(shè)計 9 4 1 2 論壇主頁設(shè)計 9 4 1 3 主題帖設(shè)計 12 4 1 4 主題帖與回復(fù)帖的查看功能設(shè)計 14 4 1 5 主題帖發(fā)表功能設(shè)計 16 4 1 6 用戶登錄功能設(shè)計 18 4 1 7 用戶注冊功能設(shè)計 19 4 1 8 帖子回復(fù)功能設(shè)計 21 4 1 9 退出功能設(shè)計 23 4 2 后臺設(shè)計 23 4 2 1 管理員登錄功能設(shè)計 23 4 2 2 版塊信息管理設(shè)計 24 4 2 3 添加和刪除版塊功能設(shè)計 24 第五章第五章 總結(jié)與展望總結(jié)與展望 27 致致 謝謝 28 參考文獻(xiàn)參考文獻(xiàn) 29 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計論文 0 第一章第一章 手機(jī)論壇系統(tǒng)分析手機(jī)論壇系統(tǒng)分析 1 1 需求分析需求分析 1 1 1 功能性需求功能性需求 開發(fā)手機(jī) BBS 論壇系統(tǒng)的目的是提供一個供手機(jī)用戶交流的平臺 為廣大 手機(jī)用戶提供交流經(jīng)驗 探討問題的社區(qū) 目前 各大智能手機(jī)橫行 如安卓 Android 智能手機(jī) 但許多人并不能很好的使用 因此 本手機(jī)論壇系統(tǒng)最基 本的功能首先是發(fā)表關(guān)于各種手機(jī)的主題帖 其次是其他人員根據(jù)主題帖發(fā)表 自己的看法 此外 為了記錄主題帖的發(fā)表者和主題的回復(fù)者信息 系統(tǒng)還需 要提供用戶注冊和登錄的功能 只有注冊的用戶登錄后才能夠發(fā)表和回復(fù)主題 瀏覽者 游客 只能瀏覽主題信息 根據(jù)用戶的需求及以上的分析 一個最基 本的手機(jī)論壇需要具備以下功能 顯示各論壇手機(jī)類別及版塊 查看版塊下所 有根帖 查看自己發(fā)表的帖子 查看根帖內(nèi)容 用戶注冊 用戶登錄 發(fā)表帖 子 回復(fù)帖子等 1 1 2 非功能性需求非功能性需求 平臺限制 基于 Windows XP 或 Windows 7 系統(tǒng) 無需安裝其他軟件 數(shù)據(jù)庫支持 選用 SQL Server 2005 數(shù)據(jù)庫 同類型或更高級別的數(shù)據(jù)庫 管理軟件都適用 操作方式 全部操作都可以基于 IE 6 0 版本及以上版本的瀏覽器或其他瀏 覽器進(jìn)行 1 2 可行性分析可行性分析 可行性分析是在系統(tǒng)調(diào)查的基礎(chǔ)上 針對手機(jī)論壇系統(tǒng)的開發(fā)是否具備必 要性和可能性 對該系統(tǒng)的開發(fā)從技術(shù) 經(jīng)濟(jì) 社會的方面進(jìn)行分析和研究 以避免失誤 保證手機(jī)論壇的開發(fā)成功 可行性研究的目的就是用最小的代價 在盡可能短的時間內(nèi)確定問題是否能夠解決 1 2 1 技技術(shù)術(shù)可行性可行性 技術(shù)上的可行性分析主要分析技術(shù)條件能否順利完成開發(fā)工作 軟 硬件 能否滿足開發(fā)者的需要等 該手機(jī)論壇管理系統(tǒng)采用了流行的 JSP 語言和當(dāng)前 通用的 Browser Server 瀏覽器 服務(wù)器 模式進(jìn)行開發(fā) 三層的 B S 體系結(jié)構(gòu) 具有許多傳統(tǒng) Client Server 客戶機(jī) 服務(wù)器 體系結(jié)構(gòu)不具備的優(yōu)點(diǎn) 而且 緊密結(jié)合了 Internet Intranet 國際互聯(lián)網(wǎng) 企業(yè)內(nèi)部互聯(lián)網(wǎng) 技術(shù) 是技術(shù) 發(fā)展的大勢所趨 數(shù)據(jù)庫服務(wù)器選用 SQL Server 2005 數(shù)據(jù)庫 它能夠處理大 手機(jī)論壇系統(tǒng)分析 1 量數(shù)據(jù) 同時保持?jǐn)?shù)據(jù)的完整性并提供許多高級管理功能 它的靈活 安全和 易用性為數(shù)據(jù)庫編程提供了良好的條件 因此 系統(tǒng)的軟件開發(fā)平臺成熟可行 硬件方面 科技飛速發(fā)展的今天 硬件更新的速度越來越快 容量越來越大 可靠性越來越高 價格也越來越低 其硬件平臺能滿足此系統(tǒng)的需要 1 2 2 經(jīng)濟(jì)經(jīng)濟(jì)可行性可行性 主要是對項目的經(jīng)濟(jì)效益進(jìn)行評估 本系統(tǒng)模擬的是提供一個供手機(jī)用戶 交流的平臺 為廣大用戶提供交流經(jīng)驗 探討問題的社區(qū) 所需要軟件 硬件 容易獲取 開發(fā)成本低 效率高 節(jié)約人力 物力及財力 并且該系統(tǒng)實際只 是用于個人的畢業(yè)設(shè)計 只是模擬 不存在資金的流動 故在經(jīng)濟(jì)上是可行的 1 2 3 社會可行性社會可行性 在 Internet 技術(shù)的快速發(fā)展的今天 BBS 論壇早已成為人們彼此溝通 交 流信息的主要方式 在該手機(jī)論壇上 人們可以在智能手機(jī)領(lǐng)域提出自己遇到 的問題 隨后 論壇上的其他人會根據(jù)自己的學(xué)識 經(jīng)驗發(fā)表意見或提出問題 解決的方法 手機(jī)論壇拉近了人們之間的距離 它已成為人們網(wǎng)上生活的必備 工具 所以說論壇對當(dāng)今社會是相當(dāng)重要的 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計論文 2 第二章第二章 系統(tǒng)總體設(shè)計系統(tǒng)總體設(shè)計 2 1 JSP 開開發(fā)環(huán)發(fā)環(huán)境的配置境的配置 2 1 1 開開發(fā)環(huán)發(fā)環(huán)境配置境配置 安裝 JDK JDK Jave Development Kit 是整個 Java 的核心 包括 Java 運(yùn) 行環(huán)境 Java 工具和 Java 基礎(chǔ)的類庫 任何 Java 應(yīng)用程序都需要 JDK 的支持 安裝 Tomcat 6 0 Tomcat 6 0 是 Java Web 開發(fā)的必備軟件 其作用是為 B S 系統(tǒng)提高 Web 服務(wù)器 如同 Windows 下的 IIS 安裝 MyEclipse MyEclipse 是眾多 Java 開發(fā)工具中的佼佼者 支持代碼 編寫 配置 測試及除錯 受廣大 Java 程序員的青睞 同時 也是大多數(shù)公司 開發(fā)項目的首選工具 在 MyEclipse 中主要提供 J2EE 項目的開發(fā)平臺和 J2SE 應(yīng)用程序的開發(fā)平臺 同時提供 UML 設(shè)計 數(shù)據(jù)源管理 項目版本控制 CVS 等 多種功能 2 1 2 Web 項項目的目的創(chuàng)創(chuàng)建建 在 MyEclipse 中創(chuàng)建一個 Web 項目 在項目 src 中創(chuàng)建用于存放后臺類的 Java 程序包 在 WebRoot 下創(chuàng)建 JSP 頁面 通過發(fā)布將項目部署到 Tomcat 服務(wù) 器中 啟動 Tomcat 服務(wù)器 在 IE 等瀏覽器中訪問創(chuàng)建的 JSP 頁面資源 2 2 Servelet 開開發(fā)發(fā)模式模式 2 2 1 JSP 開開發(fā)發(fā)模式與模式與 MVC 三三層結(jié)層結(jié)構(gòu)構(gòu) MVC Model View Controller 意為模型 視圖 控制器 是一種開發(fā)模式 它把應(yīng)用程序分成 3 個核心模塊 模型 視圖 控制器 利用 Sevelet 實現(xiàn)對 系統(tǒng)業(yè)務(wù)邏輯的控制 Sevelet 是整個業(yè)務(wù)過程的控制中心 這樣就將整體系統(tǒng) 規(guī)劃成了三層框架結(jié)構(gòu) 即 MVC 三層模型 2 2 2 了解了解 Servelet Servelet 技術(shù)是 Sun 公司提供的一種實現(xiàn)動態(tài)網(wǎng)頁的解決方案 是 JSP 技術(shù) 的基礎(chǔ) 它是基于 Java 編程語言的 Web 服務(wù)器端編程技術(shù) Servelet 是運(yùn)行在 Web 服務(wù)器端的 Java 應(yīng)用程序 獨(dú)立于平臺和協(xié)議 可生成動態(tài)的 Web 頁面 它擔(dān)當(dāng)客戶請求與服務(wù)器相應(yīng)的中間層 一個 Servelet 程序就是一個實現(xiàn)了特殊 接口的 Java 類 用于支持 Servelet 的 Web 服務(wù)器的調(diào)用和運(yùn)行 一個 Servelet 系統(tǒng)總體設(shè)計 3 程序負(fù)責(zé)處理它所對應(yīng)的一個或一組 URL 地址的訪問請求 接收訪問請求信息 和產(chǎn)生相應(yīng)內(nèi)容 Servelet 與普通 Java 程序相比 只是輸入信息的來源和輸出結(jié)果的目標(biāo)不 一樣 所以 Java 所能完成的任務(wù) Servelet 都可以完成 Servelet 程序還具有以 下一些基本功能 獲取客戶端請求及數(shù)據(jù) 創(chuàng)建對客戶端的響應(yīng)消息內(nèi)容 訪問服務(wù)器端的文件系統(tǒng) 調(diào)用其他 Java 類 2 3 系系統(tǒng)統(tǒng)功能功能結(jié)結(jié)構(gòu)構(gòu) 用戶訪問手機(jī)論壇首頁面后 可進(jìn)行查看版塊下根貼信息 查看發(fā)表的帖 子 查看回帖 用戶注冊 登錄等功能 用戶在此手機(jī)論壇中通過注冊成為該 論壇的真正用戶并成功登錄系統(tǒng)后 可進(jìn)行發(fā)表帖子 回復(fù)帖子 查看自己發(fā) 表的帖子等操作 功能結(jié)構(gòu)圖如圖 2 1 所示 圖 2 1 手機(jī)論壇功能結(jié)構(gòu)圖 查看版塊下根貼 查看根貼內(nèi)容 查看自己的帖子 用戶登錄 用戶注冊 用戶注銷 發(fā)表帖子 回復(fù)帖子 手機(jī) BBS 論壇 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計論文 4 第三章第三章 數(shù)據(jù)庫分析與設(shè)計數(shù)據(jù)庫分析與設(shè)計 3 1 數(shù)據(jù)數(shù)據(jù)庫庫分析分析 數(shù)據(jù)庫的設(shè)計 在程序的開發(fā)中起著至關(guān)重要的作用 它往往決定了在后 面的開發(fā)中進(jìn)行怎樣的程序編碼 一個合理 有限的數(shù)據(jù)庫設(shè)計可降低程序的 復(fù)雜性 使程序開發(fā)的過程更為容易 SQL Server 2005 是一個非常優(yōu)秀的關(guān)系型數(shù)據(jù)庫管理系統(tǒng) 是一個功能強(qiáng) 大的后臺數(shù)據(jù)庫管理系統(tǒng) 它可以幫助各種規(guī)模的企業(yè)管理數(shù)據(jù) 以強(qiáng)大的數(shù) 據(jù)倉庫以及與微軟新產(chǎn)品良好的兼容性贏得越來越多的用戶 越來越多的開發(fā) 工具也提供與 SQL Server 的接口 SQL Server 2005 提供的 T SQL 語言是一種交互式的功能強(qiáng)大的數(shù)據(jù)庫查詢 語言 T SQL 語言是對 SQL 語言的具體實現(xiàn)與擴(kuò)展 通過 T SQL 語言可以完成對 SQL Server 數(shù)據(jù)庫的各種操作 進(jìn)行數(shù)據(jù)庫應(yīng)用開發(fā) 它既可以在 SQL Server 中直接執(zhí)行 也可以嵌入到其他高級程序設(shè)計語言中應(yīng)用 與其他數(shù)據(jù)庫管理系統(tǒng) Oracle DB2 和 Sybase 等 相比 SQL Server 2005 的管理界面更直觀 簡潔 對于較難的操作 提供了清晰的配置導(dǎo)向 按步驟 執(zhí)行即可完成復(fù)雜的管理工作 此外 它還提供了從企業(yè)級大型數(shù)據(jù)庫管理到 個人學(xué)習(xí)使用的各種版本 更適合作為學(xué)習(xí)數(shù)據(jù)庫技術(shù)的入門工具 3 2 數(shù)據(jù)數(shù)據(jù)庫庫概念概念設(shè)計設(shè)計 E R Entity Relationship 模型是對現(xiàn)實世界的一種抽象 是以圖形方式 將數(shù)據(jù)庫的整個邏輯結(jié)構(gòu)表示出來 它的主要成分是實體 聯(lián)系和屬性 使用 這三種成分 我們可以建立許多應(yīng)用環(huán)境的 E R 模型 現(xiàn)在畫出本系統(tǒng)所使用的數(shù)據(jù)庫實體 它們分別為根貼實體 回貼實體和 用戶實體 下面將介紹幾個關(guān)鍵實體的 E R 圖 3 2 1 根根貼實貼實體體 根貼實體包括編號 所屬版塊 標(biāo)題 內(nèi)容 發(fā)布者 發(fā)布時間等屬性 根貼實體的 E R 圖如圖 3 1 所示 圖 3 1 根貼實體 E R 圖 根貼 發(fā)布時間 編號 所屬版塊 標(biāo)題 內(nèi)容 作者 數(shù)據(jù)庫分析與設(shè)計 5 3 2 2 用用戶實戶實體體 ER 模型的 聯(lián)系 用于刻畫實體之間的關(guān)聯(lián) 用戶實體包括編號 用戶名 密碼 重復(fù)密碼 頭像 注冊時間等屬性 用戶實體的 E R 圖如圖 3 2 所示 用戶 注冊時 間 編號 用戶名 頭像 密碼 重復(fù)密 碼 圖 3 2 用戶實體 E R 圖 3 2 2 整體整體實實體體 該實體包含所有單體實體與各版塊 頁面之間的關(guān)系 如圖 3 3 所示 用戶 帖子 回帖 版塊 發(fā)表 屬于 發(fā)表 屬于 屬于 圖 3 3 總體 E R 圖 3 3 數(shù)據(jù)數(shù)據(jù)庫邏輯設(shè)計庫邏輯設(shè)計 根據(jù)數(shù)據(jù)庫概念設(shè)計 可以創(chuàng)建與實體對應(yīng)的數(shù)據(jù)表 3 3 1 tb board 版版塊塊信息表信息表 版塊信息表用來保存論壇中的版塊信息 該表的結(jié)構(gòu)如表 3 1 所示 表 3 1 tb board 表的結(jié)構(gòu) 字段名數(shù)據(jù)類型是否為空是否主鍵默認(rèn)值描述 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計論文 6 boardidintNoYes版塊 ID 自動編號 bnamevarchar 20 YesNULL版塊名稱 bstatusintYesNULL版塊所屬版塊 3 3 2 tb topic 根帖信息表根帖信息表 主題貼信息表用來保存發(fā)布的全部主題貼信息 該表的結(jié)構(gòu)如表 3 2 所示 表 3 2 tb topic 表的結(jié)構(gòu) 字段名數(shù)據(jù)類型是否為空是否主鍵默認(rèn)值描述 topicidintNoYes帖子 ID 自動編號 titlevarchar 200 YesNULL帖子標(biāo)題 contentinfovarchar 3000 YesNULL帖子內(nèi)容 createdatedatetime 8 YesNULL帖子的發(fā)布時間 useridintYesNULL帖子的發(fā)布者 boardidintYes 1 帖子所屬版塊 ID tstatusintYesNULL帖子所屬版塊 3 3 3 tb reply 回帖信息表回帖信息表 回帖信息表用來保存回復(fù)帖子的信息 該表的結(jié)構(gòu)如表 3 3 所示 表 3 3 tb reply 表的結(jié)構(gòu) 字段名數(shù)據(jù)類型是否為空是否主鍵默認(rèn)值描述 replyidintNoYesID 自動編號 contentinfovarchar 3000 YesNULL回帖的內(nèi)容 createdatedatetimeYesNULL回帖的時間 useridintYesNULL回帖的回復(fù)者 ID topicidintYesNULL回帖的根帖 ID rstatusintYesNULL回帖所屬版塊 3 3 4 tb masterinfo 版主信息表版主信息表 版主信息表用來保存版主信息 該表的結(jié)構(gòu)如表 3 4 所示 表 3 4 tb masterinfo 表的結(jié)構(gòu) 字段名數(shù)據(jù)類型是否為空是否主鍵默認(rèn)值描述 idintNoYesID 自動編號 數(shù)據(jù)庫分析與設(shè)計 7 useridintNoNULL用戶 ID boardidintNoNULL版塊 ID 3 3 5 tb userinfo 用用戶戶信息表信息表 用戶信息表用來保存用戶的信息 該表的結(jié)構(gòu)如表 3 5 所示 表 3 5 tb userinfo 表的結(jié)構(gòu) 字段名數(shù)據(jù)類型是否為空是否主鍵默認(rèn)值描述 userid int NoYes 用戶 ID 自動編號 username varchar 20 NoNULL 用戶名稱 upass varchar 20 YesNULL 用戶密碼 user sex varchar 2 YesNULL 用戶性別 upower varchar 4 YesNULL 用戶權(quán)限 uimage varchar 50 YesNULL 用戶頭像 udate datetime YesNULL 用戶的創(chuàng)建時間 創(chuàng)建數(shù)據(jù)表后 創(chuàng)建相關(guān)數(shù)據(jù)表之間的關(guān)系 該關(guān)系實際反應(yīng)了系統(tǒng)中各 個實體間的關(guān)系 如當(dāng)設(shè)置了該關(guān)系后 改變 tb userinfo 數(shù)據(jù)表的 username 字段時 tb topic 數(shù)據(jù)表的 userid 字段也會更新或刪除 數(shù)據(jù)表之間的關(guān)系圖 如圖 3 5 所示 圖 3 4 數(shù)據(jù)關(guān)系 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計論文 8 第四章第四章 系統(tǒng)詳細(xì)設(shè)計與實現(xiàn)系統(tǒng)詳細(xì)設(shè)計與實現(xiàn) 4 1 前臺前臺設(shè)計設(shè)計 系統(tǒng)的前臺 即是直接面向用戶的所有頁面 因為前臺的功能模塊較多 而 各個模塊的實現(xiàn)過程都是類似的 所以對于系統(tǒng)前臺的介紹 只是做有選擇的系 統(tǒng)重點(diǎn)設(shè)計介紹 4 1 1 論壇頁頭論壇頁頭功能功能欄設(shè)計欄設(shè)計 本系統(tǒng)中所有頁面都采用了一種頁面框架 該頁面框架采用分欄結(jié)構(gòu) 分 為 2 個區(qū)域 頁頭功能欄 內(nèi)容顯示區(qū) 這里首先把頁頭功能欄的 check jsp 頁 面實現(xiàn) 然后向個頁面嵌套 顯示結(jié)果如圖 4 1 所示 圖 4 1 頁頭功能欄運(yùn)行結(jié)果 實現(xiàn) check jsp 頁頭功能欄顯示的代碼如下 你尚未登錄 登錄 注冊 歡迎你 退出 4 1 2 論壇論壇主主頁設(shè)計頁設(shè)計 該頁面的實現(xiàn)效果是 分類顯示手機(jī)論壇類別 并以超鏈接形式顯示屬于 該論壇類別中所有版塊名稱并顯示當(dāng)前版塊的版主和一些帖子的相關(guān)信息 如 圖 4 2 所示 系統(tǒng)詳細(xì)設(shè)計與實現(xiàn) 9 圖 4 2 論壇首頁顯示效果 實現(xiàn) index jsp 首頁顯示的主要代碼如下 tem bname 版主 cur uname 主貼數(shù) tem topicnum 論壇版塊顯示主要完成一下幾方面功能 創(chuàng)建讀取版塊信息業(yè)務(wù)類 該類 完成在數(shù)據(jù)庫中讀取版塊信息 將版塊信息封裝到數(shù)據(jù)集合中進(jìn)行返回 這就 要定義一個 JavaBean 用于封裝版塊信息 在項目 src 目錄下創(chuàng)建包 ser 用于 提取版塊信息的 Servlet 在 Servlet 中調(diào)用后臺業(yè)務(wù)類獲得數(shù)據(jù) 將數(shù)據(jù)保存 到 request 或 session 中后導(dǎo)航到顯示頁面 否則顯示 未登錄 頁面負(fù)責(zé)從 request 或 session 中獲得數(shù)據(jù) 并在頁面上顯示版塊信息 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計論文 10 public void doPost HttpServletRequest request HttpServletResponse response throws ServletException IOException String boardid1 request getParameter ybid 獲取boardid版塊號 GetPage mypage new GetPage 獲取分頁的數(shù)據(jù) DBConnect mydb new DBConnect mypage setDb mydb 設(shè)置數(shù)據(jù)庫的連接 mypage setPageSize 5 設(shè)置每頁顯示的主帖數(shù) mypage setP curpage 1 設(shè)置當(dāng)前的頁數(shù) String sql select from topic where boardid1 boardid1 and tstatus 1 mypage setSql sql 設(shè)置查詢的對象表名主帖表 mypage setKeyFielsName topicid 查詢得到結(jié)果集 ResultSet re mypage getPage 對結(jié)果集數(shù)據(jù)進(jìn)行包裝 ArrayList tdata new ArrayList try while re next Topic tem new Topic tem setTopicid topicid tem setTitle title tem setTcontent content tem setTdata createrdate tem setBoardid boardid1 ReplyDao rdao new ReplyDao tem setReplynum rdao getTopicNum topicid UserDao udao new UserDao tem setTopicuser udao getuserInfo userid tem setTstatus tstatus tdata add tem catch Exception e e printStackTrace finally try mydb free 釋放數(shù)據(jù)連接 catch Exception e e printStackTrace 判斷版主 HttpSession session request getSession User user User session getAttribute userinfo int flag 0 if user null MasterDao mdao new MasterDao flag mdao checkMaster user getUserid boardid1 系統(tǒng)詳細(xì)設(shè)計與實現(xiàn) 11 4 1 3 主主題題帖帖設(shè)計設(shè)計 顯示某版塊中所有的主題貼 對于帖子的顯示 將按照帖子被操作的時間 進(jìn)行降序排列 每條主題貼顯示其主題 作者 回復(fù)數(shù)和發(fā)帖信息 如圖 4 3 所示 圖 4 3 主題帖顯示效果 實現(xiàn) topiclist jsp 主題帖頁面顯示的主要代碼如下 主題 作者 回復(fù)數(shù) 發(fā)帖時間 tem title tem topicuser uname tem replynum tem tdata 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計論文 12 實現(xiàn)主題帖顯示 要定義 JavaBean 實體用于封裝數(shù)據(jù) 其次完成后臺業(yè)務(wù) 邏輯的設(shè)計 實現(xiàn)對數(shù)據(jù)庫表的訪問 最后定義用于接收版塊頁面請求的 Servlet 同時調(diào)用后臺業(yè)務(wù)完成數(shù)據(jù)提取 并將數(shù)據(jù)保存在隱視對象后導(dǎo)航到 toplist jsp public void doPost HttpServletRequest request HttpServletResponse response throws ServletException IOException String boardid request getParameter ybid GetPage mypage new GetPage DBConnect mydb new DBConnect mypage setDb mydb mypage setPageSize 15 mypage setP curpage 1 String sql select from topic where boardid boardid and tstatus 1 mypage setSql sql mypage setKeyFielsName topicid ResultSet re mypage getPage ArrayList tdata new ArrayList try while re next 1 String topicid re getString 1 String title re getString title String content re getString 3 String createrdate re getString 4 String userid re getString 5 String tstatus re getString 7 2 Topic tem new Topic tem setTopicid topicid tem setTitle title tem setTcontent content tem setTdata createrdate tem setBoardid boardid ReplyDao rdao new ReplyDao tem setReplynum rdao getTopicNum topicid UserDao udao new UserDao tem setTopicuser udao getuserInfo userid tem setTstatus tstatus 3 tdata add tem catch Exception e e printStackTrace finally 系統(tǒng)詳細(xì)設(shè)計與實現(xiàn) 13 try mydb free catch Exception e e printStackTrace 判斷版主 HttpSession session request getSession User user User session getAttribute userinfo int flag 0 if user null MasterDao mdao new MasterDao flag mdao checkMaster user getUserid boardid 4 1 4 主主題題帖與回復(fù)帖的帖與回復(fù)帖的查查看功能看功能設(shè)計設(shè)計 顯示主題貼的詳細(xì)信息 并顯示該主題貼的所有回復(fù)帖 另外對每條帖子 都顯示發(fā)表者的部分信息 如圖 4 4 所示 圖 4 4 主題帖與回復(fù)帖查看顯示效果 實現(xiàn) reply jsp 回復(fù)帖頁面顯示的主要代碼如下 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計論文 14 requestScope one topicuser uname requestScope one title 發(fā)表于 requestScope one tdata requestScope one tcontent tem replyuser uname 發(fā)表于 tem creatdate a count tem contentinfo 4 1 5 主主題題帖帖發(fā)發(fā)表功能表功能設(shè)計設(shè)計 發(fā)表帖子主要是為了互相討論話題而設(shè)置的功能 它是論壇系統(tǒng)中的主要 功能 通常情況下 需要在論壇中注冊一個用戶名 然后成功登錄 用戶才能 在論壇中發(fā)表帖子 發(fā)表帖子頁面的運(yùn)行結(jié)果如圖 4 5 所示 系統(tǒng)詳細(xì)設(shè)計與實現(xiàn) 15 圖 4 5 主題帖發(fā)表頁面顯示效果 實現(xiàn) fabiao jsp 主題帖發(fā)表頁面顯示的主要代碼如下 form name form1 method post action AddTopic ybid onSubmit return pass 標(biāo)題 內(nèi)容 在發(fā)帖時會進(jìn)行驗證 如果沒有登錄 則會彈出提示框 提示用戶沒有登 錄 請登錄后再進(jìn)行操作 如圖 4 6 所示 若 fabiao jsp 頁面檢查用戶已成功 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計論文 16 登錄 則等待用戶編輯新帖 通過 提交 按鈕將話題內(nèi)容保存到數(shù)據(jù)庫對應(yīng) 表中 圖 4 6 驗證信息提示 public void doPost HttpServletRequest request HttpServletResponse response throws ServletException IOException String boardid request getParameter ybid String title request getParameter title String contentinfo request getParameter info System out print boardid title contentinfo HttpSession session request getSession User a User session getAttribute tem Topic tem new Topic tem setBoardid boardid tem setTcontent contentinfo tem setTitle title tem setTopicuser a TopicDao tdao new TopicDao int n tdao AddTopic tem if n 0 response sendRedirect GetTopicSer yid boardid 4 1 6 用用戶戶登登錄錄功能功能設(shè)計設(shè)計 在發(fā)表帖子或?qū)μ舆M(jìn)行回復(fù)時 都需要登錄后才能進(jìn)行操作 如果已經(jīng) 是該論壇的用戶 則可直接登錄 然后進(jìn)行相關(guān)操作 登錄頁面的如圖 4 7 所 示 系統(tǒng)詳細(xì)設(shè)計與實現(xiàn) 17 圖 4 7 用戶登錄顯示效果圖 實現(xiàn) login jsp 登錄頁面顯示的主要代碼如下 在用戶登錄完成后 要將其個人信息保存在服務(wù)器端的 session 中 利用 session 能夠在服務(wù)器端將信息保存一定時間的特點(diǎn) 將通過校驗的用戶名與用 戶 ID 存入 Web 容器的 session 對象中 UserDao aa new UserDao 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計論文 18 User tem aa loginCheck name pass if tem null response sendRedirect login jsp mes 1 結(jié)果集為空 用戶名或密碼錯誤 導(dǎo)航到登錄頁面 提示報錯參數(shù) mes 1 else HttpSession session request getSession session setAttribute na name session setAttribute ui uimage session setAttribute tem tem response sendRedirect index jsp 結(jié)果集不為空 用戶名和密碼正確 導(dǎo)航到 index jsp 4 1 7 用用戶戶注冊功能注冊功能設(shè)計設(shè)計 在發(fā)表帖子或?qū)μ舆M(jìn)行回復(fù)時 如果用戶在該論壇已有帳號 則可直接 登錄操作 若沒有 用戶可先進(jìn)行注冊 然后登錄 注冊頁面如圖 4 8 所示 圖 4 8 用戶注冊顯示效果圖 實現(xiàn) register jsp 登錄頁面顯示的主要代碼如下 用戶名 系統(tǒng)詳細(xì)設(shè)計與實現(xiàn) 19 密碼 確認(rèn)密碼 性別 男 女 頭像1 頭像2 頭像3 頭像4 頭像5 在表單的提交事件 onSubmit return pass 中調(diào)用校驗函數(shù) 校驗函數(shù) 通過校驗后向服務(wù)器發(fā)出請求 請求地址為 action 中指定的頁面地址 連接數(shù) 據(jù)庫 將數(shù)據(jù)庫存入用戶表 根據(jù)數(shù)據(jù)操作結(jié)果 向客戶端發(fā)送 注冊成功 或 注冊失敗 的提示信息 public void doPost HttpServletRequest request HttpServletResponse response throws ServletException IOException request setCharacterEncoding gbk String name request getParameter username String password request getParameter upass String sex request getParameter sex String uimage request getParameter select System out print name password sex uimage 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計論文 20 User tem new User tem setUname name tem setUpass password tem setUsex sex tem setUimage uimage UserDao udao new UserDao int n udao addUser tem if n 0 System out print 注冊成功 request getRequestDispatcher login jsp forward request response else System out print 注冊失敗 request getRequestDispatcher register jsp forward request response 4 1 8 帖子回復(fù)功能帖子回復(fù)功能設(shè)計設(shè)計 在用戶登錄后 可以很方便地對每個自己感興趣的主題帖進(jìn)行回復(fù) 回復(fù) 頁面如圖 4 9 所示 圖 4 9 帖子回復(fù)顯示效果圖 系統(tǒng)詳細(xì)設(shè)計與實現(xiàn) 21 實現(xiàn) reply jsp 回復(fù)頁面顯示的主要代碼如下 4 1 9 退出功能退出功能設(shè)計設(shè)計 在登錄用戶想要離開該網(wǎng)站論壇時 以及為了系統(tǒng)的安全 在應(yīng)用系統(tǒng)的 設(shè)計中設(shè)計有 退出 操作 在點(diǎn)擊 退出 按鈕時 將首先執(zhí)行 onclick 動 作來關(guān)閉當(dāng)前窗口 之后調(diào)用 Servlet 中的 TuiChu java 來清除 session 中的 內(nèi)容 使用 session 隱式對象中的移除屬性 removeAttribute 方法清除指定 session 中的變量 如圖 4 10 所示 圖 4 10 退出顯示 public void doPost HttpServletRequest request HttpServletResponse response throws ServletException IOException HttpSession session request getSession session removeAttribute na response sendRedirect index jsp 4 2 后臺后臺設(shè)計設(shè)計 本論壇系統(tǒng)除了對根貼實現(xiàn)查看詳細(xì)內(nèi)容的功能外 還實現(xiàn)了 添加版塊 刪除版塊 和 刪除帖子 3 個功能 其中管理員可對根貼進(jìn)行所有操作 而 當(dāng)前根貼所屬版主只可進(jìn)行 刪除帖子 的操作 淮安信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計論文 22 因為 刪除版塊 與 刪除帖子 功能的實現(xiàn)比較相似 所以現(xiàn)在主要介 紹 刪除版塊 的實現(xiàn) 4 2 1 管理管理員員登登錄錄功能功能設(shè)計設(shè)計 后臺設(shè)計主要指管理員登錄頁面及登錄后的主題帖刪除和添加版塊功能 管理員登錄可以通過點(diǎn)擊 管理員登錄入口 鏈接實現(xiàn) 管理員登錄頁面和用 戶登錄頁面相似 如圖 4 11 所示 圖 4 11 管理員登錄界面 4 2 2 版版塊塊信息管理信息管理設(shè)計設(shè)計 以管理員的身份登錄所見的頁面與普通用戶所見的頁面不同 在管理員頁 面下 能夠?qū)崿F(xiàn)對帖子的添加和刪除操作 信息管理是每個管理員必備的功能之一 用戶以管理員身份登錄后 就進(jìn) 入信息管理界面 如圖 4 12 所示 系統(tǒng)詳細(xì)設(shè)計與實現(xiàn) 23 圖 4 12 版塊信息管理圖 4 2 3 添加和添加和刪刪除除版版塊塊功能功能設(shè)計設(shè)計 管理員登錄后的主題版塊具體內(nèi)容頁面與普通用戶和游客登錄后的頁面相 比 可以進(jìn)行 版塊添加 的按鍵操作 點(diǎn)擊鏈接添加所需要的內(nèi)容版塊 多 了按鍵 刪除 按鍵 代表刪除版塊或帖子 點(diǎn)擊鏈接即可對應(yīng)刪除 如圖 4 13 和圖 4 14 所示 以上的權(quán)限區(qū)分是通過 Session 來實現(xiàn)的 Session 一般來區(qū)分用戶的登錄 方式 通過在用戶 管理員登錄后設(shè)置一個 Session 值 來達(dá)到區(qū)分用戶登錄方 式 提升系統(tǒng)安全性的目的 用戶登錄后所作的 Session 操作 session setAttribute userLogined true 管理員登錄后所作的 Session 操作 session setAttribute adminLog

溫馨提示

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

最新文檔

評論

0/150

提交評論