日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

(原創+源碼+論文) 基于Java Web技術開發的BBS論

系統 2436 0

本文轉自: 程序員之家論壇 ?

?

前言:

?

當今,隨著網絡的迅速發展,制作BBS論壇的技術和方法也越來越多。本文主要講述利用Java Web的相關技術來制作一個簡單論壇。通過實際制作,實現了BBS論壇系統應有的一些基本功能,如:登陸功能,通過在登陸界面輸入用戶名和密碼來實現會員的登錄,用戶只有登錄成功了才能進行一系列的操作;注冊功能,用戶首次登陸,需要先注冊,注冊時需要用戶填寫個人信息;找回密碼功能,當用戶忘記密碼時可以通過此功能找回密碼,找回密碼時需要用戶記得注冊時填寫的個人信息。除此之外,還有瀏覽帖子、發表帖子、回復貼子以及刪除帖子等等功能。制作本論壇所用的前臺軟件是MyEclipse,后臺數據庫是MySQL,運行時所用的服務器是Tomcat,綜合運用了HTML、JSP以及JavaScript語言。

?

全文先對用到的軟件進行了簡單的介紹,然后依次對系統的應用進行需求分析、總體設計、詳細設計;最后簡要介紹了系統的發布和測試。

?

?

?

?

?

作為一個BBS論壇,它應該具有BBS所有的一些基本功能,包括:用戶登陸功能,用戶取回密碼功能,用戶瀏覽帖子的功能以及用戶發表、回復、修改和刪除帖子的功能等。接下來,我將詳細闡述一下這些功能。

?

(一)、 用戶登錄和注冊功能

?

進入登錄頁面后,對于第一次登陸的用戶來說,首先需要注冊,單擊“新用戶注冊”按鈕即可進入注冊界面,注冊完成后返回登錄界面。然后,在對應的地方分別輸入用戶名和密碼,點擊“登錄”按鈕,系統即將用戶名和密碼發送到網絡服務器上,與保存在服務器數據庫中的信息進行核對。若核對正確,則進入帖子瀏覽的界面,若不正確,則重新返回登錄界面。

?

注意:若用戶名(或者密碼)為空時,點擊了“登錄”按鈕,則系統會彈出一個對話框提示你用戶名(或密碼)為空,請重新輸入,點擊對話框的“確定”按鈕,即可重新回到登錄界面。

?

注冊界面如下所示:

(二)、用戶找回密碼功能

?

??? ? 在有些時候,我們可能會忘記登錄密碼,這時就用到了密碼找回功能,通過正確的回答當初注冊時的一些信息即可取回密碼。

(三)、用戶帖子的瀏覽
? 當用戶登錄成功后便進入該頁面,在該頁面可以瀏覽他人已經發表的主題帖子,
(四)、用戶帖子的發布/修改/刪除功能

用戶成功登陸后,可以進行一些操作,如發表帖子、刪除自己發表的帖子等。
?
?
(五)、用戶回復他人帖子

打開他人的帖子,點擊“我要回復”按鈕(如圖4-6所示)便可對該貼進行回復,如要想對其他回復此貼的人進行回復,可以點擊回復人后面的“回復XX樓”按鈕(如圖4-7)對其進行回復。
?
(六)、管理員對帖子的查看/發表/刪除功能

1、管理員查看或發表帖子

管理員查看或發表帖子與普通用戶的一樣。

1、 管理員刪除帖子

管理員刪除帖子與普通用戶的區別在于,他可以刪除任何人發表的貼子,另外他還有一項特權,就是可以刪除任何人回復的垃圾帖子。

部分代碼:
?

1、翻頁功能的實現

在這里可以實現翻頁功能,根據你的實際需求進行選擇。

