版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
.PAGE.XX科技信息職業(yè)學院課程設計〔實訓報告10軟件技術10軟件技術系部_信息工程系__專業(yè)_____________新聞發(fā)布系統(tǒng)班級學號____________新聞發(fā)布系統(tǒng)姓名_______________課題_____________指導教師報告成績__日期:20XX12月28日摘
要隨著網(wǎng)絡技術的不斷發(fā)展,網(wǎng)絡應用已經(jīng)滲透到人類社會的各個角落。在科學技術飛速發(fā)展的今天,Internet逐漸走入到人們的生活當中,人們可以在閑暇心情時遨游在網(wǎng)絡中,而Internet又是以網(wǎng)站的形式體現(xiàn)出來的。通過網(wǎng)站的訪問,人們可以進行電子郵件的傳送、文件傳輸、遠程登陸、網(wǎng)上查詢、網(wǎng)上交流,足不出戶便可以知道外面的世界。在這樣的信息時代中,用戶對信息的需求量、廣泛程度和時效性的要求日趨提高,傳統(tǒng)的報紙雜志已經(jīng)遠遠滿足不了人們的需求。是網(wǎng)絡改變了我們的生活,人們已經(jīng)喜歡上上網(wǎng),在網(wǎng)絡上我們便能夠了解得到社會上的各種大事小事,這便是新聞發(fā)布系統(tǒng)的成效。新聞發(fā)布系統(tǒng)是網(wǎng)站上用于用戶查詢?yōu)g覽新聞的一個系統(tǒng),是用戶查看社會信息的園地。只需要輸入自己所要了解的事件的名稱,再輕按下Enter鍵,那么你就可以知道整個事件的來龍去脈。網(wǎng)站新聞發(fā)布系統(tǒng),又稱為信息發(fā)布系統(tǒng),是將網(wǎng)頁上的某些需要經(jīng)常變動的信息,類似新聞、新產品發(fā)布和業(yè)界動態(tài)等更新信息集中管理,并通過信息的某些共性進行分類,最后系統(tǒng)化、標準化發(fā)布到網(wǎng)站上的一種網(wǎng)站應用程序。網(wǎng)站信息通過一個操作簡單的界面加入數(shù)據(jù)庫,然后通過已有的網(wǎng)頁模板格式與審核流程發(fā)布到網(wǎng)站上。當網(wǎng)絡剛剛發(fā)展起來的時候,由于信息量比較少以及技術上的原因,大部分網(wǎng)站都是采用靜態(tài)的方式來發(fā)布和管理信息的。但是隨著電腦和網(wǎng)絡的越來越普及,網(wǎng)站也越來越多,使用網(wǎng)絡資源的人也越來越多,網(wǎng)站需要更新的信息量也越來越大,特別是新聞發(fā)布的頻率很高,如果使用靜態(tài)的新聞頁面,則維護工作將會非常煩瑣,管理員每天需要制作大量的網(wǎng)頁,從而會浪費很多時間和精力,但自從有了動態(tài)網(wǎng)頁的網(wǎng)絡技術,這個事情將變的非常容易,如果采用動態(tài)的新聞發(fā)布管理系統(tǒng),則工作量將大為減少,管理員只要設置標題、內容和圖片就可以了,系統(tǒng)將自動生成對應的網(wǎng)頁,而且技術上出現(xiàn)問題的機會也會大大減少。關鍵詞:新聞發(fā)布系統(tǒng);新聞管理;用戶管理目錄一、需求分析·····················································41系統(tǒng)概述·················································41.2數(shù)據(jù)庫設計················································4二、詳細設計·····················································72.1注冊新聞功能··············································72.2修改新聞功能··············································7三、功能實現(xiàn)·····················································73.1用戶注冊模塊功能··········································73.2修改新聞模塊功能·········································10四、測試························································134.1用戶登錄功能·············································134.2用戶注冊功能·············································144.3修改主持信息功能·········································144.4刪除新聞功能·············································154.5添加新聞功能·············································164.6新聞顯示功能·············································164.7管理用戶················································174.8注銷·····················································17五、總結························································18六、參考文獻····················································19前言Internet的蓬勃發(fā)展,使新聞的傳播方式發(fā)生了巨大的變化,傳統(tǒng)的信息傳播媒體電視、廣播、報紙已經(jīng)不再是人們茶余飯后的主要精神甜點,人們更多的開始關注網(wǎng)絡新聞。由于互聯(lián)網(wǎng)所容納的信息量大、內容豐富、信息及時、準確,更有相關信息的全面的介紹與比較,大大地方便了人們的閱讀,因此在短短幾年的時間里,互聯(lián)網(wǎng)便濟身于眾多媒體之間,并具有相當一部分媒體人群。借此東風,新聞網(wǎng)也迅速發(fā)展起來,它內容豐富,涉及到商業(yè)、工業(yè)、農業(yè)、銀行、財政、教育、娛樂、信息等各個產業(yè),信息量大,不僅有實事新聞,還有相關的行業(yè)信息,同時新聞網(wǎng)具有互聯(lián)網(wǎng)所具備的一切特性。在全球網(wǎng)絡化、信息化的今天,新聞網(wǎng)迅速發(fā)展,大大地豐富了人們的生活,不知不覺中,它已經(jīng)成為人們生活中不可或缺的重要組成部分。隨著計算機科學的發(fā)展,數(shù)據(jù)庫技術在Internet中的應用越來越廣泛,為廣大網(wǎng)絡用戶提供了更加周到和人性化的服務。個性化已逐漸成為當今Web應用的潮流。利用JSP技術開發(fā)的網(wǎng)站新聞管理系統(tǒng),實現(xiàn)了網(wǎng)站新聞的動態(tài)管理,因為可以用來動態(tài)發(fā)布新聞信息,所以使得對信息的管理更加及時、高效,提高了工作效率。需求分析1.1系統(tǒng)概述本系統(tǒng)是新聞發(fā)布系統(tǒng)。由于網(wǎng)站新聞需要頻繁性更新,每次更新管理員都要到服務器上更新,給管理員管理網(wǎng)站造成不便,因這種需求本系統(tǒng)誕生了。 在系統(tǒng)開發(fā)過程中尋找需求是一件十分重要的工作,在認真分析和調查后確定了本系統(tǒng)的需求要求。 本系統(tǒng)參與者:管理員、普通用戶、瀏覽者。 系統(tǒng)功能模塊:新聞瀏覽 用戶登陸 用戶注冊 用戶修改信息 管理新聞 添加新聞 管理用戶 注銷瀏覽新聞瀏覽新聞用戶登錄注冊用戶修改注冊信息添加新聞管理新聞注銷管理用戶新聞發(fā)布系統(tǒng)圖2-1id1.2數(shù)據(jù)庫設計id<1>概念設計1.1User的關系E-R圖UserusernameUserusernamepasswordpasswordUser的關系E-R圖userID1.2news的關系E-R圖userIDreleaseDatereleaseDatenewsTypeIDnewsTypeIDnewsnewsidcontenttitleidcontenttitlenews的關系E-R圖1.3newstype的關系E-R圖newstypenewstypetypeNameidtypeNameidnewstype的關系E-R圖<2>邏輯設計數(shù)據(jù)庫命名為mynews,三張表user,news,newstype。User表字段〔id,username,passwordnews表字段〔id,title,content,releaseDate,userID,newsTypeIDnewstype表字段〔id,typeName,物理設計NavicatMySQLDataTransferSourceServer:localhost_3306SourceServerVersion:50146SourceHost:localhost:3306SourceDatabase:news_publishTargetServerType:MYSQLTargetServerVersion:50146FileEncoding:65001Date:2011-06-1114:37:32SETFOREIGN_KEY_CHECKS=0;news表DROPTABLEIFEXISTS`news`;CREATETABLE`news`<`id`int<11>NOTNULLDEFAULT'1',`title`varchar<100>DEFAULTNULL,`content`text,`releaseDate`dateDEFAULTNULL,`userID`int<11>DEFAULTNULL,`newsTypeID`int<11>DEFAULTNULL,PRIMARYKEY<`id`>,KEY`userID`<`userID`>,KEY`newsTypeID`<`newsTypeID`>,CONSTRAINT`news_ibfk_2`FOREIGNKEY<`newsTypeID`>REFERENCES`newstype`<`id`>,CONSTRAINT`news_ibfk_1`FOREIGNKEY<`userID`>REFERENCES`user`<`id`>>ENGINE=InnoDBDEFAULTCHARSET=utf8;INSERTINTO`news`VALUES<'1','nishishabi','awgseg','2011-06-11','2','2'>;newstype表DROPTABLEIFEXISTS`newstype`;CREATETABLE`newstype`<`id`int<11>NOTNULLDEFAULT'1',`typeName`varchar<100>DEFAULTNULL,PRIMARYKEY<`id`>>ENGINE=InnoDBDEFAULTCHARSET=utf8;INSERTINTO`newstype`VALUES<'1','大說'>;INSERTINTO`newstype`VALUES<'2','會議記錄'>;INSERTINTO`newstype`VALUES<'3','自拍'>;user表DROPTABLEIFEXISTS`user`;CREATETABLE`user`<`id`int<11>NOTNULLDEFAULT'1',`username`varchar<20>DEFAULTNULL,`password`varchar<20>DEFAULTNULL,PRIMARYKEY<`id`>>ENGINE=InnoDBDEFAULTCHARSET=utf8;INSERTINTO`user`VALUES<'1','李建偉','123456'>;INSERTINTO`user`VALUES<'2','李建偉','123456'>;二、詳細設計2.1用戶注冊功能registerUser.jsp頁面負責提交新用戶注冊信息,信息提交給Struts,有RegisterActionForm.java把表單數(shù)據(jù)接收過來封裝,Register.java從FormBean〔RegisterActionForm.java中把數(shù)據(jù)提取出來,進行檢測,首先檢測用戶名,檢查是否已被注冊,此過程用到myutils包中的UserUtils類。此系統(tǒng)支持漢化用戶名,所以用戶名還要進行編碼處理,用以保障用漢字注冊用戶名的用戶。注冊成功返回success.jsp否則返回error.jsp頁面。2.2修改新聞功能此模塊登陸后才能被激活,此模塊是普通用戶設計的,管理員不可以在客戶端修改信息,modifyUserMess.jsp頁面負責修改。當用戶登陸后,點擊修改,GetUserOldMessAction.java負責查詢用戶信息,得到信息后,把信息存放到UserMessage.java的實例化對象userMess中,然后modifyUserMess.jsp頁面引入userMess對象獲得舊的信息,修改后提交給ActionServlet.java類,ActionServlet根據(jù)Struts-config.xml中的URL配置再轉發(fā)到ModifyUserMessAction.java,經(jīng)過處理后最終存入數(shù)據(jù)庫中。三、功能實現(xiàn)3.1用戶注冊模塊功能<title>管理員注冊</title>functionvalidate<>{varusername=document.getElementById<"username">.value;varpassword=document.getElementById<"password">.value;varrePassword=document.getElementById<"rePassword">.value;if<username==null||username.length<1>{ alert<"請?zhí)顚懹脩裘?>;returnfalse;}if<password.length<1>{ alert<"請?zhí)顚懨艽a!">;returnfalse;}if<rePassword.length<1>{ alert<"請?zhí)顚懘_認密碼!">;returnfalse;}if<rePassword!=password>{ alert<"兩次密碼不一樣">;returnfalse;}returntrue;}</script><meta-equiv="Content-Type"content="text/html;charset=utf-8"></head><bodybackground="images/bg3.jpg">您好:<fontcolor="red"><s:propertyvalue="/></font><fontcolor="red"><ahref="exitSys.action">注銷</a></font><divid="apDiv1"><formaction="createUser.action"method="post"onsubmit="returnvalidate<>;"><palign="right">用戶名:<inputtype="text"name="username"id="username"size="30"/></p> <palign="right">密碼:<inputtype="password"name="password"id="password"size="30"/></p> <palign="right">確認密碼:<inputtype="password"name="rePassword"id="rePassword"size="30"></p> <palign="center"><inputtype="submit"value="注冊"/> <inputtype="reset"value="重置"/></p></form>privateintnewsTypeID;privateStringtypeName;privateList<NewsType>allNewsTypes;privateNewsTypenewsType;publicintgetNewsTypeID<>{returnnewsTypeID;}publicvoidsetNewsTypeID<intnewsTypeID>{this.newsTypeID=newsTypeID;}publicList<NewsType>getAllNewsTypes<>{returnallNewsTypes;}publicvoidsetAllNewsTypes<List<NewsType>allNewsTypes>{this.allNewsTypes=allNewsTypes;}publicStringgetTypeName<>{returntypeName;}publicvoidsetTypeName<StringtypeName>{this.typeName=typeName;}publicNewsTypegetNewsType<>{returnnewsType;}publicvoidsetNewsType<NewsTypenewsType>{this.newsType=newsType;}publicStringcreateNewsType<>{ NewsTypenewsType=newNewsType<>; newsType.setTypeName<this.typeName>; NewsTypeServicenewsTypeService=newNewsTypeServiceImpl<>; newsTypeService.createNewsType<newsType>;this.allNewsTypes=newsTypeService.queryAllNewsTypes<>;this.addActionMessage<"?????">;returnSUCCESS; }1-1注冊前信息圖1-2注冊后信息圖3.2修改新聞模塊功能updateNews.jsp<負責新聞查看修改>部分代碼:<meta-equiv="Content-Type"content="text/html;charset=utf-8"></head><% java.sql.Datedate=newjava.sql.Date<new<>.getTime<>>;%><bodybackground="images/bg3.jpg">您好:<fontcolor="red"><s:propertyvalue="#session.user.username"/></font><fontcolor="red"><ahref="exitSys.action">注銷</a></font><divid="apDiv1"> <formaction="updateNews.action"method="post"> <p> <inputtype="hidden"name="newsID"value="<s:propertyvalue="#request.news.id"/>"><br> 新聞標題:<inputtype="text"name="title"value="<s:propertyvalue="#request.news.title"/>"></p> <p><br> 新聞內容: <textareaname="content"cols="80"rows="3"><s:propertyvalue="#request.news.content"/> </textarea> </p> <p> <br> 新聞類別: <selectname="newsTypeID"> <s:iteratorvalue="allNewsType"> <optionvalue="<s:propertyvalue="id"/>"> <s:propertyvalue="typeName"/> </option> </s:iterator> </select> 發(fā)布人: <selectname="userID"> <s:iteratorvalue="allUsers"> <optionvalue="<s:propertyvalue="id"/><s:propertyvalue="username"/> </option> </s:iterator> </select> </p> <p><br> 發(fā)布日期:<inputtype="text"name="releaseDate"readonly="readonly"value="<%=date%>"/> </p> <palign="center"><br> <inputtype="submit"value="修改"/> <ahref="showAllNews.action">返回</a> NewsTypeAction.java〔負責添加新聞主要代碼:publicclassNewsTypeActionextendsActionSupport{privateintnewsTypeID;privateStringtypeName;privateList<NewsType>allNewsTypes;privateNewsTypenewsType;publicintgetNewsTypeID<>{returnnewsTypeID; }publicvoidsetNewsTypeID<intnewsTypeID>{this.newsTypeID=newsTypeID; }publicList<NewsType>getAllNewsTypes<>{returnallNewsTypes;}publicvoidsetAllNewsTypes<List<NewsType>allNewsTypes>{this.allNewsTypes=allNewsTypes;}publicStringgetTypeName<>{returntypeName;}publicvoidsetTypeName<StringtypeName>{this.typeName=typeName;}publicNewsTypegetNewsType<>{returnnewsType;}publicvoidsetNewsType<NewsTypenewsType>{this.newsType=newsType;}publicStringshowNewsTypes<>{ NewsTypeServicenewsTypeService=newNewsTypeServiceImpl<>;this.allNewsTypes=newsTypeService.queryAllNewsTypes<>;returnSUCCESS;}publicStringupdateNewsType<>{ NewsTypeServicenewsTypeService=newNewsTypeServiceImpl<>; NewsTypent=newsTypeService.queryNewsType<this.newsTypeID>; nt.setTypeName<this.typeName>; newsTypeService.updateNewsType<nt>;this.allNewsTypes=newsTypeService.queryAllNewsTypes<>;this.addActionMessage<"?????">;returnSUCCESS; }2-1修改信息圖四、測試4.1用戶登錄功能首頁〔index.jsp用戶登錄界面,用戶需根據(jù)自己的類型〔普通用戶,管理員進行選擇性登陸,登錄時需要填寫驗證碼。注意本系統(tǒng)部分功能只有在登陸后才被激活,且不同用戶類型登陸后所具有的功能也不同。4.2用戶注冊功能register.jsp頁面負責提交新用戶注冊信息,信息提交給Struts,有RegisterActionForm.java把表單數(shù)據(jù)接收過來封裝,Register.java從FormBean〔RegisterActionForm.java中把數(shù)據(jù)提取出來,進行檢測,首先檢測用戶名,檢查是否已被注冊,此過程用到myutils包中的UserUtils類。此系統(tǒng)支持漢化用戶名,所以用戶名還要進行編碼處理,用以保障用漢字注冊用戶名的用戶。注冊成功返回success.jsp否則返回error.jsp頁面。4.3修改新聞功能此模塊登陸后才能被激活,此模塊是普通用戶設計的,管理員不可以在客戶端修改信息,modifyUserMess.jsp頁面負責修改。當用戶登陸后,點擊修改,GetUserOldMessAction.java負責查詢用戶信息,得到信息后,把信息存放到UserMessage.java的實例化對象userMess中,然后modifyUserMess.jsp頁面引入userMess對象獲得舊的信息,修改后提交給ActionServlet.java類,ActionServlet根據(jù)Struts-config.xml中的URL配置再轉發(fā)到ModifyUserMessAction.java,經(jīng)過處理后最終存入數(shù)據(jù)庫中。4.4刪除新聞功能此模塊登錄后被激活,普通用戶登陸后僅可以管理自己的新聞,管理項目包括〔刪除,修改。管理員登陸后可管理數(shù)據(jù)庫中所有的新聞,管理項目包括〔刪除,修改。刪除新聞基本實現(xiàn)流程:managerUserAction.jsp顯示新聞列表,單擊"刪除"——>confirmDeleteNews.Jsp——>DeleteNewsAction.java最終SqlUtils.java工具類根據(jù)接收到的id號,從數(shù)據(jù)庫的news表把相應的新聞刪除。編輯新聞基本實現(xiàn)流程:單擊"修改"——>modifyNews.jsp〔負責顯示當前新聞,并提交新新聞——>ModifyNewsAction.java〔處理后存入數(shù)據(jù)庫。4.5添加新聞功能添加新聞的最低用戶級別是普通用戶,用戶登錄后可以在addNews.jsp頁面添加新聞,新聞提交給Struts,ActionServlet.java負責分發(fā)給相應的Action類處理,給據(jù)配置文件的FormBean把提交的新聞信息封裝,然后AddNews.java類從FormBean〔AddNewsActionForm.java中取出數(shù)據(jù)處理后存入news表中。 添加新聞基本流程:addNews.jsp——>AddNewsAction.java——>SqlUtils.java<工具類>——>news新聞表。4.6新聞顯示功能首頁〔index.jsp負責顯示新聞列表,點擊新聞標題將顯示出新聞詳細內容,新聞標題上加有鏈接,鏈接到showNewsDeatil.Jsp頁面,此頁面負責顯示新聞詳細內容〔標題,發(fā)表時間,內容,作者。根據(jù)新聞條數(shù)NewsTurnPageAction.java負責新聞列表分頁,點擊"上一頁""下一頁"實現(xiàn)分頁。新聞內容都存與UserBean的實例化對象user中
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 春節(jié)停工停產方案
- 腳手架鋼管購銷合同
- 信息行業(yè)大數(shù)據(jù)與人工智能應用方案
- 政府機構政務服務平臺建設及優(yōu)化方案設計
- 法院的離婚協(xié)議書
- 房地產中介服務合同中介住房合同
- 安裝工程勞動合同
- 連帶責任保證擔保合同
- 交通物流業(yè)貨物追蹤系統(tǒng)建設方案
- 購買公司股份協(xié)議書十
- 學校辦公室衛(wèi)生制度
- 醫(yī)學生理學智慧樹知到答案2024年德州學院
- GB/T 44412-2024船舶與海上技術液化天然氣燃料船舶加注規(guī)范
- 小學三年級數(shù)學上冊口算題卡(加換算)
- 機械制造HSE協(xié)議書
- 2024-2030年中國靜脈血栓栓塞癥(VTE)防治行業(yè)市場全景監(jiān)測及投資策略研究報告
- 2024年國家保密法知識競賽經(jīng)典題庫及完整答案【必刷】
- 抑郁癥病例分享
- 《子路、曾皙、冉有、公西華侍坐》課件()
- 青島版(五四制)四年級數(shù)學下冊全冊課件
- 人教鄂教版小學科學三年級下冊全冊教案教學設計
評論
0/150
提交評論