![WEB動(dòng)態(tài)新聞發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第1頁(yè)](http://file4.renrendoc.com/view12/M04/06/04/wKhkGWbRzmaAIRj7AAINU5oZOE0736.jpg)
![WEB動(dòng)態(tài)新聞發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第2頁(yè)](http://file4.renrendoc.com/view12/M04/06/04/wKhkGWbRzmaAIRj7AAINU5oZOE07362.jpg)
![WEB動(dòng)態(tài)新聞發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第3頁(yè)](http://file4.renrendoc.com/view12/M04/06/04/wKhkGWbRzmaAIRj7AAINU5oZOE07363.jpg)
![WEB動(dòng)態(tài)新聞發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第4頁(yè)](http://file4.renrendoc.com/view12/M04/06/04/wKhkGWbRzmaAIRj7AAINU5oZOE07364.jpg)
![WEB動(dòng)態(tài)新聞發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第5頁(yè)](http://file4.renrendoc.com/view12/M04/06/04/wKhkGWbRzmaAIRj7AAINU5oZOE07365.jpg)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGEPAGE22WEB動(dòng)態(tài)新聞發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘要21世紀(jì)是信息的時(shí)代,是網(wǎng)絡(luò)的時(shí)代,進(jìn)入信息社會(huì)高速發(fā)展的時(shí)代,數(shù)字化革命給所有領(lǐng)域帶來(lái)新的改變。隨著Internet的普及,無(wú)論人們相隔多么遙遠(yuǎn),都有天涯若比鄰的感覺。足不出戶,便可知天下新近之大事,便可與大洋彼岸的朋友暢談無(wú)阻。網(wǎng)頁(yè)逐漸融入人們的生活,快速及時(shí)地瀏覽新聞,獲取五彩繽紛的網(wǎng)上信息,已成為人們?nèi)粘I畹囊徊糠?,與此同時(shí)越來(lái)越多的企業(yè)建立了自己的WWW網(wǎng)站,企業(yè)通過(guò)網(wǎng)站可以展示產(chǎn)品,發(fā)布最新動(dòng)態(tài),與用戶進(jìn)行交流和溝通,與合作伙伴建立聯(lián)系,以及開展電子商務(wù)等?;ヂ?lián)網(wǎng)的世界里蘊(yùn)藏?zé)o限生機(jī),這里只有想不到的、沒(méi)有做不到的。網(wǎng)絡(luò)發(fā)展前景無(wú)限,及早與網(wǎng)絡(luò)結(jié)合,與信息時(shí)代同步,與高科技匯合,定會(huì)給社會(huì)各行各業(yè)的發(fā)展注入新鮮的活力。WEB動(dòng)態(tài)新聞發(fā)布系統(tǒng)的主要作用是系統(tǒng)管理員通過(guò)Internet能夠方便,快速,潔的管理各種新聞;普通用戶能夠快速地瀏覽新聞。系統(tǒng)制作過(guò)程中基于windowsxp平臺(tái),用jsp和access進(jìn)行系統(tǒng)開發(fā)。系統(tǒng)實(shí)現(xiàn)了新聞的分類瀏覽、添加、修改和刪除等功能。系統(tǒng)以數(shù)據(jù)庫(kù)為后臺(tái),采用JSP技術(shù)開發(fā)前臺(tái),其功能簡(jiǎn)單、鮮明、實(shí)用性強(qiáng),且具有良好的外設(shè)接口,能夠很好的配合站點(diǎn)的其它子系統(tǒng)服務(wù)于各種新聞發(fā)布。關(guān)鍵詞:JSP;ADO;新聞管理Abstract21stcenturyistheeraoftheinformation,itistheeraofthenetwork,enterthehigh-speederafordevelopmentofinformation-intensivesociety,thedigitizedrevolutionbringsthenewchangetofields.WiththepopularizationofInternet,nomatterhowremotepeopleareseparatedby,thereisfeelingthatdistancecan'tkeepwetwoapart.Stayindoors,canknowthemajorissuerecentlyofworld,canhavetalkedaboutanimatedlynothinderingtothefriendintheothershorebytheocean.Thewebpageincorporatespeople'slifegradually,browsethroughthenewsintimefast,obtaincolorfulonlineinformation,hasalreadybecomepeople'spartofthedailylife,meanwhilemoreandmoreenterprisessetupone'sownWWWwebsites,enterprisescanshowtheproductsthroughwebsites,releasethenewesttrends,exchangeandcommunicatewithusers,establishtheconnectionwiththecooperativepartner,andlaunche-commerce,etc..Internetworldcontainlimitlesslife,whomhereunexpectedonly,make.Thedevelopmentprospectofthenetworkislimitless,bindwithnetworkearly,isinpacewithinformationage,convergewithHi-Tech,willinjectfreshvigorintodevelopmentofthesocialalltradesandprofessionsdefinitely.Inthefieldofthenetworktechnology。Thepurposeofnewsmanagementofmixsystemisletthestudentsandteacherscanreadnewsasquicklyaspossibleandthesystemmanagercanmanagethesystemeasily.thesystemisbasedonwindowsxp.developedinaspandaccess.Thissystemhascarriedoutthefunctionofclassifiedbrowse,accession,editanddeletingofnews.ThisNewsPublicationSystemtakesDatabaseasbackground,exploitforegroundbyJSPtechnology,itssimple,brilliant,practicalfunctionandwell-setPeripheralInterfacecancooperateothersub-systemofsitetopromulgateallkindsofnews.Keywords:JSP;ADO;NewsManagement目錄摘要 IAbstract II1緒論 11.1課題意義 11.2課題背景 11.3開發(fā)工具的選用及介紹 11.3.1JSP的優(yōu)勢(shì) 21.3.2JSP的特點(diǎn) 22基礎(chǔ)知識(shí) 42.1JSP技術(shù) 42.1.1JSP訪問(wèn)數(shù)據(jù)庫(kù)的原理 42.1.2JSP頁(yè)面的結(jié)構(gòu): 42.1.3JSP的運(yùn)行環(huán)境 62.1.4JSP的內(nèi)建對(duì)象 72.1.5JSP的主要內(nèi)置組件: 72.2SQLSERVER2000技術(shù)簡(jiǎn)介 83需求分析 103.1市場(chǎng)需求分析 103.2任務(wù)目標(biāo) 113.2.1新聞發(fā)布系統(tǒng)的特點(diǎn) 113.2.2對(duì)性能的規(guī)定 113.2.3數(shù)據(jù)管理能力要求 113.2.4應(yīng)用目標(biāo) 113.3運(yùn)行環(huán)境 124系統(tǒng)概要設(shè)計(jì) 134.1總體功能 134.2E-R圖 155系統(tǒng)詳細(xì)設(shè)計(jì) 165.1數(shù)據(jù)庫(kù)的搭建 165.2后臺(tái)數(shù)據(jù)庫(kù)設(shè)計(jì) 175.2.1SQLServer2000介紹 175.2.2數(shù)據(jù)庫(kù)表結(jié)構(gòu) 175.3處理流程設(shè)計(jì) 195.3.1系統(tǒng)操作流程 195.3.2數(shù)據(jù)增加流程 215.3.3數(shù)據(jù)修改流程 215.3.4數(shù)據(jù)刪除流程 226部分編碼實(shí)現(xiàn) 246.1管理員登陸 246.2新聞管理 266.3首頁(yè)界面 296.4在線交流界面 386.5新聞分類界面 477系統(tǒng)的調(diào)試與測(cè)試 537.1程序調(diào)試 537.2程序的測(cè)試 537.2.1測(cè)試的重要性及目的 537.2.2測(cè)試的步驟 547.2.3測(cè)試的主要內(nèi)容 55結(jié)論 57參考文獻(xiàn) 58致謝 59附錄1外文參考文獻(xiàn)(譯文) 60附錄2外文參考文獻(xiàn)(原文) 641緒論1.1課題意義每個(gè)學(xué)校都有自己的一套獨(dú)特的教學(xué)資源,但卻缺少一個(gè)功能完備的平臺(tái)來(lái)存放,簡(jiǎn)單的校園網(wǎng)的建設(shè)已不能滿足學(xué)校資源精細(xì)存放的需求。所以設(shè)計(jì)一個(gè)動(dòng)態(tài)新聞發(fā)布系統(tǒng),為學(xué)校提供了一個(gè)功能強(qiáng)大的資源共享平臺(tái)是很有必要的。這樣的一個(gè)動(dòng)態(tài)新聞發(fā)布系統(tǒng)可以將雜亂無(wú)章的信息(包括文字、圖片和影音)經(jīng)過(guò)組織,合理而且有序地呈現(xiàn)在大家面前。簡(jiǎn)單的說(shuō),新聞發(fā)布系統(tǒng)就是充當(dāng)一個(gè)網(wǎng)絡(luò)新聞媒介的功能。主要實(shí)現(xiàn)對(duì)新聞的分類,審核,發(fā)布,模擬了一般新聞媒介的發(fā)布的過(guò)程,因?yàn)榭梢詣?dòng)態(tài)發(fā)布新聞信息,所以使得對(duì)信息的管理更加及時(shí)、高效,提高了工作效率。同時(shí)也可以為學(xué)生提供大量的系統(tǒng)整理的學(xué)習(xí)資源,學(xué)生不需到外網(wǎng),僅在校園網(wǎng)上就能找到自己所需大量學(xué)習(xí)資料,有效的避免了外網(wǎng)對(duì)校園環(huán)境的污染,為學(xué)生提供一個(gè)安全而純凈的網(wǎng)上學(xué)習(xí)環(huán)境。1.2課題背景隨著信息時(shí)代的高速發(fā)展,傳統(tǒng)的報(bào)紙雜志已經(jīng)遠(yuǎn)遠(yuǎn)滿足不了人們的需求,人們更加希望于能夠在網(wǎng)上了解更多的新聞和信息,于是我們就很有必要在網(wǎng)上創(chuàng)建一個(gè)新聞發(fā)布管理信息系統(tǒng)了。大部分網(wǎng)站都是采用靜態(tài)的方式來(lái)發(fā)布和管理信息的,可是網(wǎng)站需要更新的信息量也越來(lái)越大,所以這很不利于網(wǎng)站管理人員的工作。為了更加方便的管理網(wǎng)站,于是我們就很迫切的需要利用動(dòng)態(tài)技術(shù)創(chuàng)建一個(gè)新聞發(fā)布管理信息系統(tǒng)了。1.3開發(fā)工具的選用及介紹1.3.1JSP的優(yōu)勢(shì)JavaServerPages:“Java動(dòng)態(tài)服務(wù)器網(wǎng)頁(yè)”,一般簡(jiǎn)稱為“JSP”,JSP是一種以Java語(yǔ)言為基礎(chǔ)的動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)。JSP可以應(yīng)用Java下的各種包和類,并且繼承了Java以面向?qū)ο罄碚摓橹行牡脑O(shè)計(jì)架構(gòu),這些特點(diǎn)讓JSP可制作出功能更為多樣的動(dòng)態(tài)網(wǎng)頁(yè)。1.3.2JSP的特點(diǎn)JSP是Sun公司推出的新一代站點(diǎn)開發(fā)語(yǔ)言,他完全解決了目前ASP,PHP的一個(gè)通?。_本級(jí)執(zhí)行(據(jù)說(shuō)PHP4也已經(jīng)在Zend的支持下,實(shí)現(xiàn)編譯運(yùn)行).Sun公司借助自己在Java上的不凡造詣,將Java從Java應(yīng)用程序和JavaApplet之外,又有新的碩果,就是Jsp--JavaServerPage。Jsp可以在Serverlet和JavaBean的支持下,完成功能強(qiáng)大的站點(diǎn)程序。但JSP代碼被編譯成Servlet并由Java虛擬機(jī)解釋執(zhí)行,這種編譯操作僅在對(duì)JSP頁(yè)面的第一次請(qǐng)求時(shí)發(fā)生。
JSP特點(diǎn):
=1\*GB3①將內(nèi)容的生成和顯示進(jìn)行分離
使用JSP技術(shù),Web頁(yè)面開發(fā)人員可以使用HTML或者XML標(biāo)識(shí)來(lái)設(shè)計(jì)和格式化最終頁(yè)面。使用JSP標(biāo)識(shí)或者小腳本來(lái)生成頁(yè)面上的動(dòng)態(tài)內(nèi)容。生成內(nèi)容的邏輯被封裝在標(biāo)識(shí)JavaBeans組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器端運(yùn)行。如果核心邏輯被封裝在標(biāo)識(shí)和Beans中,那么其他人,如Web管理人員和頁(yè)面設(shè)計(jì)者,能夠編輯和使用JSP頁(yè)面,而不影響內(nèi)容的生成。在服務(wù)器端,JSP引擎解釋JSP標(biāo)識(shí)和小腳本,生成所請(qǐng)求的內(nèi)容(例如,通過(guò)訪問(wèn)JavaBeans組件,使用JDBCTM技術(shù)訪問(wèn)數(shù)據(jù)庫(kù),或者包含文件),并且將結(jié)果以HTML(或者XML)頁(yè)面的形式發(fā)送回瀏覽器。這有助于作者保護(hù)自己的代碼,而又保證任何基于HTML的Web瀏覽器的完全可用性。
=2\*GB3②強(qiáng)調(diào)可重用的組件
絕大多數(shù)JSP頁(yè)面依賴于可重用的,跨平臺(tái)的組件(JavaBeans或者EnterpriseJavaBeansTM組件)來(lái)執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些組件為更多的使用者或者客戶團(tuán)體所使用?;诮M件的方法加速了總體開發(fā)過(guò)程,并且使得各種組織在他們現(xiàn)有的技能和優(yōu)化結(jié)果的開發(fā)努力中得到平衡。
③采用標(biāo)識(shí)簡(jiǎn)化頁(yè)面開發(fā)
Web頁(yè)面開發(fā)人員不會(huì)都是熟悉腳本語(yǔ)言的編程人員。JavaServerPage技術(shù)封裝了許多功能,這些功能是在易用的、與JSP相關(guān)的XML標(biāo)識(shí)中進(jìn)行動(dòng)態(tài)內(nèi)容生成所需要的。標(biāo)準(zhǔn)的JSP標(biāo)識(shí)能夠訪問(wèn)和實(shí)例化JavaBeans組件,設(shè)置或者檢索組件屬性,下載Applet,以及執(zhí)行用其他方法更難于編碼和耗時(shí)的功能。
通過(guò)開發(fā)定制化標(biāo)識(shí)庫(kù),JSP技術(shù)是可以擴(kuò)展的。今后,第三方開發(fā)人員和其他人員可以為常用功能創(chuàng)建自己的標(biāo)識(shí)庫(kù)。這使得Web頁(yè)面開發(fā)人員能夠使用熟悉的工具和如同標(biāo)識(shí)一樣的執(zhí)行特定功能的構(gòu)件來(lái)工作。
JSP技術(shù)很容易整合到多種應(yīng)用體系結(jié)構(gòu)中,以利用現(xiàn)存的工具和技巧,并且擴(kuò)展到能夠支持企業(yè)級(jí)的分布式應(yīng)用。作為采用Java技術(shù)家族的一部分,以及Java2(企業(yè)版體系結(jié)構(gòu))的一個(gè)組成部分,JSP技術(shù)能夠支持高度復(fù)雜的基于Web的應(yīng)用。
由于JSP頁(yè)面的內(nèi)置腳本語(yǔ)言是基于Java編程語(yǔ)言的,而且所有的JSP頁(yè)面都被編譯成為JavaServlet,JSP頁(yè)面就具有Java技術(shù)的所有好處,包括健壯的存儲(chǔ)管理和安全性。
作為Java平臺(tái)的一部分,JSP擁有Java編程語(yǔ)言“一次編寫,各處運(yùn)行”的特點(diǎn)。隨著越來(lái)越多的供應(yīng)商將JSP支持添加到他們的產(chǎn)品中,您可以使用自己所選擇的服務(wù)器和工具,更改工具或服務(wù)器并不影響當(dāng)前的應(yīng)用。
2基礎(chǔ)知識(shí)2.1JSP技術(shù)2.1.1JSP訪問(wèn)數(shù)據(jù)庫(kù)的原理JSP通過(guò)JDBC訪問(wèn)數(shù)據(jù)庫(kù)時(shí)的流程;當(dāng)Jsp被調(diào)用時(shí),它通過(guò)jdbcAPI
來(lái)訪問(wèn)數(shù)據(jù)庫(kù)并執(zhí)行查詢和更新,jdbc是采用SQL語(yǔ)言與底層的數(shù)據(jù)庫(kù)交互的。如果一條SQL語(yǔ)句會(huì)從數(shù)據(jù)庫(kù)中產(chǎn)生一組結(jié)果記錄,它們就會(huì)被JDBc打包成一個(gè)Result對(duì)象,JsP處理這些記錄并動(dòng)態(tài)地生成HTML頁(yè)面,最后瀏覽器將得到的頁(yè)面顯示給用戶。
簡(jiǎn)而言之,必須知道5個(gè)JDBC的類或接口:數(shù)據(jù)庫(kù)的JDBC驅(qū)動(dòng)器類,DriverManager類、Connect接口、Statement接口、Result接口。它們用如下方式和數(shù)據(jù)庫(kù)建立連接和操作數(shù)據(jù)庫(kù):
1)JsP代碼通過(guò)帶參數(shù)調(diào)用Class.forName(),為DriverManager類實(shí)例化、加載
驅(qū)動(dòng)器。
2)在JSP中用DriverManagere.getConnection()取得一個(gè)Connection對(duì)象。
3)用Connection.createStatement()創(chuàng)建一個(gè)Statement對(duì)象。
4)用JSP代碼通過(guò)Statement.executeQuery()或Statement.executeUpdate()查詢或更新數(shù)據(jù)庫(kù)。
5)如果執(zhí)行了一個(gè)查詢JSP代碼會(huì)處理Statement.executeQuery()返回Result對(duì)象。
2.1.2JSP頁(yè)面的結(jié)構(gòu):⑴JSP頁(yè)面的基本結(jié)構(gòu)在JSP(JavaServerPage)頁(yè)面中,利用符號(hào)標(biāo)識(shí)<%和%>把頁(yè)面代碼分成為兩個(gè)部分,在標(biāo)識(shí)之間的部分為JSP程序代碼部分,在標(biāo)識(shí)以外的部分為非程序代碼部分,非程序代碼部分與一般的靜態(tài)網(wǎng)頁(yè)的編寫方法一樣。JSP頁(yè)面組成如下圖2.1所示:圖2.1JSP頁(yè)面的基本結(jié)構(gòu)
JSP頁(yè)面由三類原素組成:HTML標(biāo)簽、JSP標(biāo)簽和JSP腳本。其中JSP腳本又可分為java程序片(thg)、java表達(dá)式、變量及(ey)方法等的聲明。
如果服務(wù)器上的JSP頁(yè)面被第一次請(qǐng)求,則服務(wù)器上的JSP引擎先將該頁(yè)面轉(zhuǎn)譯成java文件,再編譯成java字節(jié)碼文件,最后通過(guò)執(zhí)行字節(jié)碼文件來(lái)響應(yīng)客戶的請(qǐng)求;而當(dāng)此JSP頁(yè)面再次被請(qǐng)求時(shí),服務(wù)器則直接執(zhí)行此頁(yè)面的字節(jié)碼來(lái)響應(yīng)客戶的請(qǐng)求。這些字節(jié)碼的作用是讓服務(wù)器執(zhí)行JSP的標(biāo)簽和腳本,并將結(jié)果連同HTML標(biāo)簽一起發(fā)送給客戶的瀏覽器顯示。
JSP頁(yè)面的首次執(zhí)行往往由服務(wù)器管理者來(lái)完成。而當(dāng)有多個(gè)用戶同時(shí)請(qǐng)求同一個(gè)頁(yè)面時(shí),JSP引擎則為每個(gè)用戶啟動(dòng)一個(gè)線程。2.1.3JSP的運(yùn)行環(huán)境從最開始的JSWDK到現(xiàn)在的Tomcat、WebLogic等,JSP的運(yùn)行環(huán)境發(fā)生了很大的變化,出現(xiàn)了很多優(yōu)秀的JSP容器,如Tomcat、BEAWebLogicServer和WebLogic等。下面簡(jiǎn)單介紹幾種常用的JSP容器及其特點(diǎn)。⑴TomcatTomcat是ApacheJakarta軟件組織的一個(gè)子項(xiàng)目,是一個(gè)JSP/Servlet的容器。它是在Sun公司的JSWDK(JavaServerWebDevelopmentKit)基礎(chǔ)上發(fā)展起來(lái)的一個(gè)JSP和Servlet規(guī)范的標(biāo)準(zhǔn)實(shí)現(xiàn),試用Tomcat可以體驗(yàn)JSP和Servlet的最新規(guī)范。經(jīng)過(guò)多年的發(fā)展,Tomcat不僅成為JSP和Servlet規(guī)范的標(biāo)準(zhǔn)實(shí)現(xiàn),而其具備了很多商業(yè)JavaServlet容器的熱心,這使得它常被一些企業(yè)用于商業(yè)用途。⑵BEAWebLogicServerBEAWebLogicServer是Web應(yīng)用服務(wù)器的重要產(chǎn)品,是用于集成、開發(fā)、部署和管理大型分布式Web應(yīng)用、網(wǎng)絡(luò)數(shù)據(jù)庫(kù)應(yīng)用的Java應(yīng)用服務(wù)器。它將Java的動(dòng)態(tài)功能和JavaEnterprise標(biāo)準(zhǔn)的高效性和安全性引入了大型Web應(yīng)用的繼承和開發(fā)之中,BEAWebLogicServer是第一個(gè)提供EJB組建、Java消息傳遞和事件服務(wù)、微軟COM集成以及零管理客戶機(jī)的Web應(yīng)用服務(wù)器,代表了新一地啊Web應(yīng)用服務(wù)器的發(fā)展方向。⑶IBMWebSphereIBMWebSphere是一直領(lǐng)先的互聯(lián)網(wǎng)基礎(chǔ)設(shè)施軟件,適用于跨多種平臺(tái)創(chuàng)建、運(yùn)行和集成各種業(yè)務(wù)的應(yīng)用。它的優(yōu)點(diǎn)是能夠?qū)⒎爆嵉腎T流程進(jìn)行整合,并使其框架清晰,使用簡(jiǎn)便,節(jié)省大量人力和事件,從而提高企業(yè)的辦公效率。2.1.4JSP的內(nèi)建對(duì)象JSP共有以下9種基本內(nèi)置組件(可與ASP的6種內(nèi)部組件相對(duì)應(yīng))request:用戶端請(qǐng)求,此請(qǐng)求會(huì)包含來(lái)自GET/POST請(qǐng)求的參數(shù)。response:網(wǎng)頁(yè)傳回用戶端的回應(yīng)。pageContext:網(wǎng)頁(yè)的屬性是在這里管理。session:與請(qǐng)求有關(guān)的會(huì)話期。applicationservlet:正在執(zhí)行的內(nèi)容。out:用來(lái)傳送回應(yīng)的輸出。configservlet:的構(gòu)架部件。pageJSP:網(wǎng)頁(yè)本身。exception:針對(duì)錯(cuò)誤網(wǎng)頁(yè),未捕捉的例外。2.1.5JSP的主要內(nèi)置組件:◆Request[請(qǐng)求]對(duì)象
Request對(duì)象用于接受所有從瀏覽器發(fā)往你的服務(wù)器的請(qǐng)求內(nèi)的所有信息。
與request相聯(lián)系的是HttpServletRequest類。通過(guò)getParameter方法可以得到request參數(shù),通過(guò)GET、POST、HEAD等方法可以得到request的類型,通過(guò)cookies、Referer等可以得到引入的HTTP頭。
◆Response[響應(yīng)]對(duì)象
Response對(duì)象用于向客戶端瀏覽器發(fā)送數(shù)據(jù),用戶可以使用該對(duì)象將服務(wù)器的數(shù)據(jù)發(fā)送到用戶端的瀏覽器。
與Response相聯(lián)系的是HttpServletResponse類。
◆Out對(duì)象
Out對(duì)象用于向客戶端輸出數(shù)據(jù)。
◆Session[工作]對(duì)象
Session對(duì)象用于分別保存每一個(gè)用戶信息的對(duì)象,以便于跟蹤用戶的操作狀態(tài)。
與Session相聯(lián)系的是HttpSession類,Session是自動(dòng)創(chuàng)建的。
注:不同的用戶對(duì)應(yīng)的Session對(duì)象一般是不相同的。
◆pageContext對(duì)象
pageContext對(duì)象用于管理對(duì)屬于JSP中特殊可見部分中已經(jīng)命名對(duì)象的訪問(wèn)。JSP中的一個(gè)新類。
◆Application[應(yīng)用程序]對(duì)象
Application對(duì)象用于在多個(gè)程序中保存信息。用來(lái)在所有用戶間共享信息,并可以在Web應(yīng)用程序運(yùn)行期間持久地保持?jǐn)?shù)據(jù)。
與application相聯(lián)系的是ServletContext類,通過(guò)使用getServletConfig().getContext()方法得到。一旦創(chuàng)建application對(duì)象,該對(duì)象將一直保持下去,直到服務(wù)器關(guān)閉為止。
注:每個(gè)用戶的application對(duì)象都是相同的,每一個(gè)用戶都共用同一個(gè)application對(duì)象。
◆Config對(duì)象
Config對(duì)象用于配置處理JSP程序的句柄,而且只有在JSP頁(yè)面范圍內(nèi)合法。
它是一個(gè)ServletConfig類的對(duì)象。
◆Page對(duì)象
Page對(duì)象僅用于保存在腳本的語(yǔ)言不是JAVA時(shí)的時(shí)間,在JAVA中不很實(shí)用。
2.2SQLSERVER2000技術(shù)簡(jiǎn)介SQLServer2000是由Microsoft開發(fā)和推廣的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開發(fā)的,并于1988年推出了第一個(gè)OS/2版本。SQLServer近年來(lái)不斷更新版本,1996年,Microsoft推出了SQLServer6.5版本;1998年,SQLServer7.0版本和用戶見面;SQLServer2000是Microsoft公司于2000年推出的版本。SQLServer特點(diǎn):1.真正的讀者機(jī)/服務(wù)器體系結(jié)構(gòu)。2.圖形化用戶界面,使系統(tǒng)管理和數(shù)據(jù)庫(kù)管理更加直觀、簡(jiǎn)單。3.豐富的編程接口工具,為用戶進(jìn)行程序設(shè)計(jì)提供了更大的選擇余地。4.SQLServer與WindowsNT完全集成,利用了NT的許多功能,如發(fā)送和接受消息,管理登錄安全性等。SQLServer也可以很好地與MicrosoftBackOffice產(chǎn)品集成。5.具有很好的伸縮性,可跨越從運(yùn)行Windows95/98的膝上型電腦到運(yùn)行Windows2000的大型多處理器等多種平臺(tái)使用。6.對(duì)Web技術(shù)的支持,使用戶能夠很容易地將數(shù)據(jù)庫(kù)中的數(shù)據(jù)發(fā)布到Web頁(yè)面上。7.SQLServer提供數(shù)據(jù)倉(cāng)庫(kù)功能,這個(gè)功能只在Oracle和其他更昂貴的DBMS中才有。
3需求分析3.1市場(chǎng)需求分析動(dòng)態(tài)新聞發(fā)布系統(tǒng)(DynamicNewsReleaseSystemorContentManagementSystem)又叫做內(nèi)容管理系統(tǒng),是一個(gè)基于新聞發(fā)布和內(nèi)容管理的全站管理系統(tǒng),新聞發(fā)布系統(tǒng)是基于B/S模式的WEBMIS系統(tǒng),本系統(tǒng)可以將雜亂無(wú)章的信息(包括文字、圖片和影音)經(jīng)過(guò)組織,合理有序地呈現(xiàn)在大家面前。當(dāng)今社會(huì)是一個(gè)信息化的社會(huì),新聞信息作為信息的一部分有著信息量大,類別繁多,形式多樣的特點(diǎn),新聞發(fā)布系統(tǒng)的概念就此提出。新聞發(fā)布系統(tǒng)的提出使電視不再是唯一的新聞媒體,從此以后網(wǎng)絡(luò)也充當(dāng)了一個(gè)重要的新聞媒介的功能。簡(jiǎn)單地說(shuō),新聞發(fā)布系統(tǒng)就是充當(dāng)一個(gè)網(wǎng)絡(luò)新聞媒介的功能,主要實(shí)現(xiàn)對(duì)新聞的分類、上傳、審核、發(fā)布,模擬了一般新聞媒介的新聞發(fā)布的過(guò)程,通過(guò)不同權(quán)限的賬號(hào)分別實(shí)現(xiàn)以上所說(shuō)功能,當(dāng)然這些功能也可以是某一個(gè)賬號(hào)全部具有。隨著互聯(lián)網(wǎng)的進(jìn)一步發(fā)展,網(wǎng)絡(luò)媒體在人們心中的地位進(jìn)一步提高,新聞發(fā)布系統(tǒng)作為網(wǎng)絡(luò)媒體的核心系統(tǒng),其重要性是越來(lái)越重要:一方面,它提供一個(gè)新聞管理和發(fā)布的功能;另一方面,現(xiàn)在的新聞發(fā)布要求實(shí)現(xiàn)與普通的用戶實(shí)現(xiàn)交互,用戶可以很方便地參加一些調(diào)查和相關(guān)新聞的評(píng)論,這一點(diǎn)也是其他一些媒體現(xiàn)在無(wú)法做到的(電視、電臺(tái)等),同時(shí),INTERNET發(fā)展到當(dāng)今,可以說(shuō),只要你上INTERNET,你就會(huì)接觸到新聞發(fā)布系統(tǒng),新聞發(fā)布系統(tǒng)的用戶是相當(dāng)驚人的,其重要性是不容置疑的。在素質(zhì)教育與終身教育成為必然的今天,人們對(duì)信息的需求有了更新、更高的要求,而網(wǎng)頁(yè)由于本身所具有的信息量大,傳遞速度快,沒(méi)有時(shí)空限制等特點(diǎn)恰好滿足了這種要求。所以網(wǎng)頁(yè)也逐漸成為一種新興的教育資源。在校園網(wǎng)盛行的今天,每個(gè)學(xué)校都有其自己精彩的網(wǎng)站,而網(wǎng)站中的新聞發(fā)布系統(tǒng)幾乎是必不可少的。新聞發(fā)布及管理在校園網(wǎng)中具有廣泛的應(yīng)用,隨著時(shí)代的進(jìn)步,信息的社會(huì)化,學(xué)校作為教育的前沿地帶,研究和開發(fā)學(xué)校新聞發(fā)布系統(tǒng),有著重要的意義,當(dāng)然這也對(duì)新聞發(fā)布系統(tǒng)的開發(fā)提出了更高的要求。3.2任務(wù)目標(biāo)3.2.1新聞發(fā)布系統(tǒng)的特點(diǎn)與一般的信息系統(tǒng)相比較,新聞發(fā)布系統(tǒng)具有以下特征:是基于B/S模式下的WEB信息系統(tǒng),數(shù)據(jù)庫(kù)邏輯相對(duì)簡(jiǎn)單,但數(shù)據(jù)量一般比較龐大;用戶數(shù)量大,服務(wù)器壓力大,是系統(tǒng)設(shè)計(jì)中必須考慮的問(wèn)題之一,而一般的信息系統(tǒng)相對(duì)壓力要少了很多;系統(tǒng)是一個(gè)開放式的系統(tǒng),前臺(tái)瀏覽無(wú)需驗(yàn)證。3.2.2對(duì)性能的規(guī)定(1)操作應(yīng)方便、靈活。(2)系統(tǒng)應(yīng)有較高的穩(wěn)定性。(3)系統(tǒng)應(yīng)有較高的安全性。(4)系統(tǒng)應(yīng)有較高的容錯(cuò)性。(5)速度上要求前臺(tái)要能夠很快地反應(yīng)用戶,后臺(tái)操作不能出現(xiàn)超時(shí)現(xiàn)象。3.2.3數(shù)據(jù)管理能力要求(1)能處理大量的新聞數(shù)據(jù)。(2)安全指數(shù)高,防止黑客攻擊。(3)負(fù)荷能力強(qiáng),防止數(shù)據(jù)量過(guò)大,而影響速度。3.2.4應(yīng)用目標(biāo)新聞發(fā)布系統(tǒng)是以JSP網(wǎng)頁(yè)編程+ACCESS數(shù)據(jù)庫(kù),其系統(tǒng)功能在Tomcat服務(wù)器上運(yùn)行。用戶都可以了解系統(tǒng)軟件的基本工作原理。用戶只需進(jìn)行一些簡(jiǎn)單的操作即可達(dá)到自己想要的目的。3.3運(yùn)行環(huán)境為了保證新聞發(fā)布系統(tǒng)運(yùn)行的效率和可靠性,服務(wù)器應(yīng)具有較高的軟硬件配置,客戶端的要求不是很高。此應(yīng)用程序可廣泛運(yùn)行于國(guó)際互聯(lián)網(wǎng)即Internet,也可適用于內(nèi)部的局域網(wǎng)。其運(yùn)行要求如下:
軟件環(huán)境:
客戶端:Windows95/98/2000/XP,InternetExplorer(IE)等。服務(wù)器端:Windows95/98/2000/XP,InternetExplorer(IE)等數(shù)據(jù)庫(kù):采用Access和SQL,運(yùn)行于服務(wù)器端。
程序基于JSP+JavaBean開發(fā),數(shù)據(jù)庫(kù)可以使用MySQL數(shù)據(jù)庫(kù)。開發(fā)平臺(tái):WinXP+Apache2.0.52+Tomcat7.0+JDK1.54系統(tǒng)概要設(shè)計(jì)4.1總體功能WEB動(dòng)態(tài)新聞發(fā)布系統(tǒng)WEB動(dòng)態(tài)新聞發(fā)布系統(tǒng)管理員用戶用戶管理新聞管理新聞分類管理公告管理留言管理在線留言新聞搜索發(fā)布和瀏覽新聞圖4.1系統(tǒng)功能圖系統(tǒng)角色:1.游客:可以搜索、瀏覽新聞,不能評(píng)論新聞2.會(huì)員:可以搜索、瀏覽新聞,評(píng)論新聞,可以修改密碼等個(gè)人信息3.編輯:對(duì)新聞進(jìn)行編輯、發(fā)布,可以添加刪除修改新聞4.管理員:擁有系統(tǒng)最高權(quán)限,可以添加刪除修改新聞,能夠添加、修改和刪除新聞欄目,還能夠添加、刪除和修改用戶的信息,能夠?qū)λ械男侣劙凑拯c(diǎn)擊量進(jìn)行排行,對(duì)分欄的新聞也一樣按照點(diǎn)擊量進(jìn)行排行。前臺(tái):首頁(yè):1.新聞分類:(國(guó)際娛樂(lè)體育等等)新聞分類需要從數(shù)據(jù)庫(kù)中動(dòng)態(tài)取出(因?yàn)楹笈_(tái)中有添加刪除修改分類的功能)可以只顯示4—5個(gè)分類,后面加個(gè)“更多”鏈接,來(lái)羅列所有分類2.新聞搜索:(可以選擇分類)以新聞標(biāo)題模糊搜索,有分頁(yè)功能3.熱點(diǎn)新聞:按新聞點(diǎn)擊率高低顯示前10條左右的新聞(顯示點(diǎn)擊率)4.最新新聞:顯示最新添加的新聞(顯示日期)5.公告欄:顯示公告信息6.登錄:可選角色有用戶、管理員,有注冊(cè)鏈接按鈕,找回密碼鏈接用戶可以對(duì)新聞進(jìn)行評(píng)論,游客點(diǎn)擊評(píng)論時(shí)提示注冊(cè)注冊(cè)時(shí)包含密碼提示問(wèn)題,以便找回密碼,注冊(cè)驗(yàn)證用ajax動(dòng)態(tài)驗(yàn)證,有分頁(yè)功能,包含在線文本編輯器登陸后有歡迎信息:“您好,XXX”后臺(tái):管理員擁有所有權(quán)限新聞分類管理分類列表(包含刪除、修改)添加分類新聞管理新聞列表(包含刪除、修改新聞)添加新聞(支持新聞、圖片上傳)查找新聞(包含刪除、修改新聞)評(píng)論管理公告修改會(huì)員管理會(huì)員列表(包含刪除)查找用戶(包含刪除)修改密碼用戶:修改密碼等個(gè)人信息系統(tǒng)采用了敏捷開發(fā)的思想,結(jié)合跨平臺(tái)的J2EE技術(shù)架構(gòu),數(shù)據(jù)庫(kù)采用了SQLserver;使得系統(tǒng)具有易用性、個(gè)性化、跨平臺(tái)等特點(diǎn);同時(shí)又保證數(shù)據(jù)的安全、穩(wěn)定、快速和完整;使其運(yùn)行得高速、安全、穩(wěn)定。4.2E-R圖密碼密碼用戶名用戶管理信息新聞分類新聞?dòng)脩艄芾砻艽a管理圖4.2系統(tǒng)ER圖5系統(tǒng)詳細(xì)設(shè)計(jì)5.1數(shù)據(jù)庫(kù)的搭建數(shù)據(jù)只有用數(shù)據(jù)庫(kù)來(lái)管理才能有自動(dòng)化管理的可能。數(shù)據(jù)的結(jié)構(gòu)將影響整個(gè)管理機(jī)制的應(yīng)用,而且一旦建立,以后要修改常會(huì)出現(xiàn)麻煩。所以一開始就要仔細(xì)慎重地搭建一個(gè)完整而合理的結(jié)構(gòu)。MicrosoftAccess數(shù)據(jù)庫(kù)相對(duì)其它的數(shù)據(jù)庫(kù)來(lái)說(shuō)要簡(jiǎn)單容易操作些,新聞發(fā)布系統(tǒng)中的數(shù)據(jù)庫(kù)文件就是Access類型的數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)中共有七張表頁(yè)面模塊化,頁(yè)首和頁(yè)腳,blog排序都模塊化,所有用到的頁(yè)面直接include,方便維護(hù)和修改。本案例架構(gòu)——MVC功能模塊三層結(jié)構(gòu)架構(gòu)本實(shí)例采用三層架構(gòu)設(shè)計(jì),它的工作原理如圖5.1所示。圖5.1三層架構(gòu)的工作原理圖采用三層架構(gòu)以后,用戶界面層通過(guò)統(tǒng)一的接口向業(yè)務(wù)層發(fā)送請(qǐng)求,業(yè)務(wù)層按自己的邏輯規(guī)則將請(qǐng)求處理之后進(jìn)行數(shù)據(jù)庫(kù)操作,然后將數(shù)據(jù)庫(kù)返回的數(shù)據(jù)封裝成類的形式返回給用戶界面層。這樣用戶界面層甚至可以不知道數(shù)據(jù)庫(kù)的結(jié)構(gòu),它只要維護(hù)與業(yè)務(wù)層之間的接口即可。這種方式在一定程度上增加了數(shù)據(jù)庫(kù)的安全性,同時(shí)也降低了對(duì)用戶界面層開發(fā)人員的要求,因?yàn)樗静恍枰M(jìn)行任何數(shù)據(jù)庫(kù)操作。上面javaBean通過(guò)返回對(duì)象的形式來(lái)返回?cái)?shù)據(jù),在類的內(nèi)部可以規(guī)定哪些數(shù)據(jù)可訪問(wèn),那些數(shù)據(jù)是只讀的等,從而通過(guò)封裝數(shù)據(jù)達(dá)到再一次提高數(shù)據(jù)的安全性的目的。5.2后臺(tái)數(shù)據(jù)庫(kù)設(shè)計(jì)5.2.1SQLServer2000介紹SQLServer2000是由Microsoft開發(fā)和推廣的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開發(fā)的,并于1988年推出了第一個(gè)OS/2版本。SQLServer近年來(lái)不斷更新版本,1996年,Microsoft推出了SQLServer6.5版本;1998年,SQLServer7.0版本和用戶見面;SQLServer2000是Microsoft公司于2000年推出的版本。SQLServer特點(diǎn):1.真正的讀者機(jī)/服務(wù)器體系結(jié)構(gòu)。2.圖形化用戶界面,使系統(tǒng)管理和數(shù)據(jù)庫(kù)管理更加直觀、簡(jiǎn)單。3.豐富的編程接口工具,為用戶進(jìn)行程序設(shè)計(jì)提供了更大的選擇余地。4.SQLServer與WindowsNT完全集成,利用了NT的許多功能,如發(fā)送和接受消息,管理登錄安全性等。SQLServer也可以很好地與MicrosoftBackOffice產(chǎn)品集成。5.具有很好的伸縮性,可跨越從運(yùn)行Windows95/98的膝上型電腦到運(yùn)行Windows2000的大型多處理器等多種平臺(tái)使用。6.對(duì)Web技術(shù)的支持,使用戶能夠很容易地將數(shù)據(jù)庫(kù)中的數(shù)據(jù)發(fā)布到Web頁(yè)面上。7.SQLServer提供數(shù)據(jù)倉(cāng)庫(kù)功能,這個(gè)功能只在Oracle和其他更昂貴的DBMS中才有。5.2.2數(shù)據(jù)庫(kù)表結(jié)構(gòu)為了滿足系統(tǒng)存儲(chǔ)數(shù)據(jù)需要,方便進(jìn)行插入,更新,統(tǒng)計(jì)和查詢分析等操作,數(shù)據(jù)一共設(shè)計(jì)為兩個(gè)部分,第一部分為滿足插入,更新,刪除較多的數(shù)據(jù)存儲(chǔ)。第二部分為滿足查詢和統(tǒng)計(jì)分析。為了方便進(jìn)行數(shù)據(jù)庫(kù)之間的遷移,數(shù)據(jù)庫(kù)中不建議采用存儲(chǔ)過(guò)程,觸發(fā)器等數(shù)據(jù)庫(kù)特征明顯的代碼,所有表建立,操作SQL均采用標(biāo)準(zhǔn)語(yǔ)句。數(shù)據(jù)庫(kù)表結(jié)構(gòu)如下:管理員表(admin)表5-1管理員表列名數(shù)據(jù)類型長(zhǎng)度允許空IdInt4否UsernameNvarchar50否PasswordNvarchar50否CreattimeDatetime8否FlagInt4否IsuseInt4否LogintimesInt4否QuanxianNvarchar1000否新聞表(news)表5-2新聞表列名數(shù)據(jù)類型長(zhǎng)度允許空IdInt4否TitleNvarchar150否PicNvarchar150否ContentText16否AddtimeDatetime8否AdderNvarchar50否IfhideInt4否VisitInt4否UpInt4否用戶表(member)表5-3用戶表列名數(shù)據(jù)類型長(zhǎng)度允許空Id Int4否Usernamenvarchar50否PasswordNvarchar100否TypeNvarchar50否RegtimeDatetime8否IfuseInt4否LogintimesInt4否LasttimeDatetime8否LastipNvarchar50否(4)游客表(guestbook)表5-4游客表列名數(shù)據(jù)類型長(zhǎng)度允許空IdInt4否NicknameNvarchar100否PicNvarchar100否EmailN50是QQNvarchar50是WeburlNvarchar100是BlogurlNvarchar100是ExpressionsNvarchar100否ContentNvarchar200否AddtimeDatetime8否5.3處理流程設(shè)計(jì)5.3.1系統(tǒng)操作流程系統(tǒng)登錄界面輸入操作員及密碼系統(tǒng)主界面系統(tǒng)管理錯(cuò)誤信息系統(tǒng)登錄界面輸入操作員及密碼系統(tǒng)主界面系統(tǒng)管理錯(cuò)誤信息數(shù)據(jù)庫(kù)檢查密碼錯(cuò)誤 數(shù)據(jù)庫(kù)檢查密碼錯(cuò)誤密碼正確功能界面功能處理密碼正確功能界面功能處理圖5.2系統(tǒng)操作流程圖5.3.2數(shù)據(jù)增加流程添加信息時(shí),編號(hào)字段由系統(tǒng)自動(dòng)生成,且不能修改,其他信息由用戶輸入,之后對(duì)數(shù)據(jù)進(jìn)行合法判斷,合法則寫入保存至數(shù)據(jù)庫(kù),不合法則重新輸入數(shù)據(jù)。數(shù)據(jù)增加流程圖如圖5.3所示:開始開始自動(dòng)生成編號(hào)輸入數(shù)據(jù)是否合法寫入數(shù)據(jù)庫(kù)結(jié)束圖5.3數(shù)據(jù)增加流程圖5.3.3數(shù)據(jù)修改流程在修改信息時(shí),先選中一條待修改的記錄,然后直接輸入數(shù)據(jù),判斷合法性,合法則保存至數(shù)據(jù)庫(kù),不合法重新輸入。數(shù)據(jù)修改流程圖如圖5.4所示。開始開始選擇需要修改記錄輸入數(shù)據(jù)是否合法寫入數(shù)據(jù)庫(kù)結(jié)束圖5.4數(shù)據(jù)修改流程圖5.3.4數(shù)據(jù)刪除流程當(dāng)用戶選定一條記錄時(shí),單擊刪除按鈕,會(huì)提示用戶是否確定刪除,然后刪除數(shù)據(jù)庫(kù)相關(guān)內(nèi)容。數(shù)據(jù)刪除流程圖如圖5.5所示。開始開始選擇需要?jiǎng)h除記錄是否刪除更新數(shù)據(jù)庫(kù)圖5.5數(shù)據(jù)刪除流程圖
6部分編碼實(shí)現(xiàn)6.1管理員登陸在用戶登錄界面,在用戶名對(duì)應(yīng)的文本框中輸入用戶名,在密碼對(duì)應(yīng)的文本框中輸入密碼,如果用戶名和密碼同時(shí)與數(shù)據(jù)庫(kù)中的用戶名和密碼相對(duì)應(yīng),點(diǎn)擊“確定”后進(jìn)入系統(tǒng)的主界面。如果輸入的信息不正確,則給出提示。輸入:用戶名和密碼。處理:校檢字符的有效性。用戶要登錄本系統(tǒng)需要提供用戶名和密碼,在這里就是要檢驗(yàn)用戶是否滿足輸入的要求,即檢驗(yàn)用戶名和密碼文本框是否為空,若為空,則提示用戶輸入用戶名和密碼。檢驗(yàn)用戶名是否存在或密碼是否正確,即是否存在用戶輸入的用戶名,并且密碼是否正確。輸出:登錄成功,進(jìn)入用戶的系統(tǒng)使用資源頁(yè)面,不成功則顯示錯(cuò)誤信息頁(yè)面。圖6.1管理員登陸界面圖主要代碼如下:packageutil;importjava.sql.*;publicclassDBConn{static{try{ Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");// Class.forName("com.mysql.jdbc.Driver");//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(Exceptionex){ex.printStackTrace();}}publicstaticConnectiongetConn(){try{ Connectionconn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;databasename=hshygl","sa","123");// conn=DriverManager.getConnection("jdbc:mysql://localhost/fzshop","root","123");// Connectionconn=DriverManager.getConnection("jdbc:odbc:temp");returnconn;}catch(Exceptionex){ex.printStackTrace();returnnull;}}publicstaticvoidclose(Connectionconn,Statementst,ResultSetrs){ if(rs!=null){try{rs.close();}catch(SQLExceptionex){}}if(st!=null){try{st.close();}catch(Exceptionex){}}if(conn!=null){try{conn.close();}catch(Exceptionex){}6.2新聞管理功能描述:此模塊要實(shí)現(xiàn)對(duì)新聞的管理功能,管理員可以添加刪除和修改新聞的相關(guān)信息。新聞信息管理模塊的IPO過(guò)程:a) 添加新聞信息操作: 點(diǎn)擊添加新聞信息按鈕,輸入需要添加新聞的內(nèi)容。內(nèi)容包括新聞的標(biāo)題、內(nèi)容、分類。 檢驗(yàn)用戶輸入的新聞的標(biāo)題、內(nèi)容、分類是否符合新聞數(shù)據(jù)庫(kù)表中字段定義。若不符合則提示輸入有誤。 提示用戶信息添加成功。 更新用戶數(shù)據(jù)庫(kù)表的信息。b) 修改新聞信息 點(diǎn)擊修改新聞信息按鈕。內(nèi)容包括新聞的標(biāo)題、內(nèi)容、分類。檢驗(yàn)用戶輸入的新聞的標(biāo)題、內(nèi)容、分類是否符合用戶數(shù)據(jù)庫(kù)表中字段定義。若不符合則提示輸入有誤。 如果用記錄存在,進(jìn)行修改操作,輸入新的字段,并根據(jù)用戶數(shù)據(jù)庫(kù)表中對(duì)應(yīng)字段的定義檢查輸入是否合法,如果輸入有錯(cuò)誤則進(jìn)行提示。 如果輸入正確,執(zhí)行(UPDATE)SQL語(yǔ)句,更新用戶數(shù)據(jù)庫(kù)表中該用戶所對(duì)應(yīng)的記錄。 提示用戶信息添加成功。 更新用戶數(shù)據(jù)庫(kù)表的信息。界面如圖6.2所示:圖6.2新聞管理界面圖主要代碼如下:packageutil;importjava.io.UnsupportedEncodingException;importjava.text.SimpleDateFormat;importjava.util.Date;publicclassValidate{ /** *是否為數(shù)字和英文驗(yàn)證 * */ publicintgetIntAndChar(Stringstr){ charc; inti; for(i=0;i<str.length();i++){ c=str.charAt(i); if(!((c>='0'&&c<='9')||(c>='a'&&c<='z')||(c>='A'&&c<='Z'))){ break; } }//判斷字符是否在某個(gè)區(qū)間 if(i<str.length()){ return-1; }else{ return0; } } /** *是否為整數(shù)驗(yàn)證 * */ publicintgetInt(Stringstr){ charc; inti; for(i=0;i<str.length();i++){ c=str.charAt(i); if(!(c>='0'&&c<='9')){ break; } }//判斷字符是否在某個(gè)區(qū)間 if(i<str.length()){ return-1; }else{ return0; } } /** *是否為非法字符驗(yàn)證 * */ publicbooleangetLawlessChar(Stringstr){ booleanflag=false; charc; for(inti=0;i<str.length();i++){ c=str.charAt(i); switch(c){ case'<':flag=true;break; case'>':flag=true;break; case'"':flag=true;break; case'&':flag=true;break; case'':flag=true;break; } } returnflag; }6.3首頁(yè)界面圖6.3首頁(yè)界面圖主要代碼如下:<%@pagelanguage="java"import="java.util.*"contentType="text/html;charset=gb2312"%><%@includefile="iframe/head.jsp"%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""/TR/1999/REC-html401-19991224/loose.dtd"><HTMLxmlns="/1999/xhtml"><HEAD><LINKhref="images/default.css"type=text/cssrel=stylesheet><LINKhref="images/css.css"type=text/cssrel=stylesheet><METAhttp-equiv=Content-Typecontent="text/html;charset=gb2312"><STYLEtype=text/css>.ycbt{ BORDER-RIGHT:#fff1pxsolid;BORDER-TOP:#fff1pxsolid;PADDING-LEFT:1.8em;BACKGROUND-COLOR:#EAF2EF;BORDER-LEFT:#fff1pxsolid;PADDING-TOP:7px;BORDER-BOTTOM:#fff1pxsolid;HEIGHT:20px}.xsbt{ BORDER-RIGHT:#fff1pxsolid;BORDER-TOP:#fff1pxsolid;PADDING-LEFT:1.8em;BACKGROUND-IMAGE:url(images/head1.gif);BORDER-LEFT:#fff1pxsolid;PADDING-TOP:7px;BORDER-BOTTOM:#fff1pxsolid;HEIGHT:20px}.xsnr{ DISPLAY:block}.ycnr{ DISPLAY:none}</STYLE><SCRIPTtype=text/javascript>functiontb_xs(t,m,n){for(vari=1;i<=m;i++){if(i!=n){document.getElementById("tb"+t+"_bt"+i).className="ycbt";document.getElementById("tb"+t+"_nr"+i).className="ycnr";}else{document.getElementById("tb"+t+"_bt"+i).className="xsbt";document.getElementById("tb"+t+"_nr"+i).className="xsnr";}}}</SCRIPT><SCRIPTlanguage=JavaScript><!--//屏蔽出錯(cuò)代碼functionkillErr(){ returntrue;}window.onerror=killErr;//--></SCRIPT><SCRIPTlanguage=JavaScript><!--//處理大分類一行兩個(gè)小分類functionautoTable(div){ fs=document.getElementById(div).getElementsByTagName("TABLE"); for(vari=0;i<fs.length;i++){ fs[i].style.width='49.5%'; if(i%2==1){ if(document.all){ fs[i].style.styleFloat="right"; }else{ fs[i].style.cssFloat="right;"; } }else{ if(document.all){ fs[i].style.styleFloat="left"; }else{ fs[i].style.cssFloat="left;"; } } }}//--></SCRIPT><SCRIPTlanguage=JavaScriptsrc="images/inc.js"></SCRIPT><SCRIPTlanguage=JavaScriptsrc="images/default.js"></SCRIPT><SCRIPTlanguage=JavaScriptsrc="images/swfobject.js"></SCRIPT><METAcontent="MSHTML6.00.2900.3268"name=GENERATOR></HEAD><BODYtext=#000000bgColor=#ffffffleftMargin=0topMargin=0><SCRIPTlanguage=JavaScript><!--//目的是為了做風(fēng)格方便document.write('<divclass="wrap">');//--></SCRIPT><TABLEclass=MainTablecellSpacing=0cellPadding=0width="100%"align=centerborder=0><TBODY><TR><TDvAlign=topwidth="37%"height=200><!--*******************************幻燈開始*******************************--><TABLEclass=dragTablecellSpacing=0cellPadding=0width="100%"align=centerborder=0><TBODY><TR><TDclass=headid=tb1_bt1onmouseover=tb_xs(1,2,1)width="100%"height="30"><SPANclass=TAG>最新資訊</SPAN> </TD> </TR><TR> <TDclass=middlealign="left"colspan="2"><!--*******************************新聞資訊**********************************--><SCRIPTtype=text/javascript>varimgUrl=newArray();varimgtext=newArray();varimgLink=newArray();imgUrl[0]='images/1.jpg';imgLink[0]='';imgtext[0]='51黃金旅游';imgUrl[1]='images/2.jpg';imgLink[1]='';imgtext[1]='旅游線路大促銷';imgUrl[2]='images/3.jpg';imgLink[2]='';imgtext[2]='最新景點(diǎn)大全';imgUrl[3]='images/4.jpg';imgLink[3]='';imgtext[3]='風(fēng)格無(wú)限美女走光'; varpics=imgUrl[0];varlinks=imgLink[0];vartexts=imgtext[0];for(vari=1;i<imgUrl.length;i++){ pics+='|'+imgUrl[i]; links+='|'+imgLink[i]; texts+='|'+imgtext[i];}varfocus_width=330varfocus_height=178vartext_height=22varswf_height=focus_height+text_heightdocument.write('<objectclassid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"codebase="/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"width="'+focus_width+'"height="'+swf_height+'">');document.write('<paramname="allowScriptAccess"value="sameDomain"/><paramname="movie"value="<%=basePath%>images/rollpic.swf"/><paramname="quality"value="high"/><paramname="bgcolor"value="#F0F0F0">');document.write('<paramname="menu"value="false"><paramname=wmodevalue="opaque">');document.write('<paramname="FlashVars"value="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'">');document.write('<embedsrc="<%=basePath%>images/rollpic.swf"wmode="opaque"FlashVars="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'"menu="false"bgcolor="#F0F0F0"quality="high"width="'+focus_width+'"height="'+focus_height+'"allowScriptAccess="sameDomain"type="application/x-shockwave-flash"pluginspage="/go/getflashplayer"/>');document.write('</object>');</SCRIPT> </TD> </TR> </TBODY> </TABLE><!--*******************************幻燈結(jié)束*******************************--> </TD><TDclass=SidevAlign=topalign=leftwidth="37%"height=200><!--*******************************新聞資訊開始*******************************--><TABLEclass=dragTablecellSpacing=0cellPadding=0width="100%"align=centerborder=0><TBODY><TR><TDclass=headid=tb1_bt1onmouseover=tb_xs(1,2,1)width="100%"height="30"><SPANclass=TAG>最新資訊</SPAN> </TD> </TR><TR> <TDclass=middlealign="left"colspan="2"><!--*******************************新聞資訊**********************************--><TABLEclass=xsnrid=tb1_nr1cellSpacing=0cellPadding=0width="100%"border=0><TBODY><%if(!newsList.isEmpty()){ for(intnews11=0;news11<newsList.size();news11++){ ListnewsList2=(List)newsList.get(news11); %> <TR><TDalign="left"> <Ahref=<%=basePath%>newsinfo.jsp?id=<%=newsList2.get(0).toString()%>target=_blank> <%=newsList2.get(1).toString().length()>17?newsList2.get(1).toString().substring(0,17):newsList2.get(1).toString()%></A><BR> </TD> <TDalign="right"> <%=newsList2.get(2).toString().substring(0,10)%><BR> </TD> </TR> <%}}%> </TBODY> </TABLE> </TD> </TR> </TBODY> </TABLE><!--*******************************新聞資訊結(jié)束*******************************--> </TD><TDclass=SidevAlign=topalign=rightwidth="25%"><!--*******************************滾動(dòng)公告開始*******************************--><TABLEwidth="100%"height="240"border=0cellPadding=0cellSpacing=0class=dragTable> <TBODY><TR><TDclass=head><SPANclass=TAG><P>站內(nèi)公告</P></SPAN> </TD> </TR><TR><TDclass=middlealign=left><MARQUEEonmouseover=if(document.all!=null){this.stop()}onmouseout=if(document.all!=null){this.start()}scrollAmount=1scrollDelay=1direction=upheight=180><TABLEcellSpacing=0cellPadding=0width="100%"border=0><TBODY><%if(!affList.isEmpty()){ for(intaff=0;aff<affList.size();aff++){ ListaffList2=(List)affList.get(aff); %> <TR><TDwidth="100%"> <%=affList2.get(1).toString()%><%=affList2.get(2).toString()%><BR> </TD> </TR> <% } } %> </TBODY> </TABLE> </MARQUEE> </TD> </TR> </TBODY><!--*******************************滾動(dòng)公告結(jié)束*******************************--> </TABLE></TD></TR></TBODY></TABLE><!--*******************************2個(gè)信息分類開始*******************************--><TABLEclass=MainTablecellSpacing=0cellPadding=0width="100%"align=centerborder=0><TBODY><TR><TDvAlign=topwidth="49%"height=200><!--*******************************幻燈開始*******************************--><TABLEclass=dragTablecellSpacing=0cellPadding=0width="100%"align=centerborder=0><TBODY><TR><TDclass=headid=tb1_bt1onmouseover=tb_xs(1,2,1)width="100%"height="30"><SPANclass=TAG>熱點(diǎn)新聞</SPAN> </TD> </TR><TR> <TDclass=middlealign="left"colspan="2"><!--*******************************新聞資訊**********************************--><TABLEclass=xsnrid=tb1_nr1cellSpacing=0cellPadding=0width="100%"border=0><TBODY><TR><TDalign="center">新聞標(biāo)題</TD> <TDalign="center">新聞分類<BR> <TDalign="center">發(fā)布時(shí)間<BR> <TDalign="center">發(fā)布人<BR> <TDalign="center">點(diǎn)擊率<BR> </TD> </TR><%Listhlist=news.get10HotNews();if(!hlist.isEmpty()){ for(intnews11=0;news11<hlist.size();news11++){ ListnewsList2=(List)hlist.get(news11); %> <TR><TDalign="left"> <Ahref=<%=basePath%>newsinfo.jsp?id=<%=newsList2.get(0).toString()%>target=_blank> <%=newsList2.get(1).toString().length()>17?newsList2.get(1).toString().substring(0,17):newsList2.get(1).toString()%></A><BR> </TD> <TDalign="center"><%=newsList2.get(2).toString()%><BR> <TDalign="center"><%=newsList2.get(4).toString().substring(0,10)%><BR> <TDalign="center"><%=newsList2.get(5).toString()%><BR> <TDalign="center"><%=newsList2.get(6).toString()%><BR> </TD> </TR> <%}}%> </TBODY> </TABLE> </TD> </TR> </TBODY> </TABLE><!--*******************************幻燈結(jié)束*******************************--> </TD><TDclass=SidevAlign=topalign=leftwidth="49%"height=200><!--*******************************新聞資訊開始*******************************--><TABLEclass=dragTablecellSpacing=0cellPadding=0width="100%"align=centerborder=0><TBODY><TR><TDclass=headid=tb1_bt1onmouseover=tb_xs(1,2,1)width="100%"height="30"><SPANclass=TAG>新聞列表</SPAN> </TD> </TR><TR> <TDclass=middlealign="left"colspan="2"><!--*******************************新聞資訊*****************************
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 租賃轉(zhuǎn)讓合同范本
- 臨時(shí)勞動(dòng)合同模板及協(xié)議書
- 個(gè)人股權(quán)轉(zhuǎn)讓合同條款示例
- 個(gè)人汽車抵押貸款合同協(xié)議
- 專賣店雇傭合同范本官方版
- 專業(yè)潛水船租賃合同范本大全
- 個(gè)人與公司借款合同
- 中小企業(yè)短期流動(dòng)資金貸款合同
- 主體勞務(wù)分包合作合同范本XX
- 主材采購(gòu)合同協(xié)議
- 2024年資格考試-對(duì)外漢語(yǔ)教師資格證筆試參考題庫(kù)含答案
- 2024年4月自考02382管理信息系統(tǒng)答案及評(píng)分參考
- (蘇版)初三化學(xué)上冊(cè):第2單元課題1空氣
- 2023年12月廣東珠海市軌道交通局公開招聘工作人員1人筆試近6年高頻考題難、易錯(cuò)點(diǎn)薈萃答案帶詳解附后
- 腹腔鏡腎上腺腫瘤切除術(shù)查房護(hù)理課件
- 燃?xì)庹质綘t應(yīng)急預(yù)案
- 專題23平拋運(yùn)動(dòng)臨界問(wèn)題相遇問(wèn)題類平拋運(yùn)和斜拋運(yùn)動(dòng)
- 超聲科醫(yī)德醫(yī)風(fēng)制度內(nèi)容
- 高三開學(xué)收心班會(huì)課件
- 蒸汽換算計(jì)算表
- 四年級(jí)計(jì)算題大全(列豎式計(jì)算,可打印)
評(píng)論
0/150
提交評(píng)論