基于JSP和MySQL的新聞發(fā)布及管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
時(shí)間:2023-09-03 03:30:02 | 來源:網(wǎng)站運(yùn)營
時(shí)間:2023-09-03 03:30:02 來源:網(wǎng)站運(yùn)營
基于JSP和MySQL的新聞發(fā)布及管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn):
摘 要
隨著電腦、智能手機(jī)等能夠連接網(wǎng)絡(luò)設(shè)備的家庭化和大眾化,各種網(wǎng)站開始被設(shè)計(jì)和開發(fā)出來,功能多種多樣,涉及的領(lǐng)域也各有不同,生活、商業(yè)、科技等等。而信息的發(fā)布是網(wǎng)絡(luò)的一大特點(diǎn),人們上網(wǎng)的主要需求就是汲取自己想要的信息或者感興趣的信息,因此新聞發(fā)布及管理系統(tǒng)也就此誕生。
從近幾年WEB網(wǎng)站如春筍般出現(xiàn)不難看出人們對外界信息了解很大程度上依賴于信息類發(fā)布網(wǎng)站,由于智能手機(jī)的普及會導(dǎo)致該需求在日益增長,人們都開始依賴于這些信息類發(fā)布網(wǎng)站,對信息的閱讀也不僅僅只限于幾個(gè)信息發(fā)布網(wǎng)站,而是越多越好,只要是能夠滿足他們對信息了解的需求的網(wǎng)站都能夠孕育而生,這些信息類發(fā)網(wǎng)站的出現(xiàn)影響了我們這一代人的生活習(xí)慣和信息獲取方式,也為人們茶前飯后的業(yè)余生活增添了色彩。
本文所描述的《新聞發(fā)布及管理系統(tǒng)》的設(shè)計(jì)和開發(fā)技術(shù),前端設(shè)計(jì)方面運(yùn)用了B/S技術(shù),只為了給用戶最完美的用戶操作體驗(yàn)。本應(yīng)用的后臺開發(fā)運(yùn)用的是java開發(fā)技術(shù),數(shù)據(jù)庫采用了MySQL數(shù)據(jù)庫進(jìn)行數(shù)據(jù)的存儲操作。
關(guān)鍵詞:WEB;新聞發(fā)布;JSP;系統(tǒng)
ABSTRACT
With the computer, intelligent mobile phone can connect to the network equipment family and popular, designed and developed a variety of websites, a variety of functions, and relates to the field of different life, business and technology, etc.. The release of information is a major feature of the network, the main needs of people is to get the information they want or interest in the information, so the news release and management system is born.
In recent years, the WEB website recently sprung up is not difficult to see people on the outside information largely depends on the information release site, due to the popularity of smart mobile phone will lead to the demand in the growing, people began to rely on the information release site, the information reading is not limited to a few information website but, the more the better, as long as they can meet the demand of information about a website can be born, these information hair sites affect the people of our generation living habits and methods of obtaining information, but also adds color to people after the meal before tea amateur life.
This paper describes the news release and management system, the design and development of technology, front-end design using B/S technology, just to give the user the most perfect user experience. The background of the development of the application is the development of Java technology, the database uses the MySQL database for data storage operations.
Keywords: WEB; press releases; JSP;system
第一章 緒論
隨著電腦、智能手機(jī)等能夠連接網(wǎng)絡(luò)設(shè)備的家庭化和大眾化,各種網(wǎng)站開始被設(shè)計(jì)和開發(fā)出來,功能多種多樣,涉及的領(lǐng)域也各有不同,生活、商業(yè)、科技等等。而信息的發(fā)布是網(wǎng)絡(luò)的一大特點(diǎn),人們上網(wǎng)的主要需求就是汲取自己想要的信息或者感興趣的信息,因此新聞發(fā)布及管理系統(tǒng)也就此誕生。
從近幾年信息發(fā)布網(wǎng)站如春筍般出現(xiàn)不難看出人們對外界信息了解很大程度上依賴于信息類發(fā)布網(wǎng)站,由于智能手機(jī)的普及會導(dǎo)致該需求在日益增長,人們都開始依賴于這些信息類發(fā)布網(wǎng)站,對信息的閱讀也不僅僅只限于幾個(gè)信息發(fā)布網(wǎng)站,而是越多越好,只要是能夠滿足他們對信息了解的需求的網(wǎng)站都能夠孕育而生,這些信息類發(fā)網(wǎng)站的出現(xiàn)影響了我們這一代人的生活習(xí)慣和信息獲取方式,也為人們茶前飯后的業(yè)余生活增添了色彩。
如今計(jì)算機(jī)已經(jīng)被廣泛應(yīng)用于人工智能,信息獲取,信息發(fā)布的各個(gè)方面,計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)也得到飛速的發(fā)展。我們上網(wǎng)不單單只是為了看電視和收發(fā)電子郵件,日常生活中的娛樂活動,人們都可以通過網(wǎng)絡(luò)來完成。而對于新聞發(fā)布來講,通過網(wǎng)絡(luò)可以更快捷的發(fā)布國際國內(nèi)新聞信息。隨著互聯(lián)網(wǎng)技術(shù)的重要提升,為媒體和信息商家行業(yè)提供了更好的信息傳播,信息發(fā)布行業(yè)采用最前端技術(shù)使信息的制作質(zhì)量得到了飛速提高。新聞發(fā)布系統(tǒng),它的內(nèi)容對于如今社會各層次的人們來說都至關(guān)重要,所以新聞發(fā)布系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┱鎸?shí)實(shí)用的信息和便捷的查詢手段,及快捷的發(fā)布方式,讓媒體更快發(fā)布給讀者等等。隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,它強(qiáng)大的功能已為人們深刻認(rèn)識,它已進(jìn)入人類社會的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對新聞信息進(jìn)行管理,有著手工管理所無法比擬的優(yōu)點(diǎn).檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大地提高人事勞資管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。
新聞推薦系統(tǒng),在充分了解新聞業(yè)務(wù)流程的基礎(chǔ)上,采用一系列最新的信息處理技術(shù),對新聞進(jìn)行科學(xué)化管理,實(shí)現(xiàn)了新聞信息的最廣泛共享,使新聞可以通過計(jì)算機(jī)網(wǎng)絡(luò)完成發(fā)布。而用戶則隨時(shí)隨地都可以通過計(jì)算機(jī)瀏覽該網(wǎng)站。
新聞發(fā)布系統(tǒng)別稱消息管理和信息編輯管理系統(tǒng),它能夠?qū)⒕W(wǎng)站上的好多消息,消息管理者等主要知識實(shí)現(xiàn)集中的操作,以信息的內(nèi)容類別進(jìn)行分類,然后整體化,標(biāo)準(zhǔn)化,規(guī)范化整到網(wǎng)上再放到網(wǎng)站上供人們查閱的的一類網(wǎng)絡(luò)信息的管理程序,它可以使用網(wǎng)絡(luò)互聯(lián)網(wǎng)為開發(fā)組件組件消息發(fā)布系統(tǒng),頁面內(nèi)的消息透過這個(gè)簡單的插入項(xiàng)加入數(shù)據(jù),最后把設(shè)計(jì)制作的網(wǎng)頁的例子插入進(jìn)去這樣就可以發(fā)布到網(wǎng)站供瀏覽者觀看。利用互聯(lián)網(wǎng)數(shù)據(jù)庫,把網(wǎng)站的管理方法簡化到至用錄入文字就可以完成,進(jìn)而使站點(diǎn)可以更快速調(diào)用實(shí)時(shí)信息,通過新聞發(fā)布系統(tǒng)可以有效減少站點(diǎn)管理維護(hù)的工作量,對消息的發(fā)展速率有了非??捎^提高。
科學(xué)技術(shù)日新月異發(fā)展的今天,生活節(jié)奏加快導(dǎo)致的人民需求也提高。人們渴望獲得更加及時(shí)性,簡單明確的新聞消息。傳統(tǒng)的以報(bào)紙期刊,雜志已經(jīng)不能滿足人們期待獲得第一手消息的愿望。因此,以互聯(lián)網(wǎng)為傳媒單位的新聞發(fā)布管理系統(tǒng)開始逐步替代原有的落后的消息,而成為當(dāng)代新的潮流方式。新聞采編發(fā)布系統(tǒng)以最迅速便捷的方式,使得人們不需要出門而獲得分享世界各地的資源,進(jìn)行交流。而新聞網(wǎng)站的時(shí)效性,讓所有的評論和閱讀可以實(shí)時(shí)更新。新聞采編發(fā)布系統(tǒng),是通過管理網(wǎng)上發(fā)布的新聞和評論,將變動的信息進(jìn)行有效的管理,網(wǎng)絡(luò)用戶因此可以獲得新聞的多媒體顯示。 論文介紹了新聞發(fā)布管理系統(tǒng)的研究背景、項(xiàng)目意義和目前的研究與應(yīng)用現(xiàn)狀,明確了論文研究的內(nèi)容和主要工作;進(jìn)行業(yè)務(wù)分析的過程后,系統(tǒng)存在的問題、整體結(jié)構(gòu)、原來的業(yè)務(wù)流程等都做了進(jìn)一步的研究,由此得到了改造后的業(yè)務(wù)流程;模塊的功能分析,用例分析和用例描述,并確定了系統(tǒng)的功能,該系統(tǒng)圖和包圖和子功能的整體功能,包括新聞發(fā)布和其他包圖;最后的數(shù)據(jù)分析環(huán)節(jié)中,整個(gè)系統(tǒng)每個(gè)功能模塊所需要處理的數(shù)據(jù)都有被分析討論,根據(jù)這些數(shù)據(jù)之間的關(guān)系,實(shí)體類關(guān)系圖和數(shù)據(jù)庫表結(jié)構(gòu)建立起來;文章最后的部分是新聞發(fā)布管理系統(tǒng)研究與分析工作進(jìn)行了總結(jié),提出了分析中存在的問題,對將來的深入工作投入更多的努力和細(xì)致的研究,做出了新的展望。
第二章 相關(guān)技術(shù)介紹
2.1 JAVA簡介
Java是一門面向?qū)ο缶幊陶Z言,不同與C++的面向過程編程語言,但是java中繼承了許多C++中的許多優(yōu)點(diǎn),同時(shí)少了 C++里的多繼承、指針,因此Java語言具有面向?qū)ο蠛蛦卫^承的特征。Java中面向?qū)ο缶幊陶Z言是編程語言的代表,體現(xiàn)了面向?qū)ο罄碚摽梢允褂胘ava的面向?qū)ο蠛涂缙脚_性多線程隊(duì)程序進(jìn)行編寫和實(shí)現(xiàn)使程序的可拓展性更強(qiáng)
2.2 JSP技術(shù)簡介
JSP全名為Java Server Pages,中文名叫java服務(wù)器頁面,其根本是一個(gè)簡化的Servlet設(shè)計(jì),它是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的網(wǎng)頁HTML(標(biāo)準(zhǔn)通用標(biāo)記語言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP標(biāo)記(tag),從而形成JSP文件,后綴名為(*.jsp)。 用JSP開發(fā)的Web應(yīng)用是跨平臺的,既能在Linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行。
它實(shí)現(xiàn)了Html語法中的java擴(kuò)展(以 <%, %>形式)。JSP與Servlet一樣,是在服務(wù)器端執(zhí)行的。通常返回給客戶端的就是一個(gè)HTML文本,因此客戶端只要有瀏覽器就能瀏覽。
JSP技術(shù)使用Java編程語言編寫類XML的tags和scriptlets,來封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過tags和scriptlets訪問存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計(jì)的顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開發(fā)變得迅速和容易。 JSP(JavaServerPages)是一種動態(tài)頁面技術(shù),它的主要目的是將表示邏輯從Servlet中分離出來。Java Servlet是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序的開發(fā)需要Java Servlet和JSP配合才能完成。JSP具備了Java技術(shù)的簡單易用,完全的面向?qū)ο?,具有平臺無關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)。
2.3 MySQL數(shù)據(jù)庫簡介
管理語言--結(jié)構(gòu)化查詢語言(SQL)進(jìn)行數(shù)據(jù)庫管理。由于MySQL是開放源代碼的,因此任何人都可以在General Public License的許可下下載并根據(jù)個(gè)性化的需要對其進(jìn)行修改。MySQL因?yàn)槠渌俣?、可靠性和適應(yīng)性而備受關(guān)注。大多數(shù)人都認(rèn)為在不需要事務(wù)化處理的情況下,MySQL是管理內(nèi)容最好的選擇。MySQL這個(gè)名字,起源不是很明確。一個(gè)比較有影響的說法是,基本指南和大量的庫和工具帶有前綴“my”已經(jīng)有10年以上,而且不管怎樣,MySQL AB創(chuàng)始人之一的Monty Widenius的女兒也叫My。這兩個(gè)到底是哪一個(gè)給出了MySQL這個(gè)名字至今依然是個(gè)迷,包括開發(fā)者在內(nèi)也不知道。MySQL的海豚標(biāo)志的名字叫“sakila”,它是由MySQL AB的創(chuàng)始人從用戶在“海豚命名”的競賽中建議的大量的名字表中選出的。獲勝的名字是由來自非洲斯威士蘭的開源軟件開發(fā)者Ambrose Twebaze提供。根據(jù)Ambrose所說,Sakila來自一種叫SiSwati的斯威士蘭方言,也是在Ambrose的家鄉(xiāng)烏干達(dá)附近的坦桑尼亞的Arusha的一個(gè)小鎮(zhèn)的名字。MySQL,雖然功能未必很強(qiáng)大,但因?yàn)樗拈_源、廣泛傳播,導(dǎo)致很多人都了解到這個(gè)數(shù)據(jù)庫。它的歷史也富有傳奇性。
第三章 系統(tǒng)設(shè)計(jì)
3.1 功能需求
本系統(tǒng)的目的是實(shí)現(xiàn)新聞發(fā)布系統(tǒng)的基本功能。新聞發(fā)布系統(tǒng)提供了不同類型新聞(如社會新聞、娛樂新聞和技術(shù)前沿新聞等) 滿足不同用戶需求;系統(tǒng)將用戶分為:普通用戶,系統(tǒng)管理員和新聞管理員。 普通用戶能在本系統(tǒng)中進(jìn)行新聞瀏覽,閱讀,新聞搜索。每條新聞的標(biāo)題被做成一個(gè)鏈接,用戶點(diǎn)擊它們就能跳轉(zhuǎn)頁面進(jìn)行新聞閱讀;新聞閱讀頁面,每條新聞的詳細(xì)信息將被取出,包括內(nèi)容、標(biāo)題等;用戶能根據(jù)自己的需要搜索新聞,如可以通過新聞標(biāo)題或新聞內(nèi)容對新聞進(jìn)行搜索,這樣可以快速地找到符合條件的新聞,并輸出搜索結(jié)果;用戶能對新聞進(jìn)行被評論(允許匿名評論)。 系統(tǒng)管理員可以進(jìn)行新聞分類管理、添加新聞、修改新聞、新聞審核和刪除新聞,同時(shí)系統(tǒng)管理員能完成用戶管理如包括系統(tǒng)用戶管理、添加用戶和更改賬號。 新聞管理員擁有添加新聞和更改賬號的權(quán)限。根據(jù)用戶不同,給予不同權(quán)限,這樣加強(qiáng)系統(tǒng)的管理,同時(shí)加強(qiáng)系統(tǒng)的安全性。
普通用戶的用例圖如圖3-1,普通用戶可以瀏覽新聞、用戶登入、新聞評論的功能;
員用戶用例圖3-2管理員擁有用戶登入,評論管理,新聞欄目管理,新聞管理這些權(quán)限。
3.2 性能需求
根據(jù)新聞系統(tǒng)的需求進(jìn)行開發(fā)設(shè)計(jì),主要實(shí)現(xiàn)如下目標(biāo):界面設(shè)計(jì)友好、美觀、數(shù)據(jù)要準(zhǔn)確、安全、可靠。 強(qiáng)大查詢功能,方便用戶瀏覽網(wǎng)站的所有信息。 設(shè)計(jì)會員登陸功能,保證新聞留言的安全性。實(shí)現(xiàn)對信息、比賽項(xiàng)目等信息的添加、修改、刪除,便于更新網(wǎng)站內(nèi)容。 系統(tǒng)最大限度地實(shí)現(xiàn)易維護(hù)性和易操作性。 操作的簡易實(shí)用性本系統(tǒng)是社會新聞發(fā)布系統(tǒng),針對的用戶大多數(shù)是社會人員。因此操作的簡易實(shí)用性就體現(xiàn)的尤其重要。在此系統(tǒng)的開發(fā)中就很好的體現(xiàn)了這一點(diǎn),系統(tǒng)的界面美觀,典雅,充滿了人性化;用戶操作起來也容易上手。對于一個(gè)社會新聞發(fā)布系統(tǒng)而言新聞信息是很多的,而且使用人數(shù)較多,所以對系統(tǒng)的安全性有比較高的要求:對于數(shù)據(jù)庫,要設(shè)置不同用戶的權(quán)限,數(shù)據(jù)的修改必須由合法用戶操作。
3.3 可靠性和用戶界面需求
為更好地加強(qiáng)新聞網(wǎng)絡(luò)系統(tǒng)、新聞網(wǎng)站、個(gè)人主頁的管理,認(rèn)真落實(shí)網(wǎng)絡(luò)和信息安全保障制度,防范和處理社會網(wǎng)絡(luò)管理重大突發(fā)事件和敏感事件,確保網(wǎng)絡(luò)提供穩(wěn)定、安全的信息服務(wù)。
法律可行性研究本系統(tǒng)的設(shè)計(jì)和開發(fā)不會在社會和個(gè)人上構(gòu)成侵權(quán)或其它一些責(zé)任糾紛。因?yàn)樵撓到y(tǒng)是作為畢業(yè)設(shè)計(jì)來研究的,它與商業(yè)無關(guān),而且是自我進(jìn)行的設(shè)計(jì)開發(fā),因此不會造成信息泄露,系統(tǒng)中的一些數(shù)據(jù)都是自己模擬出來的不會對社會對個(gè)人造成不必要的侵權(quán),因此在法律上是可行的。
網(wǎng)站界面是用戶直接訪問的頁面,要讓用戶一訪問就能看出來這個(gè)網(wǎng)站的主題思想是什么,一下就能體現(xiàn)出這個(gè)網(wǎng)站的中心內(nèi)容。并且首頁的模塊之間要聯(lián)系緊密,更好的讓用戶理解明白。在這個(gè)頁面上我們要做到所有查看消息的功能都能實(shí)現(xiàn),或者說有能實(shí)現(xiàn)查詢信息功能的連接。
3.4 系統(tǒng)E-R模型
為了確保正確的數(shù)據(jù)在系統(tǒng)中能夠客觀真實(shí)地反映世界,其中的一些完整性規(guī)則通過一些控制的標(biāo)準(zhǔn)作業(yè)應(yīng)用程序來實(shí)現(xiàn)。數(shù)據(jù)庫要具有安全性,這數(shù)據(jù)庫系統(tǒng)重要的一個(gè)方面,它是指保護(hù)數(shù)據(jù)庫以防止非法使用,包括破壞和未授權(quán)訪問等行為。
但是由于本次設(shè)計(jì)開發(fā)的系統(tǒng)涉及到的數(shù)據(jù)都不具備保密性的數(shù)據(jù),因此不需要采取特別復(fù)雜的安全措施,只須防止數(shù)據(jù)被人隨意改動即可。根據(jù)系統(tǒng)要求,可以列出以下數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu),下面用E-R圖2-4來表示實(shí)體模型。
3.5 系統(tǒng)流程分析
為了使用戶進(jìn)一步了解本系統(tǒng)設(shè)計(jì),這節(jié)將對系統(tǒng)進(jìn)行流程過程的分析。用戶進(jìn)行身份判斷分為兩個(gè)階段:
- 判斷該用戶是否是本系統(tǒng)的注冊用戶
- 判斷注冊用戶屬于管理員還是普通用戶
第一階段是將準(zhǔn)備登錄的用戶名和密碼與系統(tǒng)連接的數(shù)據(jù)庫中的用戶信息表中的數(shù)據(jù)進(jìn)行匹配,如果能夠在數(shù)據(jù)庫中找到對應(yīng)的用戶則登錄成功。第二個(gè)階段是根據(jù)該有效用戶的用戶名查找出該用戶對象,根據(jù)用戶對象中的style屬性值決定其工作界面。
該系統(tǒng)一分為二的分成了前臺系統(tǒng)和后臺系統(tǒng),后臺系統(tǒng)具有對身份判斷的上面兩個(gè)階段,前臺對身份的判斷只有上面的第一階段
圖3-6展示了后臺系統(tǒng)的登錄流程。超級管理員能夠?qū)λ衅胀ㄓ脩舻男畔⒑推胀ü芾韱T的信息進(jìn)行管理以及對所有新聞信息進(jìn)行管理,而普通管理員少了一個(gè)對普通用戶信息管理的權(quán)限。
第四章 系統(tǒng)功能實(shí)現(xiàn)
4.1 系統(tǒng)架構(gòu)
本次設(shè)計(jì)開發(fā)的系統(tǒng)是B / S模式系統(tǒng)。后臺數(shù)據(jù)處理層,中間業(yè)務(wù)邏輯層,用戶界面層組成三層結(jié)構(gòu)的體系。后臺使用數(shù)據(jù)庫,中間層使用數(shù)據(jù)的分析和處理程序,前臺使用WEB連接的三種層次結(jié)構(gòu)的發(fā)展模式。使用和MySQL數(shù)據(jù)庫和JSP技術(shù)平臺開發(fā)。
前端軟件使用Web技術(shù)開發(fā),通過在服務(wù)器端下載的方式使客戶端運(yùn)行,這樣可以在最大程度上提高整個(gè)系統(tǒng)的安全性能;客戶界面采用瀏覽器,操作起來非常簡單,大量的培訓(xùn)費(fèi)用和時(shí)間又可以節(jié)省。在具體實(shí)施的時(shí)候,我們可以充分的利用JSP技術(shù),WEB開發(fā)出來大大提高了應(yīng)用的擴(kuò)展性、功能性及可靠性,最終的結(jié)果就不是簡單的HTML頁面了,而是可在它之上構(gòu)筑一種應(yīng)用完整的平臺。系統(tǒng)主要是針對新聞發(fā)布工作的管理。根據(jù)分析系統(tǒng)確定的功能以及目標(biāo),采用逐步求精、自頂?shù)降椎脑O(shè)計(jì)結(jié)構(gòu)化方法,系統(tǒng)進(jìn)行了結(jié)構(gòu)設(shè)計(jì)。系統(tǒng)開發(fā)設(shè)計(jì)分析圖如圖4-1所示
4.2 系統(tǒng)設(shè)計(jì)
系統(tǒng)不僅要求功能完善,而且還要界面友好,因此,對于一個(gè)成功的系統(tǒng)設(shè)計(jì),功能模塊的設(shè)計(jì)是關(guān)鍵。由于本系統(tǒng)可執(zhí)行的是一般性質(zhì)的教學(xué)管理工作,本系統(tǒng)具有一般適用性,其所實(shí)現(xiàn)的功能滿足學(xué)校對日常課程網(wǎng)站工作的管理,方便老師和學(xué)生的溝通。系統(tǒng)設(shè)計(jì)的圖像的數(shù)據(jù)流分析階段的需要結(jié)構(gòu)化設(shè)計(jì)的概要說明的基礎(chǔ)上,根據(jù)映射到軟件體系結(jié)構(gòu)的某些程序。首先,整個(gè)系統(tǒng)分成幾個(gè)小的模塊,小的問題,然后,進(jìn)一步細(xì)分模塊,添加細(xì)節(jié)。
據(jù)新聞發(fā)布系統(tǒng)的需求分析,確定此系統(tǒng)分為前臺新聞顯示和后臺管理兩類。前臺新聞顯示模塊分為新聞瀏覽、新聞搜索、留言板等幾個(gè)模塊,管理員通過輸入的用戶名和密碼登陸后臺管理區(qū),可以對后臺進(jìn)行管理頁面、新聞?lì)悇e管理、新聞管理、公告管理和系統(tǒng)設(shè)置等幾個(gè)模塊的操作[11]。如圖3-2所示。
在本系統(tǒng)中,根據(jù)對系統(tǒng)需求的分析,可以總結(jié)出如下的需求集:
- 系統(tǒng)應(yīng)有前臺和后臺
- 系統(tǒng)前臺應(yīng)該可以顯示新聞欄目和新聞以及用于管理員登錄系統(tǒng)后臺的登錄界面
- 一般用戶應(yīng)該可以在前臺自由瀏覽新聞,包括選擇性地瀏覽新聞即先選擇新聞欄目再瀏覽新聞欄目下的新聞條目
- 注冊用戶可以發(fā)表相關(guān)新聞的評論,系統(tǒng)管理員應(yīng)該可以登錄到系統(tǒng)后臺
- 系統(tǒng)管理員應(yīng)該可以對新聞欄目和新聞進(jìn)行查看、修改、刪除和添加操作,也可以對注冊用戶管理,同時(shí)還可以對相關(guān)新聞的評論進(jìn)行管理
由以上需求集分析可知:
- “新聞欄目”和“新聞”為系統(tǒng)的兩個(gè)主要內(nèi)容,所以應(yīng)該分別作為一個(gè)類,而新聞欄目和新聞的顯示需要管理類進(jìn)行管理,系統(tǒng)管理員要對欄目和新聞進(jìn)行查看、添加、修改和刪除,也需要相應(yīng)的管理類進(jìn)行管理,所以,系統(tǒng)對于新聞欄目和新聞分別需要“欄目管理類”和 “新聞管理類”
- 系統(tǒng)中應(yīng)該要有超級管理員、管理員、注冊用戶等角色,超級管理員是最高權(quán)限的,管理員是超級管理員發(fā)放的,注冊用戶是前臺注冊產(chǎn)生的
- 系統(tǒng)要保存信息,必須用到數(shù)據(jù)庫,所以需要一個(gè)數(shù)據(jù)庫連接的類
- 要將系統(tǒng)的各個(gè)功能執(zhí)行成功,少不了相應(yīng)的控制類。 因此,識別出系統(tǒng)主要的類:新聞管理類,欄目管理類,用戶管理類,評論管理類數(shù)據(jù)庫連接的連接對象類以及各個(gè)類
4.3 系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
該新聞系統(tǒng)的數(shù)據(jù)庫包含三個(gè)表:新聞的基本信息表:fz_news、用戶的留言表:Discuss和用戶的信息表:users。
下面分別介紹這些表的結(jié)構(gòu)。
4.3.1 新聞的基本信息表fz_news
基本新聞表fz_news用來保存網(wǎng)上新聞的基本信息,結(jié)構(gòu)如表4-1所示。
編號 | 字段名稱 | 數(shù)據(jù)結(jié)構(gòu) | 說明 |
---|
在MySQL中,可以使用int、varchar和text等3種數(shù)據(jù)類型存儲字符數(shù)據(jù)。表fz_news中的content字符是用來存儲新聞的內(nèi)容,由于一般新聞的正文內(nèi)容都比較長選用text數(shù)據(jù)類型,在MySQL中 text數(shù)據(jù)類型也是可變長度的能儲存大量數(shù)據(jù)。
4.3.2 用戶的評論表pl
用戶的評論表pl的作用,就是用來存儲用戶對新聞的評論,該表的結(jié)構(gòu)如表4-2所示。
編號 | 字段名稱 | 數(shù)據(jù)結(jié)構(gòu) | 說明 |
---|
4.3.3 用戶信息表admin
用戶信息表admin用來保存用戶的基本信息,結(jié)構(gòu)如表4-3所示。
編號 | 字段名稱 | 數(shù)據(jù)結(jié)構(gòu) | 說明 |
---|
第五章 系統(tǒng)功能實(shí)現(xiàn)
5.1 前臺新聞發(fā)布系統(tǒng)界面
在地址欄輸入:
http://localhost:8080/xwtj 游客可以進(jìn)入前臺新聞界面進(jìn)行瀏覽新聞發(fā)布系統(tǒng)的如圖5-1所示。
第五章 系統(tǒng)功能實(shí)現(xiàn)
5.1 前臺新聞發(fā)布系統(tǒng)界面
在地址欄輸入:
http://localhost:8080/xwtj 游客可以進(jìn)入前臺新聞界面進(jìn)行瀏覽新聞發(fā)布系統(tǒng)的如圖5-1所示。
用戶注冊界面是通過MemberBean.java類中的personReg方法同過servlet類來完成向數(shù)據(jù)庫中表member中存儲數(shù)據(jù),其注冊代碼:
public int personReg(String username,String password,String type,String realname,String sex,String bir,String sheng,String city,String telphone,String email,String question,String answer,String lastip,int off,String address){ password=MD5.MD5(password); String sql = "insert into member(username,password,type,regtime,ifuse,logintimes,lasttime,lastip)" +"values('"+username+"','"+password+"','"+type+"','"+date+"','"+off+"','0','"+date+"','"+lastip+"') "; DBO dbo = new DBO(); dbo.open(); try{ int i = dbo.executeUpdate(sql); if(i == 1){ rs = dbo.executeQuery("select id from member where username='"+username+"'"); rs.next();int mid = rs.getInt(1); String sql2 = "insert into pmember(mid,realname,sex,bir,sheng,city,telphone,email,question,answer,address)"+"values('"+mid+"','"+realname+"','"+sex+"','"+bir+"','"+sheng+"','"+city+"','"+telphone+"','"+email+"','"+question+"','"+answer+"','"+address+"')"; int j = dbo.executeUpdate(sql2); if(j == 1) return Constant.SUCCESS;elsereturnConstant.SYSTEM_ERROR; } else{ returnConstant.SYSTEM_ERROR; } }catch(Exception e){ return Constant.SYSTEM_ERROR; }finally{ dbo.close(); } }
5.1.2 用戶登入界面
在用戶登入后就能擁有一些基本的權(quán)限,評論權(quán)限并且用戶可以閱讀后進(jìn)行相應(yīng)的評論的發(fā)表用戶登入界面如圖5-3所示:
用戶登入界面也是通過MemberBean.java類查詢表member中是否存在該用戶其核心代碼如下所示:
public int memberLogin(String username,String password,String type){ password=MD5.MD5(password); String sql = "select password from member where username='"+username+"' and type='"+type+"' and ifuse='1' "; DBO dbo = new DBO(); dbo.open(); try{ rs = dbo.executeQuery(sql); if(rs.next()){//如果有該用戶名 String str = rs.getString("password"); if(str.trim().equals(password)){ //dbo.executeUpdate(sql2); return Constant.SUCCESS; } else{ return Constant.PASSWORD_ERROR; } } else{//如果沒有 return Constant.NAME_ERROR; } }catch(Exception e){ return Constant.SYSTEM_ERROR; }finally{ dbo.close(); } }
5.1.3 用戶瀏覽新聞界面
用戶登入后可以進(jìn)行新聞的瀏覽,點(diǎn)擊相應(yīng)的欄目就可以閱讀相應(yīng)的新聞內(nèi)容方便快速查找我們想看的新聞,如圖5-4所示:
5.2 后臺新聞界面系統(tǒng)
在地址欄輸入:
http://localhost:8080/xwtj/admin/login.jsp 可以進(jìn)入后臺管理員登入界面如圖5-2所示:
后臺管理界面是通過匹配表fz_admin表中的數(shù)據(jù)來完成登入其核心代碼如下:
public int adminLogin(String username,String md5password,String password,String loginip,String useros){ String sql = "select * from fz_admin where username = '"+username+"' and isuse='1'"; String sql4 = "update fz_admin set logintimes = logintimes+1 where username = '"+username+"' "; DBO dbo = new DBO(); String pwd; dbo.open(); try{ rs = dbo.executeQuery(sql); if(rs.next()){ pwd = rs.getString("password"); if(pwd.trim().equals(md5password)){ dbo.executeUpdate(sql4); return Constant.SUCCESS; } else{ return Constant.PASSWORD_ERROR; } } else{ return Constant.NAME_ERROR; } }catch(Exception e){ e.printStackTrace(); return Constant.SYSTEM_ERROR; }finally{ dbo.close(); } }
5.2.1 后臺管理界面
在管理員登入后可以進(jìn)入后臺管理界面,后臺管理界面主要功能有系統(tǒng)賬號管理,公告管理,新聞欄目管理,新聞資訊管理,注冊用戶管理,友情鏈接管理功能如圖5-5所示:
5.2.2 新聞欄目管理界面
在新聞欄目管理中可以對前臺新聞欄目進(jìn)行添加和刪除操作,這用可以對新聞欄目進(jìn)行完善的管理,新聞欄目刪除界面如圖5-6所示:
新聞欄目刪除的核心代碼如下:
if(method.equals("delFenlei")){//刪分類 String id=request.getParameter("id"); int flag = newsBean.delFenlei(id); if(flag == Constant.SUCCESS){ request.setAttribute("message", "操作成功!"); request.getRequestDispatcher(sysdir+"/fenlei/index.jsp").forward(request, response); }
還有新聞欄目的增加如圖5-7所示:
新聞欄目增加界面的核心代碼如下:
if(method.equals("addFenlei")){//增加分類 String title=request.getParameter("title"); int flag = newsBean.addFenlei(title); if(flag == Constant.SUCCESS){ request.setAttribute("message", "操作成功!"); request.getRequestDispatcher(sysdir+"/fenlei/index.jsp").forward(request, response); } else{ request.setAttribute("message", "系統(tǒng)維護(hù)中,請稍后再試!"); request.getRequestDispatcher(sysdir+"/fenlei/index.jsp").forward(request, response); }}
5.2.3 新聞資訊管理界面
新聞資訊管理界面是新聞系統(tǒng)中的核心部分是對新聞的編輯和發(fā)布,新聞資訊管理,新聞資訊的發(fā)布,評論的管理的重要功能,新聞資訊管理如圖5-8所示:
新聞資訊管理界面核心代碼如下:
if(method.equals("DELNEWS")){//刪除新聞 String check[] = request.getParameterValues("checkit"); if(check == null){ request.setAttribute("message", "請選擇要?jiǎng)h除的記錄!"); request.getRequestDispatcher(sysdir+"/news/index.jsp").forward(request, response); } else{ int id2[]= new int[check.length]; for(int i = 0;i<check.length;i++){ int s = Integer.parseInt(check[i]); id2[i] = s; } int flag = new NewsBean().delNews(id2); if(flag == Constant.SUCCESS){ request.getRequestDispatcher(sysdir+"/news/index.jsp").forward(request, response); } else{ request.setAttribute("message", "系統(tǒng)維護(hù)中,請稍后再試!"); request.getRequestDispatcher(sysdir+"/news/index.jsp").forward(request, response); } }}
發(fā)布新聞資訊如圖5-9所示:
發(fā)布新聞資訊界面核心代碼如下:
if(method.equals("ADDNEWS")){//增加新聞 String title = Filter.escapeHTMLTags(request.getParameter("title").trim()); String fenlei = request.getParameter("fenlei"); String content = request.getParameter("content1"); String gjz = request.getParameter("gjz"); if(content.length()>8000){ request.setAttribute("message", "對不起,內(nèi)容不能超過8000個(gè)字符!"); request.setAttribute("method", method); request.getRequestDispatcher(sysdir+"/news/edit.jsp").forward(request, response); } else{ int flag = newsBean.addNews(title,fenlei,content, username2,gjz); if(flag == Constant.SUCCESS){ request.setAttribute("message", "增加成功!"); request.getRequestDispatcher(sysdir+"/news/index.jsp").forward(request, response); } else{ request.setAttribute("message", "系統(tǒng)維護(hù)中,請稍后再試!"); request.getRequestDispatcher(sysdir+"/news/index.jsp").forward(request, response); } }}
新聞評論管理如圖5-10所示。
新聞評論管理界面核心代碼如下:
if(method.equals("mdelPl")){//刪評論 String id=request.getParameter("id"); int flag = newsBean.delMethod("delete from pl where id='"+id+"'"); if(flag == Constant.SUCCESS){ request.setAttribute("message", "操作成功!"); request.getRequestDispatcher(sysdir+"/news/pl.jsp").forward(request, response); } else{ request.setAttribute("message", "系統(tǒng)維護(hù)中,請稍后再試!"); request.getRequestDispatcher(sysdir+"/news/pl.jsp").forward(request, response); }}
第六章 系統(tǒng)測試
6.1 測試概述
進(jìn)行測試前需要考慮采用何種測試方案,因此測試方案是測試環(huán)節(jié)中的關(guān)鍵技術(shù)問題。我在為了能提升測試效率和降低測試代價(jià)和成本,本測試方案采用黑盒法設(shè)計(jì)作為基本的測試方案,再利用白盒法測試補(bǔ)充一些方案。測試軟件開發(fā)的過程,在本應(yīng)用開發(fā)過程中對部分功能進(jìn)行及時(shí)性的測試,確保不會在開發(fā)完成之后出現(xiàn)太多的功能缺陷,保證整個(gè)開發(fā)過程是高質(zhì)量的。高質(zhì)量并不僅僅是因?yàn)閮?yōu)秀的代碼,只有符合用戶需要的產(chǎn)品才能說是高質(zhì)量的產(chǎn)品。
6.2 測試環(huán)境
- Windows 7系統(tǒng)
- 火狐瀏覽器
- 數(shù)據(jù)庫MySQL
- IDE工具M(jìn)yEclipse
6.3 測試內(nèi)容
本系統(tǒng)為新聞發(fā)布及管理系統(tǒng),首先對系統(tǒng)進(jìn)行冒煙測試隨機(jī)抽取一個(gè)模塊進(jìn)行點(diǎn)擊看看系統(tǒng)是否能基本運(yùn)行。測試內(nèi)容主要分為前后臺系統(tǒng)的登錄模塊測試和后臺系統(tǒng)的新聞功能模塊測試兩個(gè)部分。
該測試主要是前后臺系統(tǒng)的注冊功能和登錄模塊是否正常,由于分為普通用戶,管理員用戶,因此分別測試兩種用戶的所擁有權(quán)限是否正確。
首先輸入網(wǎng)址:
http://localhost:8080/xwtj/ 進(jìn)行首頁測試登入結(jié)構(gòu)如圖6-3所示:
之后是管理員登入界面測試結(jié)果圖6-4所示:
登入成功界面如圖6-4所示:
能對新聞進(jìn)行查看、編輯和刪除等操作是管理員的操作權(quán)限,我們需要對管理員的權(quán)限進(jìn)行測試,管理員對新聞資訊管理模塊的測試當(dāng)點(diǎn)擊修改的時(shí)候回彈出修改界面結(jié)果如圖6-5所示:
點(diǎn)擊發(fā)布新聞資訊時(shí)候界面如圖6-7所示:
點(diǎn)擊評論管理時(shí)候界面如圖6-8所示:
第七章 總結(jié)
該系統(tǒng)的優(yōu)點(diǎn)在于將系統(tǒng)一分為二,分為新聞發(fā)布系統(tǒng)前臺和后臺,分工明確,前臺是給用戶提供的能是用戶更好的瀏覽新聞,后臺界面是管理員管理,更新新聞,管理評論和用戶信息等,其中普通用戶登錄前臺新聞發(fā)布系統(tǒng)進(jìn)行新聞的搜索、瀏覽和留言等操作,管理員登錄后臺新聞發(fā)布系統(tǒng),進(jìn)行新聞的發(fā)布、編寫、修改刪除等操作,對用戶進(jìn)行管理,能看到用戶評論,對有些評論過激的用戶進(jìn)行刪除,能一定程度上減少新聞發(fā)布系統(tǒng)前臺的訪問壓力,前后臺的分工也更加清楚明了,更利于各種用戶的使用。
該系統(tǒng)使用的是MVC架構(gòu)模式,能對系統(tǒng)的功能進(jìn)行分離,對系統(tǒng)分成三個(gè)層次其中Model是應(yīng)用程序中用于處理應(yīng)用程序數(shù)據(jù)邏輯的部分是系統(tǒng)的模型也是核心層,View應(yīng)用程序中處理數(shù)據(jù)顯示的部分是系統(tǒng)的視圖層,Controller是應(yīng)用程序中處理用戶交互的部分是系統(tǒng)的控制層,用戶通過系統(tǒng)對數(shù)據(jù)的訪問通過控制層對數(shù)據(jù)的控制之后通過模型處理再返回?cái)?shù)據(jù)給控制層之后反饋給用戶就能獲取信息。
通過編寫新聞發(fā)布系統(tǒng)我能更好的了解編程語言的強(qiáng)大,通過一些設(shè)計(jì)模式能是我們編寫的系統(tǒng)更能更加強(qiáng)大和兼容性更加完美可拓展性更強(qiáng),一款強(qiáng)大系統(tǒng)應(yīng)該具有拓展性好,兼容性強(qiáng),我們進(jìn)行系統(tǒng)的設(shè)計(jì)時(shí)候多使用一些現(xiàn)在流行的設(shè)計(jì)模式可以是系統(tǒng)更加完善。
參考文獻(xiàn)
[1] 李嵬. 本溪日報(bào)社新聞管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].浙江大學(xué),2016.
[2] 秦佳偉. 基于B/S結(jié)構(gòu)健身中心會員管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].浙江大學(xué),2016.
[3] 康祺林. 新聞網(wǎng)媒體管理發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].浙江大學(xué),2016.
[4] 劉申菊,田丹. 基于
http://ASP.NET的校園新聞發(fā)布系統(tǒng)的設(shè)計(jì)[J]. 浙江科技信息,2016,(15):185.
[5] 田超. 基于MySQL的計(jì)算機(jī)網(wǎng)絡(luò)課程雙語教學(xué)平臺設(shè)計(jì)[D].浙江大學(xué),2016.
[6] 趙家勝. 基于安卓平臺信息發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].浙江大學(xué),2016.
[7] 史冊. 新聞管理系統(tǒng)項(xiàng)目開發(fā)實(shí)驗(yàn)[D].浙江大學(xué),2015.
[8] 宋微. 基于J2EE的手機(jī)綜合網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)[D].浙江大學(xué),2015.
[9] 孫曉冬,張語涵. Web2.0時(shí)代價(jià)值共識困境的社會學(xué)分析[J]. 杭州理工大學(xué)學(xué)報(bào)(社會科學(xué)版),2015,(06):154-160.
[10] 唐晨. 小型新聞發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].浙江大學(xué),2015.
[11] 何希真. 基于用戶反饋信息的新聞推薦系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].浙江師范大學(xué),2015.
[12] 許昭霞. 基于Web的信息發(fā)布與信息交流平臺的設(shè)計(jì)與實(shí)現(xiàn)[D].浙江大學(xué),2015.
[13] 舒艷秋. 新聞發(fā)布管理系統(tǒng)的研究與分析[D].浙江大學(xué),2015.
[14] 周邦定. 客戶負(fù)面新聞自動檢索方法的研究與應(yīng)用[D].中國科學(xué)技術(shù)大學(xué),2015.
[15] 郭蕊. 基于B/S結(jié)構(gòu)的新聞發(fā)布系統(tǒng)[D].浙江大學(xué),2014.
關(guān)鍵詞:管理,系統(tǒng),設(shè)計(jì),實(shí)現(xiàn),發(fā)布,新聞