功能的實現:首先確定每頁所能容納帖子的最大數目,在這里我設定MaxNum=10;然后連接數據庫查詢帖子的總數,從而判斷總的頁數,即lastPage,接著根據請求的頁碼pageNO判斷出該頁碼是否合法,若pageNO<1則改正為pageNO=1,若pageNO>lastPage,即所求的頁碼超出了最大頁數,則改正pageNO=lastPage,然后確定要顯示的第一個帖子的標識碼firstNum和最后一個帖子的標識碼lastNum,最后連接數據庫將標識碼在firstNum和lastNum之間的帖子的信息查詢出來。
以下只是部分代碼,詳細代碼附件中下載
程序為:
                    <% 
                                        int MaxNum = 10;//每頁容納的主題論文的最大數目 
                                        int count = 0, firstPage = 1, lastPage, firstNum, lastNum, prePage, nextPage, pageNO; 
                                        //firstPage表示首頁,lastPage表示末頁,pageNO表示第幾頁, 
                                        //firstNum表示該頁的起始貼的ID,lastNum表示該頁的末帖的ID, 
                                        //prePage表示前一頁,nextPage表示后一頁 
                                        sql = "select * from discuss"; 
                                        rs = stm.executeQuery(sql); 
                                        while (rs.next()) 
                                                     count++; 
                                        if (request.getParameter("pageNO") == null) 
                                                     pageNO = 0; 
                                        else 
                                                     pageNO = Integer.parseInt(request.getParameter("pageNO")); 
                                        lastPage = (int) Math.ceil((double) count / MaxNum); 
                                        if (pageNO == 0) 
                                                     pageNO = 1; 
                                        if (pageNO > lastPage) 
                                                     pageNO = lastPage; 
                                        firstNum = (pageNO - 1) * MaxNum + 1; 
                                        lastNum = pageNO * MaxNum; 
                                        if (pageNO == 1) 
                                                     prePage = 1; 
                                        else 
                                                     prePage = pageNO - 1; 
                                        if (pageNO == lastPage) 
                                                     nextPage = pageNO; 
                                        else 
                                                     nextPage = pageNO + 1; 
                                        sql = "select * from discuss where id between " + firstNum 
                                                                    + " and " + lastNum; 
                                        rs = stm.executeQuery(sql); 
                         %>
                  
?頁面的制作:
                    <form action=discuss.jsp method=post> 
                                        <table border=0> 
                                                     <tr> 
                                                                    <td> 
                                                                                 目前頁數: 
                                                                                 <font color=red><%=pageNO%></font> 
                                                                    </td> 
                                                                    <td> 
                                                                                 總頁數: 
                                                                                 <font color=red><%=lastPage%></font> 
                                                                    </td> 
                                                                    <td> 
                                                                                 <a href=discuss.jsp?pageNO= <%=firstPage%>>【第一頁】</a> 
                                                                    </td> 
                                                                    <td> 
                                                                                 <a href=discuss.jsp?pageNO= <%=prePage%>>【上一頁】</a> 
                                                                    </td> 
                                                                    <td> 
                                                                                 <a href=discuss.jsp?pageNO= <%=nextPage%>>【下一頁】</a> 
                                                                    </td> 
                                                                    <td> 
                                                                                 <a href=discuss.jsp?pageNO=<%=lastPage%>>【最后一頁】</a> 
                                                                    </td> 
                                                                    <td>
                  
?輸入頁次:
                    <input type=text size=3 name=pageNO value=1> 
                                                                    </td> 
                                                                    <td> 
                                                                                 <input type=submit name=send value="送出"> 
                                                                    </td> 
                                                     </tr> 
                                        </table> 
                         </form> 

                  
?
2、瀏覽帖子的實現

每幅帖子都有三部分組成:主題、作者和時間,通過上述分頁功能選出了需

要顯示出來的帖子,下面就是將它們顯示在頁面上的程序:
                      <% 
                                                     String name, email, subject, content, time; 
                                                     int reply, id; 
                                                     while (rs.next()) { 
                                                                    name = rs.getString(1); 
                                                                    email = rs.getString(2); 
                                                                    subject = rs.getString(3); 
                                                                    content = rs.getString(4); 
                                                                    time = rs.getString(5); 
                                                                    id = rs.getInt(7); 
                                                                    out.print("<tr bgcolor=yellow><td><a href=delete.jsp?id="+id+"&replyid=0><img src=Pictures/delete.bmp width=20 height=20></a></td><td width=300><a href=detail.jsp?id="+ id + ">" + subject + "</a></td>"); 
                                                                    out.print("<td width=200>" + name + "</td>"); 
                                                                    out.print("<td width=200>" + time + "</td></tr>"); 
                                                     } 
                                        %> 

                    
?

(原創+源碼+論文) 基于Java Web技術開發的BBS論壇系統


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 饶阳县| 新巴尔虎左旗| 佳木斯市| 元谋县| 北流市| 吉林市| 达尔| 敦煌市| 永善县| 曲阳县| 河北区| 六枝特区| 横峰县| 十堰市| 上饶县| 栾川县| 汤阴县| 嵊州市| 鄂尔多斯市| 鄯善县| 富蕴县| 德钦县| 易门县| 通山县| 泉州市| 古蔺县| 武城县| 无极县| 皮山县| 响水县| 承德县| 靖安县| 南乐县| 子长县| 兖州市| 东源县| 时尚| 汉源县| 酒泉市| 吴川市| 新田县|