版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
整理為word格式整理為word格式整理為word格式摘要本次畢業(yè)設(shè)計(jì)的題目是校園二手物品交易網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)。本論文就畢業(yè)設(shè)計(jì)的內(nèi)容,系統(tǒng)地闡述了整個校園二手物品交易網(wǎng)站的功能及實(shí)現(xiàn)。在指導(dǎo)老師的帶領(lǐng)下設(shè)計(jì)并實(shí)現(xiàn)了從二手物品管理,到公告實(shí)現(xiàn),用戶處理,再到管理員系統(tǒng)?;旧蠈?shí)現(xiàn)了校園二手物品信息發(fā)布的功能流程,能夠?qū)崿F(xiàn)用戶與商家在網(wǎng)上進(jìn)行互動交流。本系統(tǒng)界面簡單直觀,易于操作和使用,交互性強(qiáng)。伴隨著各種Web開發(fā)技術(shù)的發(fā)展,如今網(wǎng)上交易已經(jīng)變得十分容易。本文介紹的二手商品交易平臺是一個服務(wù)于在校學(xué)生的交易網(wǎng)站,通過本網(wǎng)站用戶可自由出售和購買商品,為廣大學(xué)生提供了平等互利、方便快捷的交易空間。校園二手商品交易平臺除了可以解決商務(wù)溝通,信息交流等問題外,更可以提高在校生的實(shí)際購買力,減少浪費(fèi),客觀上提高在校大學(xué)生的生活水平,比起傳統(tǒng)的二手交易,網(wǎng)上二手交易更加迅捷,實(shí)時性強(qiáng),信息充裕,發(fā)展空間巨大。
本課題根據(jù)二手交易網(wǎng)站的應(yīng)用需求,進(jìn)行需求分析,并對網(wǎng)站系統(tǒng)規(guī)劃設(shè)計(jì)。運(yùn)用JSP技術(shù)、Sqlserver等與后臺數(shù)據(jù)庫鏈接等關(guān)鍵技術(shù)建設(shè)二手商品交易平臺。實(shí)現(xiàn)了網(wǎng)上交易系統(tǒng)的會員登錄與注冊,網(wǎng)站首頁、商品信息瀏覽、購物車功能、新聞發(fā)布等功能。本網(wǎng)站是基于JSP進(jìn)行設(shè)計(jì)與開發(fā)的,數(shù)據(jù)庫是運(yùn)用SQLserver2008,操作系統(tǒng)采用的是Windows7系統(tǒng)。關(guān)鍵詞:校園二手物品;交易;管理系統(tǒng);系統(tǒng)實(shí)現(xiàn)整理為word格式整理為word格式整理為word格式AbstractThegraduationprojecttopicisthecampusdesignandimplementationofsecond-handgoodstradingsite.
Thepapersonthegraduationproject,systematicexpositionoftheentirecampusfunctionsandachievesecond-handgoodstransactionmanagementsystem.
Designedandimplementedfromthesecond-handgoodsmanagement,toachievetheannouncement,theuserhandle,thenadministratorofthesystemundertheguidanceofateachertolead.
Useditemscampusbasicallyrealizedthefunctionofinformationdisseminationprocess,andenablesuserstointeractonlineemerchants.
Thesystemissimpleandintuitiveinterface,easytooperateanduse,stronginteraction.
AlongwithvariousdevelopmentWebdevelopmenttechnologies,nowonlinetradinghasbecomeveryeasy.
Thisarticledescribesthesecond-handgoodstradingplatformisaservicetostudentsinthetradingsitecansellandbuygoodsthroughthesiteusersfreedom,equalityandmutualbenefitforthemajorityofstudentstoprovideaconvenientandefficienttradingspace.
Campushandgoodstradingplatforminadditiontosolvebusinesscommunication,informationexchangeandotherissues,butalsocanimprovetherealpurchasingpowerofstudents,reducewaste,improvelivingstandardsobjectivelycollegestudents,comparedtotraditionalsecondarytrading,onlinesecondarytradingmore
fast,real-time,informationabundant,hugespacefordevelopment.
Thedemandforsecond-handgoodssubjectaccordingtotheapplicationofe-commercesystems,requirementsanalysis,systemdesignandwebsite.
UsingJSPtechnology,Sqlserverandotherback-enddatabaselinkswithotherkeytechnologytobuildsecond-handgoodstradingplatform.
AchieveanonlinetradingsystemLoginandregistration,Home,productinformationbrowsing,shoppingcartfunctionality,pressreleasesandotherfunctions.整理為word格式整理為word格式整理為word格式
ThiswebsiteisdesignedanddevelopedbasedonJSP,thedatabaseistouseSQLserver2008,Windows7operatingsystemisusedinthesystem.
Keywords:Campushandgoods;trading;managementsystem;systemimplementation整理為word格式整理為word格式整理為word格式目錄1前言 11.1選題背景 11.2本課題的研究目的及意義 21.3可行性分析 31.3.1網(wǎng)站建設(shè)技術(shù)可行性 31.3.2網(wǎng)站建設(shè)經(jīng)濟(jì)可行性 31.3.3校園二手物品交易網(wǎng)站運(yùn)行的可行性 32系統(tǒng)需求分析和主要實(shí)現(xiàn)技術(shù) 52.1網(wǎng)站系統(tǒng)功能需求分析 52.2網(wǎng)站設(shè)計(jì)與開發(fā)的性能需求分析 52.3網(wǎng)站設(shè)計(jì)與開發(fā)的主要技術(shù)分析 62.3.1JSP分析 62.3.2Java語言介紹 72.3.3J2EE 82.3.4struts框架 93概要設(shè)計(jì) 123.1功能模塊圖 123.2處理流程設(shè)計(jì) 123.2.1系統(tǒng)操作流程 123.2.2數(shù)據(jù)增加流程 133.2.3數(shù)據(jù)修改流程 143.2.4數(shù)據(jù)刪除流程 154詳細(xì)設(shè)計(jì) 164.1系統(tǒng)E-R圖 164.2數(shù)據(jù)庫設(shè)計(jì) 164.2.1SQLServer2008介紹 164.2.2數(shù)據(jù)庫主要表單 184.2.3數(shù)據(jù)庫連接技術(shù) 194.3網(wǎng)站主要功能及代碼展示 244.3.1網(wǎng)站首頁 24整理為word格式整理為word格式整理為word格式4.3.2用戶注冊 244.3.3用戶登陸 254.3.4會員中心管理 274.3.5用戶購物選擇 284.3.6用戶提交訂單 294.3.7系統(tǒng)管理模塊設(shè)計(jì) 305系統(tǒng)平臺測試 345.1程序測試的重要性及目的 345.2網(wǎng)站完整購物過程展示 345.2.1網(wǎng)站首頁 345.2.2網(wǎng)站購物過程 356結(jié)論 40致謝 41參考文獻(xiàn) 42整理為word格式整理為word格式整理為word格式1前言1.1選題背景在全球知識經(jīng)濟(jì)和信息化高速發(fā)展的今天,無論是在生活、工作還是學(xué)習(xí)方面,信息都是決定成敗的關(guān)鍵,小到生活中的需求,大到企業(yè)的發(fā)展,特別是對企業(yè)實(shí)現(xiàn)跨地區(qū)、跨行業(yè)、跨國經(jīng)營,信息都起著至關(guān)重要的作用,而電子商務(wù)作為一種嶄新的商務(wù)運(yùn)作模式,越來越受到企業(yè)的重視。在如今的大學(xué)校園,伴隨著學(xué)生購買能力的提高和每年的升學(xué)和畢業(yè),這就導(dǎo)致了會存在各種類型二手物品的存在。目前,二手物品交易也伴隨著網(wǎng)上交易平臺的逐步擴(kuò)展成為了當(dāng)代大學(xué)生課余生活的一大熱門。其實(shí),現(xiàn)在在很多大學(xué)都會有這種情況,以我校為例,每年都會有一次紅紅火火的“跳蚤”市場,專門為大學(xué)生提供一個二手物品交易的平臺,可見大學(xué)生對二手物品交易的需求,同時這樣也避免了資源的浪費(fèi),但是,由于信息交流的落后,很多都局限于校園地?cái)偸圪u或者以發(fā)傳單的形式進(jìn)行宣傳的方式進(jìn)行交易。這種方式存在著很多的局限性和偶然性,遠(yuǎn)遠(yuǎn)無法滿足廣大學(xué)子對二手物品交易的需求。根據(jù)一項(xiàng)調(diào)查表示,針對二手交易的物品類型,92.4%的學(xué)生選擇交易的產(chǎn)品是書籍,特別是二手教材,70.1%的學(xué)生選擇電子產(chǎn)品,包括手機(jī)、電腦、照相機(jī)等,43.6%的學(xué)生選擇相關(guān)學(xué)習(xí)、生活用品、這項(xiàng)調(diào)查結(jié)果表明流通在學(xué)生二手市場的產(chǎn)品集中表現(xiàn)為書籍、電子產(chǎn)品、學(xué)習(xí)及生活相關(guān)用品。同時,由于當(dāng)今社會背景下,新產(chǎn)品更新?lián)Q代加快,學(xué)生購買產(chǎn)品一段時間后,愿意賣舊換新,或者有的學(xué)生在對產(chǎn)品使用一段時間后,想要購買檔次更高的同類產(chǎn)品,也會采取賣舊換新的做法,隨著每年學(xué)生的畢業(yè),眾多物品被選擇出售,因此校園二手交易網(wǎng)站也應(yīng)時代需求而被逐步重視。隨著社會的發(fā)展,產(chǎn)品的不斷更新?lián)Q代使得人們對物質(zhì)的要求越來越高,隨之而來的問題便是越來越多的校園二手貨物堆積了下來卻無法得到更好的利用。現(xiàn)在我們處在一個信息量高度膨脹地時代。當(dāng)今,人們處理的信息越來越多,幾乎比過去翻了幾翻于是,人們對信息處理工具計(jì)算機(jī)的要求越來越高。不僅需要計(jì)算機(jī)的處理速度越來越快,而且要求計(jì)算機(jī)的存儲量也越來越大。數(shù)據(jù)處理手工操作,工作量大,出錯率高,出錯后不易更改。與傳統(tǒng)的交換方式相比,物品交換網(wǎng)站是另一種形態(tài)的宣傳和交換通道,是傳統(tǒng)交換方式的延伸。它除了一般的電子商務(wù)功能外,還包括產(chǎn)品展示,商品檢索,在線交友等服務(wù);在迎合了電子商務(wù)這個社會大前提下,每個人都可以在網(wǎng)上購買或者交換自己喜歡的商品,從而可以大大地節(jié)約資金、時間和資源,并起到促進(jìn)整個社會和諧的作用。整理為word格式整理為word格式整理為word格式中國加入世界貿(mào)易組織,外國物流企業(yè)進(jìn)一步進(jìn)入中國物流市場,給中國帶來了新的物流服務(wù)理念,管理模式,以及新的物流技術(shù)與裝備,對中國物流的發(fā)展是一個巨大的推動從目前的種種情況來看,社會競爭越來越激烈,在這個競爭和效率并存的社會,人們有很強(qiáng)的時間觀念,信息社會的高科技,商品經(jīng)濟(jì)化的高效益,使網(wǎng)絡(luò)的應(yīng)用已普及到經(jīng)濟(jì)和社會生活的各個領(lǐng)域基于JSP模式的網(wǎng)絡(luò)購物網(wǎng)站克服了傳統(tǒng)銷售方式時所帶來的人力、物力以及時間上的浪費(fèi),同時也保證了銷售過程的科學(xué)化、高效化,使銷售過程方便、準(zhǔn)確、快捷。網(wǎng)絡(luò)的發(fā)展推動了客戶與商家之間的交易的高效性,網(wǎng)上銷售已經(jīng)成為主流。1.2本課題的研究目的及意義高校的二手交易市場是一個大市場,每年都有畢業(yè)生要畢業(yè),每年都有新生來報(bào)到,畢業(yè)生們不可能將幾年來留存下的東西都帶走,有些物品已成為累贅,賣掉反而還能賺些路費(fèi)。學(xué)生們的消費(fèi)水平本來也不高,都希望能買到物美價(jià)廉的商品,這個時候,網(wǎng)上二手交易市場的作用就發(fā)揮出來了。賣主可以在網(wǎng)上登記自己要處理的物品以及售賣價(jià)格,聯(lián)系方式,買主則可以在網(wǎng)上搜索自己所需要的若沒有,也可以在網(wǎng)上發(fā)布求購信息,當(dāng)然,網(wǎng)上二手交易市場不僅能處理畢業(yè)生的多余物品,平時學(xué)生們有任何閑置的東西或有任何需求都可以免費(fèi)在網(wǎng)上二手交易市場上得到處理,并且不限時間也不限地點(diǎn)。這一切只需要大家在電腦上點(diǎn)幾下鼠標(biāo)就萬事大吉了,其效率是先前面對面交易方式的數(shù)倍。隨著各種主流技術(shù)的日漸成熟,越來越多的校園二手市場交易網(wǎng)站涌現(xiàn)了出來,校園二手貨物得到了更好的二次利用。與傳統(tǒng)的交換方式相比,校園二手物品交易網(wǎng)站是另一種形態(tài)的宣傳和交換通道,是傳統(tǒng)交換方式的延伸。它除了一般的電子商務(wù)功能外,還包括產(chǎn)品展示,商品檢索等服務(wù);在迎合了電子商務(wù)這個社會大前提下,每個人都可以在網(wǎng)上購買或者交換自己喜歡的商品,從而可以大大地節(jié)約資金、時間和資源,并起到促進(jìn)整個社會和諧的作用。整理為word格式整理為word格式整理為word格式從目前的種種情況來看,社會競爭越來越激烈,在這個競爭和效率并存的社會,人們有很強(qiáng)的時間觀念,信息社會的高科技,商品經(jīng)濟(jì)化的高效益,使網(wǎng)絡(luò)的應(yīng)用已普及到經(jīng)濟(jì)和社會生活的各個領(lǐng)域,對于大學(xué)生而言更是如此,最求效率已經(jīng)成為當(dāng)代大學(xué)生所追求的主要品質(zhì)之一?;贘SP模式的網(wǎng)上校園二手交易網(wǎng)站克服了傳統(tǒng)銷售方式時所帶來的人力、物力以及時間上的浪費(fèi),同時也保證了銷售過程的科學(xué)化、高效化,使銷售過程方便、準(zhǔn)確、快捷。校園二手交易網(wǎng)站的發(fā)展推動了學(xué)生之間的交易的高效性,校園二手交易網(wǎng)上銷售已經(jīng)成為主流。1.3可行性分析1.3.1網(wǎng)站建設(shè)技術(shù)可行性設(shè)計(jì)這樣一個網(wǎng)站,使得校園二手物品的交易信息得到了整合,而它面對的群體主要是大學(xué)生,所以該網(wǎng)站的規(guī)模不會太大,網(wǎng)站的設(shè)計(jì)與開發(fā)不會很復(fù)雜。本網(wǎng)站的設(shè)計(jì)與開發(fā)所選擇的開發(fā)工具全部都是開源軟件,在網(wǎng)上就可以進(jìn)行相關(guān)軟件的下載,使用的語言是JSP語言,數(shù)據(jù)庫運(yùn)用的是SQLserver2008,在大學(xué)期間所學(xué)知識足以滿足設(shè)計(jì)開發(fā)的需求,所以說在技術(shù)上是可行的。1.3.2網(wǎng)站建設(shè)經(jīng)濟(jì)可行性由于本校園二手交易網(wǎng)站的設(shè)計(jì)與開發(fā)是滿足廣大在校大學(xué)生需求的,所以只需一臺計(jì)算機(jī),在計(jì)算機(jī)上安裝相關(guān)開發(fā)程序就可以進(jìn)行網(wǎng)站的設(shè)計(jì)與開發(fā),所以說就成本而言是很小的,完全在承受范圍內(nèi)。高校既是知識密集的地方,也是電腦普及率最高的地方之一,大部分學(xué)校為了便利學(xué)生的學(xué)習(xí)有生活,都建有內(nèi)部局域網(wǎng)。校園網(wǎng)站網(wǎng)絡(luò)使用費(fèi)用很便宜,局域網(wǎng)將高校內(nèi)大部分部門、機(jī)構(gòu)、宿舍等聯(lián)結(jié)起來,以達(dá)到信息資源傳輸與共享、提高效率、優(yōu)化組合的目的。1.3.3校園二手物品交易網(wǎng)站運(yùn)行的可行性校園二手交易網(wǎng)站上提供許多方便學(xué)生學(xué)習(xí)與生活物品的信息,如學(xué)生宿舍沒洗衣機(jī),為讓大家清洗衣物方便,宿舍同學(xué)們就可以一起購買一臺洗衣機(jī),這樣既方便了大家,也可以在大學(xué)生活結(jié)束的時候,變賣給低年級的同學(xué)。還有,二手舊自行車在大學(xué)生中非常搶手的,大學(xué)校園的校區(qū)大多都很大,像我們學(xué)校就占地近三千多畝,每天上課、做實(shí)驗(yàn)什么的,跑來跑去實(shí)在很辛苦,有時偶爾還要外出結(jié)伴游玩整理為word格式整理為word格式整理為word格式,對自行車需求自然很多。買新的,價(jià)格高,還容易因?yàn)椴涣私庑星槎嗷ㄔ┩麇X,這樣來說二手車就成了最好的選擇。用了兩年三年的,再便宜轉(zhuǎn)手,這樣是很劃算,即使不要了也不會很是心疼。再比如,學(xué)期開始,很多學(xué)生先不去買新書,而到學(xué)校附近書店或者跟在校園BBS上尋找與課程要求相同的教材,這在大學(xué)生中十分普遍。相同的書籍,二手的要比上新的便宜很多,況且,在舊書中還有高年級的筆記,更加實(shí)用。大學(xué)生對二手物品的需求種類繁多,數(shù)量龐大,如電子產(chǎn)品、學(xué)習(xí)生活用品等等,各種各樣的二手物品都會被購買。整理為word格式整理為word格式整理為word格式2系統(tǒng)需求分析和主要實(shí)現(xiàn)技術(shù)2.1網(wǎng)站系統(tǒng)功能需求分析本網(wǎng)站的設(shè)計(jì)與開發(fā)主要是面向本校全校師生的,依托于本網(wǎng)站提供給這些用戶一個發(fā)布和交流二手物品信息的平臺。在大學(xué)校園,存在著很多的二手物品,但是由于信息資源不流通以及傳統(tǒng)二手物品信息交流方式的笨拙,導(dǎo)致了很多人讓具有一定價(jià)值或者很大價(jià)值的二手物品的囤積,乃至被當(dāng)作廢品處理到造成資源的極大浪費(fèi)?,F(xiàn)在通過進(jìn)入到本網(wǎng)站,可以方便快捷的發(fā)布和交流二手物品的信息,并且可以盡可能詳細(xì)的發(fā)布自己二手物品的信息,同時也可以增加賣家與買家之間的交流溝通,每一個人都可以讓他發(fā)布的二手物品信息讓全校都可以看得到,爭取到了信息資源的最大化利用,同時也減少了資源的浪費(fèi)。校園二手物品交換網(wǎng)站工作流程為:系統(tǒng)啟動并進(jìn)入登錄界面,用戶進(jìn)行登錄,所有用戶都可以瀏覽系統(tǒng)主頁面。用戶瀏覽、閱讀和查詢信息,注冊用戶除了可以完成用戶的操作外,還可以進(jìn)行對自己物品進(jìn)行的操作(包括對自己的物品的增加、修改和刪除的操作)。用戶可以選擇交換的物品進(jìn)行交換。本網(wǎng)站完成的系統(tǒng)功能主要有:用戶設(shè)置功能、發(fā)布信息功能、管理信息功能、搜索信息功能、購物車功能、訂單管理功能以及系統(tǒng)管理功能等多項(xiàng)功能,滿足二手物品交易的各項(xiàng)需求,主要業(yè)務(wù)功能如下:用戶注冊:同學(xué)們可以在本網(wǎng)站上進(jìn)行注冊成為會員。用戶登錄:只有登陸后的用戶才可以發(fā)布二手物品交易信息,管理員登陸后可以進(jìn)行系統(tǒng)管理。發(fā)布信息:普通用戶和管理員登陸后都可以進(jìn)行信息的發(fā)布。修改信息:普通用戶可以修改自己發(fā)布的商品信息,管理員可以修改所有信息。刪除信息:普通用戶可以刪除自己發(fā)布過的商品信息,管理員可以刪除所有信息。瀏覽信息:游客、普通用戶和管理員都可以對網(wǎng)站信息進(jìn)行瀏覽。添加新聞:管理員可以添加網(wǎng)站相關(guān)新聞。查看新聞:游客、普通用戶和管理員都可以查看網(wǎng)站發(fā)布的新聞。刪除新聞:管理員可以對網(wǎng)站發(fā)布的新聞進(jìn)行刪除。2.2網(wǎng)站設(shè)計(jì)與開發(fā)的性能需求分析整理為word格式整理為word格式整理為word格式本網(wǎng)站是基于JSP進(jìn)行設(shè)計(jì)與開發(fā)的,對于環(huán)境的要求不是很高,而且現(xiàn)在硬件的性能已經(jīng)非常出色,學(xué)生自己的電腦就完全可以滿足網(wǎng)站設(shè)計(jì)與開發(fā)的需求,本臺計(jì)算機(jī)的配置如下:CPU型號:Intel酷睿i5480M
CPU主頻:2.66GHz
內(nèi)存容量:2GBDDR31333MHz
硬盤容量:500GB7200轉(zhuǎn)
顯卡芯片:ATIMobilityRadeonHD5650數(shù)據(jù)庫:SQLserver2008開發(fā)環(huán)境:Windows7編程語言:JSP2.3網(wǎng)站設(shè)計(jì)與開發(fā)的主要技術(shù)分析Java不依賴平臺的特征使得它受到了廣泛的關(guān)注。本網(wǎng)站的設(shè)計(jì)與開發(fā)主要采用J2EE技術(shù)體系,使用分層思想來設(shè)計(jì)程序。J2EE核心是一組技術(shù)規(guī)范與指南,其中所包含的各類組件、服務(wù)架構(gòu)及技術(shù)層次,均有共同的標(biāo)準(zhǔn)及規(guī)格,讓各種依循J2EE架構(gòu)的不同平臺之間,存在良好的兼容性,使得它提供基于組件設(shè)計(jì)、開發(fā)、部署和管理的解決方案,不受任何特定操作系統(tǒng)、網(wǎng)絡(luò)環(huán)境、硬件平臺的束縛。本網(wǎng)站在技術(shù)上除了使用JSP外,還采用了Struts等技術(shù)。2.3.1JSP分析JSP是由SunMicrosystems公司倡導(dǎo)、許多公司參與一起建立的一種動態(tài)技術(shù)標(biāo)準(zhǔn)。在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP標(biāo)簽,就構(gòu)成了JSP網(wǎng)頁java程序片段可以操縱數(shù)據(jù)庫、重新定向網(wǎng)頁以及發(fā)送E-mail等,實(shí)現(xiàn)建立動態(tài)網(wǎng)站所需要的功能。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,這樣大大降低了對客戶瀏覽器的要求,即使客戶瀏覽器端不支持Java,也可以訪問JSP網(wǎng)頁。JSP全名為JavaServerPages,其根本是一個簡化的Servlet設(shè)計(jì),他實(shí)現(xiàn)了Html語法中的java擴(kuò)張(以<%,%>形式)。JSP與Servlet一樣,是在服務(wù)器端執(zhí)行的。通常返回給客戶端的就是一個HTML文本,因此客戶端只要有瀏覽器就能瀏覽。Web服務(wù)器在遇到訪問JSP網(wǎng)頁的請求時,首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起返回給客戶端。插入的Java程序段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁等,以實(shí)現(xiàn)建立動態(tài)網(wǎng)頁所需要的功能。整理為word格式整理為word格式整理為word格式使用JSP的優(yōu)勢主要有:(1)一次編寫,到處運(yùn)行。除了系統(tǒng)之外,代碼不用做任何更改。(2)系統(tǒng)的多平臺支持。基本上可以在所有平臺上的任意環(huán)境中開發(fā),在任意環(huán)境中進(jìn)行系統(tǒng)部署,在任意環(huán)境中擴(kuò)展。相比ASP的局限性JSP的優(yōu)勢是顯而易見的。(3)強(qiáng)大的可伸縮性。從只有一個小的Jar文件就可以運(yùn)行Servlet/JSP,到由多臺服務(wù)器進(jìn)行集群和負(fù)載均衡,到多臺Application進(jìn)行事務(wù)處理,消息處理,一臺服務(wù)器到無數(shù)臺服務(wù)器,Java顯示了一個巨大的生命力。(4)多樣化和功能強(qiáng)大的開發(fā)工具支持。這一點(diǎn)與ASP很像,Java已經(jīng)有了許多非常優(yōu)秀的開發(fā)工具,而且許多可以免費(fèi)得到,并且其中許多已經(jīng)可以順利的運(yùn)行于多種平臺之下。(5)支持服務(wù)器端組件。web應(yīng)用需要強(qiáng)大的服務(wù)器端組件來支持,開發(fā)人員需要利用其他工具設(shè)計(jì)實(shí)現(xiàn)復(fù)雜功能的組件供web頁面調(diào)用,以增強(qiáng)系統(tǒng)性能。JSP可以使用成熟的JAVABEANS組件來實(shí)現(xiàn)復(fù)雜商務(wù)功能。JSP本身并不是一種腳本語言,它只是提供了一種使鑲嵌在
HTML
頁面中的腳本程序得以運(yùn)行的環(huán)境。2.3.2Java語言介紹Java語言是美國Sun公司于1955年推出的一種簡單的、面向?qū)ο蟮?、分布的、可解釋的、安全的、結(jié)構(gòu)的、中立的、可移植的、性能很優(yōu)異的多線程的、動態(tài)的語言。其前身為OAK語言,是Sun公司為一些消費(fèi)型電子產(chǎn)品而設(shè)計(jì)的一個通用環(huán)境。他們最初的目的知識為了開發(fā)一種獨(dú)立于平臺的軟件技術(shù)。通過Sun公司的工程師的不懈努力以及全世界無數(shù)編程愛好者的使用,Java終于發(fā)展為今天這樣一個集桌面(J2SE)、網(wǎng)絡(luò)(J2EE)、移動平臺(J2ME)應(yīng)用為一體的功能強(qiáng)大的編程語言。目前Java由于平臺無關(guān)及分布式特性,最重要的應(yīng)用是應(yīng)用在網(wǎng)絡(luò)上面。近年來,Java變的非常流行。Java的快速發(fā)展以及被廣泛接受都應(yīng)歸功于他的設(shè)計(jì)特性,特別是他的承諾:一旦編寫了一個程序,在任何地方都可以運(yùn)行。就像Sun公司聲稱的,Java是簡單的(simple)、面向?qū)ο蟮模╫bjectoriented)、分布式的(distribution)、解釋型的(interpreted)、健壯的(robust)、安全的(secure)、結(jié)構(gòu)中立的(architectureneutral)、可移植的(portable)、高性能的(highperformance)、多線程的(multithreaded)和動態(tài)的(dynamic)。整理為word格式整理為word格式整理為word格式Java是功能完善的通用程序設(shè)計(jì)語言,可以用來開發(fā)可靠的、要求嚴(yán)格的應(yīng)用程序?,F(xiàn)在,它不僅用于web程序設(shè)計(jì),而且用于在服務(wù)器、臺式機(jī)和移動設(shè)備上開發(fā)跨平臺的獨(dú)立應(yīng)用程序。用它開發(fā)過與火星探測器通信并控制其在火星上行走的代碼。許多曾經(jīng)認(rèn)為Java言過其實(shí)的公司現(xiàn)在使用Java開發(fā)分布式應(yīng)用程序,便于客戶和合作伙伴在internet上訪問?,F(xiàn)在,一旦開發(fā)新的項(xiàng)目,公司都會考慮如何利用Java使工作變得更加容易。2.3.3J2EEJ2EE技術(shù)是Java網(wǎng)絡(luò)應(yīng)用技術(shù),廣泛應(yīng)用于企業(yè)級的應(yīng)用。Sun公司在1998年發(fā)表JDK1.2版本的時候,使用了新名稱Java2Platform,即“Java2平臺”,修改后的JDK稱為Java2PlatformSoftwareDevelpingKit,即J2SDK。并分為標(biāo)準(zhǔn)版(StandardEdition,J2SE),企業(yè)版(EnterpriseEdition,J2EE),微型版(MicroEdition,J2ME)。J2EE便由此誕生。J2EE組件和“標(biāo)準(zhǔn)的”Java類的不同點(diǎn)在于:它被裝配在一個J2EE應(yīng)用中,具有固定的格式并遵守J2EE規(guī)范,由J2EE服務(wù)器對其進(jìn)行管理。J2EE規(guī)范是這樣定義J2EE組件的:客戶端應(yīng)用程序和applet是運(yùn)行在客戶端的組件;JavaServlet和JavaServerPages(JSP)是運(yùn)行在服務(wù)器端的Web組件;EnterpriseJavaBean(EJB)組件是運(yùn)行在服務(wù)器端的業(yè)務(wù)組件。J2EE為搭建具有可伸縮性、靈活性、易維護(hù)性的商務(wù)系統(tǒng)提供了良好的機(jī)制,其有以下幾個方面的優(yōu)勢:1.保留現(xiàn)存的IT資產(chǎn):由于企業(yè)必須適應(yīng)新的商業(yè)需求,利用已有的企業(yè)信息系統(tǒng)方面的投資,而不是重新制定全盤方案就變得很重要。這樣,一個以漸進(jìn)的(而不是激進(jìn)的,全盤否定的)方式建立在已有系統(tǒng)之上的服務(wù)器端平臺機(jī)制是公司所需求的。J2EE架構(gòu)可以充分利用用戶原有的投資,如一些公司使用的BEA
Tuxedo、IBMCICS,IBMEncina,、InpriseVisiBroker以及NetscapeApplicationServer。這之所以成為可能是因?yàn)镴2EE擁有廣泛的業(yè)界支持和一些重要的'企業(yè)計(jì)算'領(lǐng)域供應(yīng)商的參與。每一個供應(yīng)商都對現(xiàn)有的客戶提供了不用廢棄已有投資,進(jìn)入可移植的J2EE領(lǐng)域的升級途徑。由于基于J2EE平臺的產(chǎn)品幾乎能夠在任何整理為word格式整理為word格式整理為word格式操作系統(tǒng)和硬件配置上運(yùn)行,現(xiàn)有的操作系統(tǒng)和硬件也能被保留使用。2.高效的開發(fā):J2EE允許公司把一些通用的、很繁瑣的服務(wù)端任務(wù)交給中間供應(yīng)商去完成。這樣開發(fā)人員可以集中精力在如何創(chuàng)建商業(yè)邏輯上,相應(yīng)地縮短了開發(fā)時間。高級中間件供應(yīng)商提供以下這些復(fù)雜的中間件服務(wù):狀態(tài)管理服務(wù)--讓開發(fā)人員寫更少的代碼,不用關(guān)心如何管理狀態(tài),這樣能夠更快地完成程序開發(fā)。持續(xù)性服務(wù)--讓開發(fā)人員不用對數(shù)據(jù)訪問邏輯進(jìn)行編碼就能編寫應(yīng)用程序,能生成更輕巧,與數(shù)據(jù)庫無關(guān)的應(yīng)用程序,這種應(yīng)用程序更易于開發(fā)與維護(hù)。分布式共享數(shù)據(jù)對象CACHE服務(wù)--讓開發(fā)人員編制高性能的系統(tǒng),極大提高整體部署的伸縮性。3.支持異構(gòu)環(huán)境:J2EE能夠開發(fā)部署在異構(gòu)環(huán)境中的可移植程序?;贘2EE的應(yīng)用程序不依賴任何特定操作系統(tǒng)、中間件、硬件。因此設(shè)計(jì)合理的基于J2EE的程序只需開發(fā)一次就可部署到各種平臺。這在典型的異構(gòu)企業(yè)計(jì)算環(huán)境中是十分關(guān)鍵的。J2EE標(biāo)準(zhǔn)也允許客戶訂購與J2EE兼容的第三方的現(xiàn)成的組件,把他們部署到異構(gòu)環(huán)境中,節(jié)省了由自己制訂整個方案所需的費(fèi)用。4.可伸縮性:企業(yè)必須要選擇一種服務(wù)器端平臺,這種平臺應(yīng)能提供極佳的可伸縮性去滿足那些在他們系統(tǒng)上進(jìn)行商業(yè)運(yùn)作的大批新客戶?;贘2EE平臺的應(yīng)用程序可被部署到各種操作系統(tǒng)上。例如可被部署到高端UNIX與大型機(jī)系統(tǒng),這種系統(tǒng)單機(jī)可支持64至256個處理器。(這是NT服務(wù)器所望塵莫及的)J2EE領(lǐng)域的供應(yīng)商提供了更為廣泛的負(fù)載平衡策略。能消除系統(tǒng)中的瓶頸,允許多臺服務(wù)器集成部署。這種部署可達(dá)數(shù)千個處理器,實(shí)現(xiàn)可高度伸縮的系統(tǒng),滿足未來商業(yè)應(yīng)用的需要。5.穩(wěn)定的可用性:一個服務(wù)器端平臺必須能全天候運(yùn)轉(zhuǎn)以滿足公司客戶、合作伙伴的需要。因?yàn)镮NTERNET是全球化的、無處不在的,即使在夜間按計(jì)劃停機(jī)也可能造成嚴(yán)重?fù)p失。若是意外停機(jī),那會有災(zāi)難性后果。J2EE部署到可靠的操作環(huán)境中,他們支持長期的可用性。一些J2EE部署在WINDOWS環(huán)境中,客戶也可選擇整理為word格式整理為word格式整理為word格式魯棒性(穩(wěn)定性)更好的操作系統(tǒng)如SunSolaris、IBMOS/390。魯棒性最好的操作系統(tǒng)可達(dá)到99.999%的可用性或每年只需5分鐘停機(jī)時間。這是實(shí)時性很強(qiáng)商業(yè)系統(tǒng)理想的選擇。2.3.4struts框架Struts是Apache軟件基金會(ASF)贊助的一個開源項(xiàng)目。它最初是Jakarta項(xiàng)目中的一個子項(xiàng)目,并在2004年3月成為ASF的頂級項(xiàng)目。它通過采用JavaServlet/JSP技術(shù),實(shí)現(xiàn)了基于JavaEEWeb應(yīng)用的MVC設(shè)計(jì)模式的應(yīng)用框架,是MVC經(jīng)典設(shè)計(jì)模式中的一個經(jīng)典產(chǎn)品Struts是Apache軟件基金下Jakarta項(xiàng)目的一部分。除Struts之外,還有其他成功的開源新聞,包括Tomcat,Ant和Velocity。2000年CraigR.McClanahan先生貢獻(xiàn)了他編寫的JSPModel2架構(gòu)之ApplicationFramework原始程序代碼給Apache基金會,成為ApacheJakarta計(jì)劃StrutsFramework前身。Struts是一個為開發(fā)基于模型(Model)-視圖(View)-控制器(Controller)的模式應(yīng)用框架的開源框架,是利用JavaServlet和JSP構(gòu)建Web應(yīng)用的一項(xiàng)非常有用的技術(shù)。Struts是一個基于SunJ2EE平臺的MVC框架,主要是采用Servlet和JSP技術(shù)來實(shí)現(xiàn)的。Struts把Servlet、JSP、自定義標(biāo)簽和信息資源整合到一個統(tǒng)一的框架中 ,開發(fā)人員利用其進(jìn)行開發(fā)時不再用自己編碼實(shí)現(xiàn)全套MVC模式,極大的節(jié)省了時間。Struts包含了一組想相互協(xié)作的類、Servlet和JSP標(biāo)記,他們共同組成了一個極重要的MVC模版。通過定義可以看出,Struts是Web應(yīng)用的開發(fā)框架,Struts包含及其豐富的標(biāo)記庫和獨(dú)立于該框架工作的實(shí)用程序類。如圖2-1顯示了Struts的基本結(jié)構(gòu)。分配業(yè)務(wù)邏輯分配業(yè)務(wù)邏輯請求控制器請求控制器客戶(瀏覽器)實(shí)例轉(zhuǎn)發(fā)客戶(瀏覽器)實(shí)例轉(zhuǎn)發(fā)整理為word格式整理為word格式整理為word格式響應(yīng)模型視圖(JSP)響應(yīng)模型視圖(JSP)讀取讀取圖2-1Struts的基本結(jié)構(gòu)通過圖2-1可以看出,采用Struts框架結(jié)構(gòu)的Web應(yīng)用程序主要由控制器、業(yè)務(wù)邏輯、模型和視圖組。其中的控制器、模型和視圖作為Struts框架的主要組成部分,而事務(wù)邏輯則是我們需要實(shí)現(xiàn)的系統(tǒng)業(yè)務(wù)邏輯處理部分。Struts的優(yōu)點(diǎn)主要集中體現(xiàn)在兩個方面:Taglib和頁面導(dǎo)航。Taglib是Struts的標(biāo)記庫,靈活運(yùn)用,能大大提高開發(fā)效率。另外,就目前國內(nèi)的JSP開發(fā)者而言,除了使用JSP自帶的常用標(biāo)記外,很少開發(fā)自己的標(biāo)記,或許Struts是一個很好的起點(diǎn)。關(guān)于頁面導(dǎo)航,它使系統(tǒng)的脈絡(luò)更加清晰。通過一個配置文件,即可把握整個系統(tǒng)各部分之間的聯(lián)系,這對于后期的維護(hù)有著莫大的好處。尤其是當(dāng)另一批開發(fā)者接手這個項(xiàng)目時,這種優(yōu)勢體現(xiàn)得更加明顯。整理為word格式整理為word格式整理為word格式3概要設(shè)計(jì)3.1功能模塊圖校園校園二手物品交易網(wǎng)站系統(tǒng)用戶管理員注冊登錄發(fā)布二手信息信息查詢發(fā)表信息購物訂單新瀏覽帳戶管理出售信息管理會員管理換物信息管理系統(tǒng)管理資訊管理公告管理圖3-1功能模塊圖3.2處理流程設(shè)計(jì)3.2.1系統(tǒng)操作流程整理為word格式整理為word格式整理為word格式系統(tǒng)登錄界面輸入操作員及密碼系統(tǒng)主界面系統(tǒng)管理錯誤信息系統(tǒng)登錄界面輸入操作員及密碼系統(tǒng)主界面系統(tǒng)管理錯誤信息數(shù)據(jù)庫檢查密碼錯誤 數(shù)據(jù)庫檢查密碼錯誤密碼正確功能界面功能處理密碼正確功能界面功能處理圖3-2系統(tǒng)操作流程圖3.2.2數(shù)據(jù)增加流程添加信息時,編號字段由系統(tǒng)自動生成,且不能修改,其他信息由用戶輸入,之后對數(shù)據(jù)進(jìn)行合法判斷,合法則寫入保存至數(shù)據(jù)庫,不合法則重新輸入數(shù)據(jù)。數(shù)據(jù)增加流程如圖3-3所示:整理為word格式整理為word格式整理為word格式開始開始自動生成編號輸入數(shù)據(jù)是否合法寫入數(shù)據(jù)庫結(jié)束圖3-3數(shù)據(jù)增加流程圖3.2.3數(shù)據(jù)修改流程在修改信息時,先選中一條待修改的記錄,然后直接輸入數(shù)據(jù),判斷合法性,合法則保存至數(shù)據(jù)庫,不合法重新輸入。數(shù)據(jù)修改流程圖如圖3-4所示。整理為word格式整理為word格式整理為word格式開始選擇需要修改記錄輸入數(shù)據(jù)是否合法寫入數(shù)據(jù)庫結(jié)束開始選擇需要修改記錄輸入數(shù)據(jù)是否合法寫入數(shù)據(jù)庫結(jié)束圖3-4數(shù)據(jù)修改流程圖3.2.4數(shù)據(jù)刪除流程當(dāng)用戶選定一條記錄時,單擊刪除按鈕,會提示用戶是否確定刪除,然后刪除數(shù)據(jù)庫相關(guān)內(nèi)容。數(shù)據(jù)刪除流程圖如圖3-5所示。開始開始選擇需要刪除記錄是否刪除更新數(shù)據(jù)庫圖3-5數(shù)據(jù)刪除流程圖整理為word格式整理為word格式整理為word格式4詳細(xì)設(shè)計(jì)4.1系統(tǒng)E-R圖電話地址密碼用戶名電話地址密碼用戶名用戶用戶管理管理品牌編號品牌編號屬于屬于類別二手物品類別二手物品名稱型號詳細(xì)信息 名稱型號詳細(xì)信息 系統(tǒng)管理換物購物發(fā)布信息登錄系統(tǒng)管理換物購物發(fā)布信息登錄用戶用戶圖4-1系統(tǒng)E-R圖4.2數(shù)據(jù)庫設(shè)計(jì)4.2.1SQLServer2008介紹SQL
Server
2008是一個重大的產(chǎn)品版本,它推出了許多新的特性和關(guān)鍵的改進(jìn),使得它成為至今為止的最強(qiáng)大和最全面的SQL
Server版本。
微軟大部分的產(chǎn)品的更新?lián)Q代都有一個規(guī)律,那就是“大改”和“小改”交替進(jìn)行。所以,如果按照慣例,從2005到2008本應(yīng)當(dāng)是一次“小改”,不過從很多方面來看完全不止是“小改”而已。雖然,用戶界面的改動確實(shí)并不大,仍然和之前的版本相似,但是商業(yè)智能工具和數(shù)據(jù)庫引擎本身的改變非常顯著。
整理為word格式整理為word格式整理為word格式現(xiàn)在的2008版增加了數(shù)據(jù)壓縮特性,如果你的數(shù)據(jù)量迅猛增長中,這個特性就非常有用。微軟在2008中同時實(shí)現(xiàn)了行壓縮和列壓縮。我們在壓縮和解壓縮過程的數(shù)據(jù)讀寫中顯然要付出一定性能上的代價(jià);不過,微軟預(yù)計(jì)由于磁盤I/O通量減少的程度遠(yuǎn)超過解壓縮所要耗費(fèi)的性能代價(jià),所以最終的查詢性能反而會有所提高。
備受關(guān)注的還有可以在引擎水平實(shí)施的透明數(shù)據(jù)加密功能,也就是說可以對整個數(shù)據(jù)庫進(jìn)行加密,使用戶無需對應(yīng)用程序進(jìn)行任何修改就能夠?qū)?shù)據(jù)進(jìn)行加密。
對于現(xiàn)在非常流行的業(yè)務(wù)連續(xù)性領(lǐng)域,SQL
Server
2008的數(shù)據(jù)庫鏡像功能也得到了加強(qiáng),轉(zhuǎn)換的操作速度更快,而且創(chuàng)建和驅(qū)動也都更容易了。當(dāng)然,數(shù)據(jù)庫鏡像的實(shí)現(xiàn)要求日志文件在兩個服務(wù)器之間能夠順利流動交換,所以新的日志流壓縮功能非常有用,能夠加速數(shù)據(jù)庫鏡像的執(zhí)行速度。
新的空間數(shù)據(jù)類型是2008最大的變化之一。有了這種數(shù)據(jù)類型,我們就可以在地表圖上標(biāo)出坐標(biāo)數(shù)據(jù),并進(jìn)行精密的計(jì)算,例如計(jì)算出在庫房10公里范圍內(nèi)住有多少客戶。
備份流程無疑是數(shù)據(jù)庫的重中之重,而微軟也重寫了SQL
Server
2008的備份系統(tǒng)以便讓大家對其備份性能的改進(jìn)刮目相看。報(bào)表服務(wù)(Reporting
Services)的變化可能對SQL
Server
2008的商業(yè)智能堆棧最重要的改進(jìn),微軟已對其進(jìn)行了大整改,并添加了好幾個能吸引眼球的功能:不僅僅升級了Report
Builder和Report
Designer,而且增加了一個具有Office風(fēng)格絲帶界面的獨(dú)立報(bào)表構(gòu)造器,供大家從網(wǎng)上下載。在數(shù)據(jù)顯示方式的控件方面,SQL
Server
2008也有新舉措:一個是Tablix數(shù)據(jù)區(qū),整合了表格、序列和矩陣的特性,用戶自己可以靈活地改變和自定義數(shù)據(jù)的顯示方式。另外一個就是儀表(Gauge)數(shù)據(jù)控件,儀表數(shù)據(jù)區(qū)可以顯示單個值,而多個共享功能儀表更可以用來對多個值進(jìn)行有效的比較。此外,報(bào)表服務(wù)還支持新的圖表數(shù)據(jù)類型的顯示。
微軟一如既往地為大家提供了多個不同的SQL
Server版本,以便廣大客戶根據(jù)自己的水平和預(yù)算以及所需要的功能來選擇。其中,最牛的版本無疑是SQL
Server
2008企業(yè)版,為大公司提供了SQL
Server所能提供的所有特性和全部的商業(yè)智能工具。
而標(biāo)準(zhǔn)版則是用來支持部門級和中小型OLTP系統(tǒng)的,特性和商業(yè)智能功能上都有所刪減。此外微軟還提供了工作組版、Web版、精簡版和Express版。其中最后一個版本受到了很多想要轉(zhuǎn)用客戶端服務(wù)器數(shù)據(jù)庫引擎的小企業(yè)的青睞,對于有Access使用經(jīng)驗(yàn)和基礎(chǔ)的小企業(yè)來說,從Access到SQL整理為word格式整理為word格式整理為word格式
Server
Express并不是一件難事,而且這是可以免費(fèi)下載的。SQLServer2008在Microsoft的數(shù)據(jù)平臺上發(fā)布,可以組織管理任何數(shù)據(jù)??梢詫⒔Y(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化文檔的數(shù)據(jù)直接存儲到數(shù)據(jù)庫中??梢詫?shù)據(jù)進(jìn)行查詢、搜索、同步、報(bào)告和分析之類的操作。數(shù)據(jù)可以存儲在各種設(shè)備上,從數(shù)據(jù)中心最大的服務(wù)器一直到桌面計(jì)算機(jī)和移動設(shè)備,它都可以控制數(shù)據(jù)而不用管數(shù)據(jù)存儲在哪里。這個平臺有以下特點(diǎn):可信任的——使得公司可以以很高的安全性、可靠性和可擴(kuò)展性來運(yùn)行他們最關(guān)鍵任務(wù)的應(yīng)用程序。高效的——使得公司可以降低開發(fā)和管理他們的數(shù)據(jù)基礎(chǔ)設(shè)施的時間和成本。智能的——提供了一個全面的平臺,可以在你的用戶需要的時候給他發(fā)送觀察和信息。4.2.2數(shù)據(jù)庫主要表單用戶注冊表單
用戶注冊表單是用來記載用戶注冊的情況,便于管理員的管理,查看用戶注冊信息,如圖4-2所示:圖4-2查看用戶注冊信息管理員表單
管理員表單用來記載管理員的信息,如圖4-3所示:圖4-3記載管理員信息新聞發(fā)布表單
整理為word格式整理為word格式整理為word格式新聞發(fā)布表單用于管理員對網(wǎng)站的一些動態(tài)新聞進(jìn)行發(fā)布,使用戶能夠更好的了解網(wǎng)站動態(tài)及商品信息,對于不符合規(guī)定的新聞,管理員也可以及時刪除,幫助網(wǎng)站建設(shè),如圖4-4所示:圖4-4新聞發(fā)布商品表單
商品表單便于管理員管理各個商品的信息,對于上架超過規(guī)定時間的商品或商品已經(jīng)售空的,管理員可以及時將該商品的信息修改,如圖4-5所示:圖4-5用戶發(fā)布商品信息會員管理表單
管理會員信息,注冊時間,發(fā)布網(wǎng)站公告,管理訂單等信息,如圖4-6所示:圖4-6會員管理4.2.3數(shù)據(jù)庫連接技術(shù)JDBC技術(shù)是JavaDataBaseConnectivity的縮寫,它是SUN公司提供的一種支持基本SQL功能的通用的應(yīng)用程序接口(ApplicationProgrammingInterface)。它由一組用Java語言編寫的類和接口組成。通過這些類和接口,程序開發(fā)人員可以在Java語言中方便地建立與數(shù)據(jù)庫的鏈接,通過執(zhí)行相應(yīng)SQL語句,完成對不同數(shù)據(jù)庫的訪問。因此,開發(fā)人員使用JDBCAPI可以不必編寫一個應(yīng)用程序來訪問Sybase數(shù)據(jù)庫,又另外編寫一個應(yīng)用程序去訪問Oracle數(shù)據(jù)庫,再寫一個應(yīng)用程序訪問Microsoft的SQLServer。不但如此,使用整理為word格式整理為word格式整理為word格式Java語言編寫的應(yīng)用程序可以在任何支持Java的平臺上運(yùn)行,不必在不同的平臺上開發(fā)不同的應(yīng)用程序。簡單地說,JDBC能完成下列三件事:同一個數(shù)據(jù)庫建立連接;向數(shù)據(jù)庫建立連接;處理數(shù)據(jù)庫返回的結(jié)果。JDBC是一種通用低層的應(yīng)用程序編程接口,它在不同的數(shù)據(jù)庫功能模塊的層次上提供一個統(tǒng)一的用戶界面。說JDBC是一處低級的API,是指它直接調(diào)用SQL命令,它比其他的一些數(shù)據(jù)庫連接API要容易使用些,但它有同樣可以作為更高級的,用戶辦面更友好的API或開發(fā)工具基礎(chǔ)。很多可視化的Java開發(fā)工具,如VisualAgeForJava、VisualCafé、J++等都提供了基于JDBC的更面向用戶的類和包,直接將關(guān)系數(shù)據(jù)庫的表或視圖映射為Java類,程序員通過可視化工具直接對Java對象進(jìn)行操作,而真正需要的SQL調(diào)用則根據(jù)程序員發(fā)出的對對象的各種屬性、方法的操作來自動產(chǎn)生。另一種使用JDBCAPI的方式為,用戶程序可以提供一個界面(如菜單等)讓用戶選擇對數(shù)據(jù)庫進(jìn)行的操作,選中一個任務(wù)后,提示用戶輸入一些必要的信息,然后根據(jù)用戶的輸入產(chǎn)生相應(yīng)的SQL命令以及Java程序。通過這處方式,用戶可以完成對數(shù)據(jù)庫的操作,即使他并不了解SQL語法以及JDBC編程。數(shù)據(jù)庫訪問的三層結(jié)構(gòu)如圖4-7所示,瀏覽器端程序要訪問數(shù)據(jù)庫,首先通過中間件,然后由中間件對數(shù)據(jù)庫操作權(quán)限進(jìn)行認(rèn)證,認(rèn)證通過才能對數(shù)據(jù)庫進(jìn)行操作。數(shù)據(jù)庫服務(wù)器中間件Web服務(wù)器數(shù)據(jù)庫服務(wù)器中間件Web服務(wù)器數(shù)據(jù)庫瀏覽器數(shù)據(jù)庫瀏覽器圖4-7使用中間件的數(shù)據(jù)庫訪問三層結(jié)構(gòu)用戶對數(shù)據(jù)庫的存取權(quán)限認(rèn)證是中間件中完成,對數(shù)據(jù)庫的查詢、插入、更新和刪除操作等都封裝在中間件中,該中間件位于服務(wù)器端,中間件對數(shù)據(jù)庫進(jìn)行操作后,再將處理結(jié)果通過Web服務(wù)器返回到瀏覽器端用戶。這樣,在用戶端輸入的用戶名和密碼,可以通過加密算法進(jìn)行加密后在網(wǎng)絡(luò)上傳輸,在中間件中進(jìn)行解密認(rèn)證,然后再進(jìn)行數(shù)據(jù)庫的存取操作,數(shù)據(jù)庫存取權(quán)限的用戶名和密碼出現(xiàn)在位于服務(wù)器端的中間件中,這樣就更加安全。本系統(tǒng)采用的正是這樣的三層結(jié)構(gòu)的數(shù)據(jù)庫訪問模式。整理為word格式整理為word格式整理為word格式在三層模型中,命令將被發(fā)送到服務(wù)的”中間層”,而”中間層”將SQL語句發(fā)送到數(shù)據(jù)庫。數(shù)據(jù)庫處理SQL語句并將結(jié)果返回”中間層”,然后”中間層”將它們返回用戶。其模型如圖4-8所示。客戶機(jī)(GUI客戶機(jī)(GUI)JavaAppletHTTP,RMIHTTP,RMI或CORBA調(diào)用應(yīng)用服務(wù)器應(yīng)用服務(wù)器(事務(wù))服務(wù)器JDBC(事務(wù))服務(wù)器JDBCDBMSDBMS專用協(xié)議數(shù)據(jù)庫服務(wù)器DBMS數(shù)據(jù)庫服務(wù)器DBMS圖4-8JDBC的三層模型因?yàn)椤敝虚g層”可以進(jìn)行對訪問的控制并協(xié)同數(shù)據(jù)庫的更新,并且可以使用一個易用的高層API,這個API可以由“中間層”進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換成低層的調(diào)用。所以在許多種情況下,三層模型可以提供更好的性能,本系統(tǒng)中所采用的就是此種模型。JDBC是JAVA應(yīng)用程序與數(shù)據(jù)庫的溝通橋梁。它提供了三項(xiàng)服務(wù)功能:一、與數(shù)據(jù)庫建立連接。二、將SQL語句傳遞給數(shù)據(jù)庫。三、從數(shù)據(jù)庫取得SQL語句的執(zhí)行結(jié)果。當(dāng)JDBC要與數(shù)據(jù)庫建立連接前,首先,它必須先取得連接此數(shù)據(jù)庫的整理為word格式整理為word格式整理為word格式JDBC驅(qū)動程序,Class.forName()即是在執(zhí)行此項(xiàng)工作。建立數(shù)據(jù)庫連接的第一步驟就是將JDBC驅(qū)動程序的類載入至JVM(JavaVirtualLMachine)中,本系統(tǒng)中利用java.lang.Class類內(nèi)的forName()靜態(tài)函數(shù)依據(jù)指定的類名稱,將JDBC驅(qū)動程序載入進(jìn)來。完成載入驅(qū)動程序的步驟后,必須使用java.sal.DriverManager類所提供的getConnection()靜態(tài)函數(shù),取得與數(shù)據(jù)庫間的連接對象。此連接對象的類類型為java.sal.Connection,必須通過它才能將SQL指令傳遞給數(shù)據(jù)庫,而執(zhí)行結(jié)果也需要通過連接對象來取得。當(dāng)取得連接對象后,還必須取得Statement對象才能對數(shù)據(jù)庫執(zhí)行SQL指令。Statement主要實(shí)現(xiàn)兩個功能:執(zhí)行SQL語句以及取得執(zhí)行結(jié)果。在java.sql.Statement的sql對象中執(zhí)行查詢或修改命令的函數(shù)后傳回的是一個ResultSet對象,這個對象提供了一個存取SQL執(zhí)行結(jié)果的管道,以便通過它將表格數(shù)據(jù)從數(shù)據(jù)庫中取出。每個Statement對象只能產(chǎn)生一個ResultSet對象。數(shù)據(jù)庫連接如圖4-9所示:建立建立JDBC—ODBC橋否建立是否成功否建立是否成功出錯處理出錯處理是是建立數(shù)據(jù)庫連接建立數(shù)據(jù)庫連接執(zhí)行執(zhí)行SQL操作否SQL否SQL是否出錯返回錯誤結(jié)果.返回錯誤結(jié)果是是整理為word格式整理為word格式整理為word格式返回執(zhí)行結(jié)果返回執(zhí)行結(jié)果圖4-9數(shù)據(jù)庫的連接處理數(shù)據(jù)庫的連接處理具體實(shí)現(xiàn)如下://建立JDBC——ODBC橋sun.jdbc.odbc.JdbcOdbcDriver;//橋建立不成功時的錯誤處理catch(ClassNotFoundExceptionevent){}//建立與數(shù)據(jù)庫的連接,并發(fā)送SQL查詢語句,將結(jié)果保存到rs對象中 Con=建立JDBC——ODBC橋 Sql=SQL查詢語句 執(zhí)行查詢 Rs=返回結(jié)果//SQL出錯處理 catch(SQLExceptione1){}有了JDBC,向各種關(guān)系數(shù)據(jù)發(fā)送SQL語句就是一件很容易的事。換言之,有了JDBCAPI,就不必為訪問Sybase數(shù)據(jù)庫專門寫一個程序,為訪問Oracle數(shù)據(jù)庫又專門寫一個程序,或?yàn)樵L問Informix數(shù)據(jù)庫又編寫另一個程序等等,程序員只需用JDBCAPI寫一個程序就夠了,它可向相應(yīng)數(shù)據(jù)庫發(fā)送SQL調(diào)用。同時,將Java語言和JDBC結(jié)合起來使程序員不必為不同的平臺編寫不同的應(yīng)用程序,只須寫一遍程序就可以讓它在任何平臺上運(yùn)行,這也是Java語言“編寫一次,處處運(yùn)行”的優(yōu)勢。Java數(shù)據(jù)庫連接體系結(jié)構(gòu)是用于Java應(yīng)用程序連接數(shù)據(jù)庫的標(biāo)準(zhǔn)方法。JDBC對Java程序員而言是API,對實(shí)現(xiàn)與數(shù)據(jù)庫連接的服務(wù)提供商而言是接口模型。作為API,JDBC為程序開發(fā)提供標(biāo)準(zhǔn)的接口,并為數(shù)據(jù)庫廠商及第三方中間件廠商實(shí)現(xiàn)與數(shù)據(jù)庫的連接提供了標(biāo)準(zhǔn)方法。JDBC使用已有的SQL標(biāo)準(zhǔn)并支持與其它數(shù)據(jù)庫連接標(biāo)準(zhǔn),如ODBC之間的橋接。JDBC實(shí)現(xiàn)了所有這些面向標(biāo)準(zhǔn)的目標(biāo)并且具有簡單、嚴(yán)格類型定義且高性能實(shí)現(xiàn)的接口。
Java具有堅(jiān)固、安全、易于使用、易于理解和可從網(wǎng)絡(luò)上自動下載等特性,是編寫數(shù)據(jù)庫應(yīng)用程序的杰出語言。所需要的只是Java應(yīng)用程序與各種不同數(shù)據(jù)庫之間進(jìn)行對話的方法。而整理為word格式整理為word格式整理為word格式JDBC正是作為此種用途的機(jī)制。JDBC擴(kuò)展了Java的功能。例如,用Java和JDBCAPI可以發(fā)布含有applet的網(wǎng)頁,而該applet使用的信息可能來自遠(yuǎn)程數(shù)據(jù)庫企業(yè)也可以用JDBC通過Intranet將所有職員連到一個或多個內(nèi)部數(shù)據(jù)庫中(即使這些職員所用的計(jì)算機(jī)有Windows、Macintosh和UNIX等各種不同的操作系統(tǒng))。隨著越來越多的程序員開始使用Java編程語言,對從Java中便捷地訪問數(shù)據(jù)庫的要求也在日益增加。MIS管理員們都喜歡Java和JDBC的結(jié)合,因?yàn)樗剐畔鞑プ兊萌菀缀徒?jīng)濟(jì)。企業(yè)可繼續(xù)使用它們安裝好的數(shù)據(jù)庫,并能便捷地存取信息,即使這些信息是儲存在不同數(shù)據(jù)庫管理系統(tǒng)上。新程序的開發(fā)期很短。安裝和版本控制將大為簡化。程序員可只編寫一遍應(yīng)用程序或只更新一次,然后將它放到服務(wù)器上,隨后任何人就都可得到最新版本的應(yīng)用程序。對于商務(wù)上的銷售信息服務(wù),Java和JDBC可為外部客戶提供獲取信息更新的更好方法。簡單地說,JDBC可做三件事:與數(shù)據(jù)庫建立連接、發(fā)送SQL語句并處理結(jié)果。4.3網(wǎng)站主要功能及代碼展示4.3.1網(wǎng)站首頁網(wǎng)站首頁以清新的色彩搭配設(shè)計(jì),突出簡潔大方的效果。在網(wǎng)站首頁,用戶可以選擇自己想要進(jìn)行的一些操作,比如查詢新聞資訊、進(jìn)行商品查詢、查看商品分類等功能,而且還可以簡單明了的看到最新商品的相關(guān)信息,以便用戶更方便的找到自己多需要的二手商品。4.3.2用戶注冊訪客可以進(jìn)行注冊會員,注冊會員需要填寫用戶的用戶名、登陸密碼、個人資料等信息,用戶注冊成為會員后,可以在本網(wǎng)站上進(jìn)行只有會員權(quán)限才可以用的功能。實(shí)現(xiàn)個人會員注冊功能的主要代碼如下:elseif(method.equals("PREG")){ Stringusername=Filter.escapeHTMLTags(request.getParameter("username").trim()); Stringpassword=Filter.escapeHTMLTags(request.getParameter("password").trim()); Stringtype="person";整理為word格式整理為word格式整理為word格式 Stringrealname=Filter.escapeHTMLTags(request.getParameter("realname").trim()); Stringsex=Filter.escapeHTMLTags(request.getParameter("sex").trim()); Stringsheng=Filter.escapeHTMLTags(request.getParameter("sheng").trim()); Stringcity=Filter.escapeHTMLTags(request.getParameter("city").trim()); Stringbir=Filter.escapeHTMLTags(request.getParameter("bir").trim()); Stringtelphone=Filter.escapeHTMLTags(request.getParameter("telphone").trim()); Stringemail=Filter.escapeHTMLTags(request.getParameter("email").trim()); Stringquestion=Filter.escapeHTMLTags(request.getParameter("question").trim()); Stringanswer=Filter.escapeHTMLTags(request.getParameter("answer").trim()); Stringaddress=Filter.escapeHTMLTags(request.getParameter("address").trim()); Stringlastip=request.getRemoteAddr(); intoff=1; intflag=memberBean.personReg(username,password,type,realname,sex,bir,sheng,city,telphone,email,question,answer,lastip,off,address); if(flag==Constant.SUCCESS){ ListsiteList=newSystemBean().getSiteInfo(); Stringsitename=siteList.get(0).toString(); request.setAttribute("message","注冊成功!恭喜您成為"+sitename+"的注冊會員!"); request.getRequestDispatcher("login.jsp").forward(request,response);整理為word格式整理為word格式整理為word格式 } else{ request.setAttribute("message","系統(tǒng)維護(hù)中,請稍后再試!"); request.getRequestDispatcher("personreg.jsp").forward(request,response); } }4.3.3用戶登陸用于用戶登陸進(jìn)入系統(tǒng)的界面,登陸后,用戶可以進(jìn)行更多的操作,比如把商品添加到購物車、發(fā)布商品信息、進(jìn)行訂單管理等,用戶需要建立一個賬號和密碼才能進(jìn)入使用系統(tǒng),當(dāng)用戶輸入自己的賬號和密碼時,系統(tǒng)進(jìn)行驗(yàn)證,如果正確,進(jìn)入系統(tǒng);如果錯誤,則提示用戶輸入的信息不正確,重新輸入信息.該界面還為新用戶設(shè)置了專門的注冊鏈接,通過點(diǎn)擊注冊按鈕直接進(jìn)入新用戶的注冊界面.在登陸的時候,密碼框采用密文形式輸入,保護(hù)用戶登陸的安全性。實(shí)現(xiàn)會員登錄這一功能的主要代碼如下:publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ doPost(request,response); }publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.setContentType(Constant.CONTENTTYPE); request.setCharacterEncoding(Constant.CHARACTERENCODING); HttpSessionsession=request.getSession(); MemberBeanmemberBean=newMemberBean(); Stringmethod=Filter.escapeHTMLTags(request.getParameter("method").trim());整理為word格式整理為word格式整理為word格式 if(method.equals("HEADUSERLOGIN")){ Stringreg_user=Filter.escapeHTMLTags(request.getParameter("reg_user").trim()); Stringreg_pwd=Filter.escapeHTMLTags(request.getParameter("reg_pwd").trim()); Stringreg_type=Filter.escapeHTMLTags(request.getParameter("reg_type").trim()); Stringlastip=request.getRemoteAddr(); intflag=memberBean.memberLogin(reg_user,reg_pwd,reg_type); if(flag==Constant.SUCCESS){ Stringinfo=memberBean.getLastTimeIP(reg_user); intflag2=memberBean.upmemberLogin(reg_user,lastip); if(flag2==Constant.SUCCESS){ sessi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度板材行業(yè)環(huán)保認(rèn)證與評估合同3篇
- 2025年度毛紗產(chǎn)品售后服務(wù)及維修合同4篇
- 2025年度個人房產(chǎn)買賣及裝修工程管理協(xié)議4篇
- 2025年度二零二五年度環(huán)保產(chǎn)業(yè)供應(yīng)鏈融資保理合同4篇
- 2025年度個人教育貸款借條4篇
- 2025年度毛石擋土墻施工期施工安全管理與教育培訓(xùn)合同4篇
- 2025年度海洋運(yùn)輸船員勞動合同書3篇
- 2024綜合服務(wù)外包合同標(biāo)準(zhǔn)文本版B版
- 2025年度智能車間租賃安全協(xié)議書規(guī)范文本4篇
- 2024黎塘售樓部裝修合同
- 土地買賣合同參考模板
- 新能源行業(yè)市場分析報(bào)告
- 2022年7月2日江蘇事業(yè)單位統(tǒng)考《綜合知識和能力素質(zhì)》(管理崗)
- 初一英語語法練習(xí)
- 房地產(chǎn)運(yùn)營管理:提升項(xiàng)目品質(zhì)
- 你劃我猜游戲【共159張課件】
- 專升本英語閱讀理解50篇
- 中餐烹飪技法大全
- 新型電力系統(tǒng)研究
- 滋補(bǔ)類用藥的培訓(xùn)
- 北師大版高三數(shù)學(xué)選修4-6初等數(shù)論初步全冊課件【完整版】
評論
0/150
提交評論