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

正文內(nèi)容

課程設(shè)計(jì)——基于java的bbs設(shè)計(jì)與實(shí)現(xiàn)(編輯修改稿)

2024-12-16 09:26 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 第四章 詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 系統(tǒng)數(shù)據(jù)庫設(shè)計(jì) 數(shù)據(jù)庫表格設(shè)計(jì) 本系統(tǒng)采用 MySQL作為后臺(tái)數(shù)據(jù)庫,數(shù)據(jù)庫設(shè)計(jì)包括創(chuàng)建數(shù)據(jù)庫、建表、關(guān)系、儲(chǔ)存過程、觸發(fā)器等。根據(jù)對(duì)系統(tǒng)的詳 細(xì)分析,我設(shè)計(jì)出以下數(shù)據(jù)庫表。 如表 1數(shù)據(jù)庫表所示: 表 1 數(shù)據(jù)庫表 下面是主要表格設(shè)計(jì): 11 基于 JAVA的 BBS 設(shè)計(jì)與實(shí)現(xiàn) 12 數(shù)據(jù)庫結(jié)構(gòu)的實(shí)現(xiàn) 在得到數(shù)據(jù)庫的表格設(shè)計(jì)之后,就可以在 MySQL數(shù)據(jù)庫系統(tǒng)中實(shí)現(xiàn)該邏輯結(jié)構(gòu)。實(shí)現(xiàn)數(shù)據(jù)庫的邏輯結(jié)構(gòu)的方式是借助 Navicat for MySQL來管理實(shí)現(xiàn),詳細(xì)步驟如 下所述。 1.打開 Navicat for MySQL,選擇 “連接 ” 出現(xiàn) “新建連接 ” 界面,在 “連接名 ”標(biāo)簽中填入項(xiàng)目名,如 “l(fā)oclhost_3306”,其他選擇默認(rèn),見圖 7,之后可以看到如圖 8所示的界面。 圖 7 新建連接表圖 13 基于 JAVA的 BBS 設(shè)計(jì)與實(shí)現(xiàn) 圖 8 連接列表圖 2.選中 ““l(fā)oclhost_3306”,鼠標(biāo)右擊選擇 “新建數(shù)據(jù)庫 ”,在 “數(shù)據(jù)庫名 ”標(biāo)簽中填入數(shù)據(jù)庫名, “字符集 ”選擇 “utfUTF8 Unicode”,其他選擇默認(rèn),如圖 9。 圖 9 新建數(shù)據(jù)庫圖 3.雙擊展開 “bbsdb”數(shù)據(jù)庫,選中 “表 ”,鼠標(biāo)右擊選中 “新建表 ”,進(jìn)入填寫數(shù)據(jù)項(xiàng)信息的界面,選中下面的 “自動(dòng)遞增 ”(表示 id為自動(dòng)增加),填寫完信息后保存,提示填入表名(如 t_user)即可,如圖 10所示。 14 圖 10 新建表圖 4.這樣我們?cè)?MySQL數(shù)據(jù)庫系統(tǒng)中就創(chuàng)建了一個(gè) bbsdb數(shù)據(jù)庫,并在該數(shù)據(jù)庫下創(chuàng)建一個(gè) “t_user”數(shù)據(jù)表,在后期的操作中只要連接到該數(shù)據(jù)庫,就可以直接對(duì)數(shù)據(jù)庫中的 數(shù)據(jù)表進(jìn)行操作。 數(shù)據(jù)庫連接 系統(tǒng)采用 “三大框架 ”,數(shù)據(jù)庫采用 MySQL,其連接數(shù)據(jù)庫的關(guān)鍵代碼為: package 。 import 。 public class BaseDAO { private HibernateTemplate hibernateTemplate。 public HibernateTemplate getHibernateTemplate() { } 15 return hibernateTemplate。 基于 JAVA的 BBS 設(shè)計(jì)與實(shí)現(xiàn) } public void setHibernateTemplate(HibernateTemplate hibernateTemplate) { } = hibernateTemplate。 使用注入 Dao 的形式進(jìn)行數(shù)據(jù)庫操作,在 Dao 中對(duì)數(shù)據(jù)表進(jìn)行增加、刪除、查詢、修改 的操作。 前臺(tái)顯示模塊 前臺(tái)顯示模塊包括用戶的一些功能,具體的可分為用戶注冊(cè)、用戶登錄、用戶注銷、修改個(gè)人信息、查看版面、查看帖子、查看回復(fù)、發(fā)表帖子、和發(fā)表回復(fù)等功能 [11]。 由于帖子是在板塊下存在的,所以在板塊下的任何地方都可以發(fā)表帖子,而回復(fù)只能針對(duì)帖子進(jìn)行回復(fù),所以必須在帖子下才能發(fā)表回復(fù),也就是在帖子頁面下才能點(diǎn)擊發(fā)表回復(fù)。 現(xiàn)將部分功能說明如下: ( 1)用戶注冊(cè):新用戶在 頁面中輸入用戶名,昵稱,密碼,確認(rèn)密碼,選擇角色(管理員、普通用戶),點(diǎn)擊 “我同意 ”按鈕,然后點(diǎn)擊 “注冊(cè) ”按鈕,利用 struts 標(biāo)簽將數(shù)據(jù)提交到 UserAction中 regist()方法進(jìn)行處理,注冊(cè)成功后,跳轉(zhuǎn)到登陸界面 。關(guān)鍵性代碼如下: public String regist() { ( 2)用戶登錄:用戶在有賬號(hào)的前提下,可以在登錄頁面 中輸入用戶名和密碼點(diǎn)擊登錄,系統(tǒng)利用 struts 標(biāo)簽將用戶和密碼提交到 UserAction 的check()方法進(jìn)行處理,登錄成功后,進(jìn)入主界面。關(guān)鍵性代碼如下: public String check() { } (1)。 (newUser)。 return LOGIN。 User loginUser = 16 ((), ())。 } ( 3)用戶注銷:已登錄用戶在退出網(wǎng)站時(shí)注銷登錄狀態(tài),點(diǎn)擊主界面上的 “退出 ”按鈕,系統(tǒng)利用 struts 標(biāo)簽將用戶和密碼提交到 的 exist()方法進(jìn)行處理,將修改保存到數(shù)據(jù)庫中,注銷成功后,進(jìn)入登錄頁面。關(guān)鍵性代碼如下: public String exist() { } ( 4)查看版面:首頁顯示 BBS 的版塊及主要信息,點(diǎn)擊版塊名進(jìn)入版塊下,會(huì)進(jìn)入版塊頁面,點(diǎn)擊主題可以進(jìn)入主題頁面。用戶通過 UserAction中的 check()方法驗(yàn)證為普通用戶,然后進(jìn)入 CateAction 中調(diào)用 showCates()方法處理,獲得版塊信息,展示在 頁面下。當(dāng)點(diǎn)擊主題時(shí),進(jìn)入 PostAction 調(diào)用showPosts()方法,獲得對(duì)應(yīng)主題 的所有帖子,在 mainFrame 框架中 17 if(loginUser != null) { } return ERROR。 boolean f = (loginUser)。 if(f == false) { (loginUser, loginUser)。 boolean flag = (loginUser)。 if(flag) { //(src/)。 return admin。 } else { } return SUCCESS。 } else { } return forbidden。 (loginUser)。 return LOGIN。 基于 JAVA的 BBS 設(shè)計(jì)與實(shí)現(xiàn) 顯示 .關(guān)鍵性代碼如下 : public void preShowAll() { } public String showCates() { } public String showPosts() { postPage = (pageNo, cate)。 prePage = () 1。 nextPage = () + 1。 totalPage=(()+()1) /()。 } ( 5)查看帖子:當(dāng)用戶在主頁上點(diǎn)擊主題時(shí),會(huì)產(chǎn)生一個(gè)動(dòng)作,向服務(wù)器發(fā)送一個(gè)請(qǐng)求,服務(wù)器將程序交給 CommentAction中的 showComments()方法處理,獲得當(dāng)前點(diǎn)擊的帖子的所有信息,也包括它對(duì)應(yīng)的所有跟帖信息,然后通過 chain跳轉(zhuǎn)到 ReplyAction中調(diào)用 showReplies()方法獲得跟帖中所有的回復(fù)信息。最后將所有信息展示到 。關(guān)鍵性代碼如下: Category curCate = (())。 Category mainCate = (())。 (mainCate, mainCate)。 (curCate, curCate)。 listSize = ().size()。 return SUCCESS。 preShowAll()。 return SUCCESS。 ListCategory cateList = ()。 ListCategory mainCateList = ()。 (cateList, cateList)。 (mainCateList, mainCateList)。 18 public String showComments() { mPage = (pageNo, post)。listSize = ().size()。Post curPost = (())。 prePage = () 1。nextPage = () + 1。 totalPage = (() + ()1)/()。(curPostamp。quot。, curPost)。return forReplies。} public String showReplies() { } ( 6)修改個(gè)人信息:用戶點(diǎn)擊自己的昵稱,頁面跳轉(zhuǎn)到 ,從 session中取出當(dāng)前用戶的信息,展示到頁面上。點(diǎn)擊確認(rèn)后,頁面將修改之后的信息提交 UserAction中調(diào)用 update()方法,在數(shù)據(jù)庫中更新。部分實(shí)現(xiàn)代碼如下: public String update() { User user = (User) (loginUser)。 (())。(())。 (())。(())。 (())。(())。 (newUser)。(loginUser, newUser)。 boolean flag =
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1