freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

網(wǎng)上二手拍賣系統(tǒng)的設(shè)計(jì)范文畢業(yè)論文-資料下載頁(yè)

2025-08-04 05:06本頁(yè)面
  

【正文】 我們?cè)O(shè)計(jì)了兩個(gè)數(shù)據(jù)庫(kù):? 數(shù)據(jù)庫(kù) SaleOnLine:負(fù)責(zé)存放用戶、商品的相關(guān)信息? 數(shù)據(jù)庫(kù) MyDB:負(fù)責(zé)存放所有用戶的競(jìng)拍報(bào)告 數(shù)據(jù)庫(kù) SaleOnLine為了實(shí)現(xiàn)需求分析和網(wǎng)站功能設(shè)計(jì)里所提及的所有要求,在數(shù)據(jù)庫(kù)SaleOnLine 中,設(shè)計(jì)了如下幾個(gè)數(shù)據(jù)表:? userList在該數(shù)據(jù)表中,保存的是與用戶有關(guān)的所有信息。一共有 5 個(gè)字段,各個(gè)字段的名稱及其表示的意義分別是:字段 username 表示用戶的用戶名,字段password 表示用戶的密碼,字段 name 表示用戶的真實(shí)姓名,字段 address 表示用戶的地址,字段 telephone 表示用戶的聯(lián)系方式。如圖 312 所示。圖 312 userList 數(shù)據(jù)表的內(nèi)容? goodsList在該數(shù)據(jù)表中,保存的是與商品有關(guān)的所有信息。一共有 8 個(gè)字段,各個(gè)字段的名稱及其表示的意義分別是:字段 ID 表示商品的 ID,字段 goodsname表示商品的名稱,字段 saleby 表示商品的發(fā)布人,字段 introduction 表示商品的簡(jiǎn)單介紹,字段 leastprice 表示商品的起始價(jià),字段 salesinceprice 表示商品的一口價(jià),字段 onceleastprice 表示商品的每次至少加價(jià),字段saletime 表示商品的拍賣截止日期。如圖 313 所示。圖 313 goodsList 數(shù)據(jù)表的內(nèi)容? bidList在該數(shù)據(jù)表中,保存的是商品的最新出價(jià)的信息。一共有 3 個(gè)字段,各個(gè)字段的名稱及其表示的意義分別是:字段 ID 表示被出價(jià)商品的 ID,字段username 表示為該商品出該價(jià)格的用戶,字段 price 表示該商品當(dāng)前的最新出價(jià)。如圖 314 所示。圖 314 bidList 數(shù)據(jù)表的內(nèi)容 數(shù)據(jù)庫(kù) MyDB在該數(shù)據(jù)庫(kù)中,只有一個(gè)數(shù)據(jù)表 TBL_MESSAGE,保存的是所有與競(jìng)拍活動(dòng)有關(guān)的競(jìng)拍報(bào)告,在這個(gè)數(shù)據(jù)表中一共有 6 個(gè)字段,各個(gè)字段的名稱及其表示的意義分別是:字段 id 表示該競(jìng)拍報(bào)告的 id,字段 note 表示該競(jìng)拍報(bào)告的具體內(nèi)容,字段 sendUname 表示該競(jìng)拍報(bào)告的發(fā)送方,字段 receiveUname 表示該競(jìng)拍報(bào)告的接收方,字段 postTime 表示該競(jìng)拍報(bào)告的發(fā)送時(shí)間,字段readSign 表示該競(jìng)拍報(bào)告的閱讀狀態(tài)(0 表示未讀,1 表示已讀) 。如圖 315所示。圖 315 TBL_MESSAGE 數(shù)據(jù)表的內(nèi)容 利用 JavaBean 技術(shù)連接數(shù)據(jù)庫(kù)為了使系統(tǒng)能夠正常的運(yùn)行,系統(tǒng)前臺(tái)必須與后臺(tái)數(shù)據(jù)庫(kù)連接。在 JSP 的網(wǎng)頁(yè)中連接數(shù)據(jù)庫(kù),我們使用的 JavaBean 技術(shù)。在開發(fā)過(guò)程中,經(jīng)常要對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作(包括插入、刪除、更新和查詢等) 。為避免重復(fù)代碼的使用和減少錯(cuò)誤代碼的出現(xiàn),因此連接和操作數(shù)據(jù)庫(kù)寫成兩個(gè)JavaBean“”、 “”,其核心語(yǔ)句是:? driverName = 。dbURL = jdbc: DatabaseName=SaleOnLine。userName = sa。userPassword = sa12345。(driverName)。con = (dbURL, userName, userPassword)。stmt = (, )。? ()。con = (jdbc:在需要進(jìn)行數(shù)據(jù)庫(kù)操作的時(shí)候,只需要在 JSP 網(wǎng)頁(yè)中加入:jsp:useBean id=dataBase class= scope=page/jsp:useBean,即可在相關(guān)的網(wǎng)頁(yè)中進(jìn)行數(shù)據(jù)庫(kù)操作。 系統(tǒng)的體系結(jié)構(gòu)設(shè)計(jì) 網(wǎng)站主體結(jié)構(gòu)系統(tǒng)結(jié)構(gòu)如圖 316 所示。圖 316 網(wǎng)站主體結(jié)構(gòu) “發(fā)布新商品”功能模塊結(jié)構(gòu)“發(fā)布新商品”功能模塊結(jié)構(gòu)如圖 317 所示。圖 317 “發(fā)布新商品”功能模塊結(jié)構(gòu) “查看正在競(jìng)拍的商品”與“參加商品的競(jìng)拍”功能模塊結(jié)構(gòu)“查看正在競(jìng)拍的商品”與“參加商品的競(jìng)拍”功能模塊結(jié)構(gòu)如圖 318 所示。圖 318 “正在競(jìng)拍的商品 ”與“參加商品的競(jìng)拍”功能模塊結(jié)構(gòu)這里需要說(shuō)明的是,當(dāng)“出價(jià)仲裁”判斷“出價(jià)成功”后,系統(tǒng)將會(huì)自動(dòng)發(fā)送一份“出價(jià)成功”的報(bào)告給該用戶,即使用戶離線,也能收到該報(bào)告,以便日后查閱。如果用戶“拍得該商品” ,系統(tǒng)則將自動(dòng)發(fā)送一份“商品成交”的報(bào)告給買方和賣方,以供雙方聯(lián)系付款發(fā)貨。 ( 報(bào)告的內(nèi)容請(qǐng)參照 查看競(jìng)拍報(bào)告) “查看競(jìng)拍報(bào)告”功能模塊結(jié)構(gòu)“查看競(jìng)拍報(bào)告”功能模塊結(jié)構(gòu)如圖 319 所示。圖 319 “查看競(jìng)拍報(bào)告”功能模塊結(jié)構(gòu) 系統(tǒng)的關(guān)鍵技術(shù)——如何獲得“及時(shí)”信息對(duì)于這樣一個(gè)網(wǎng)上拍賣系統(tǒng),最關(guān)鍵的技術(shù)莫過(guò)于要及時(shí)更新對(duì)某商品的競(jìng)價(jià),控制好不同用戶之間通信。對(duì)于特殊的用戶(如出價(jià)成功的當(dāng)前用戶或者剛進(jìn)入商品拍賣頁(yè)面的用戶) ,我們可以簡(jiǎn)單地直接在進(jìn)入商品拍賣頁(yè)面的時(shí)候從數(shù)據(jù)庫(kù)的商品競(jìng)價(jià)表中獲取該商品的最新競(jìng)價(jià)。但是對(duì)于那些長(zhǎng)期停留在某商品拍賣頁(yè)面的用戶,我們必須做特殊的處理,否則,該用戶只是在進(jìn)入商品拍賣頁(yè)面時(shí)獲得了商品的最新競(jìng)價(jià),一旦其他客戶端的用戶對(duì)該商品的競(jìng)價(jià)進(jìn)行了更新,由于停止的頁(yè)面使得 JSP 代碼無(wú)法再次執(zhí)行,客戶端就無(wú)法發(fā)出請(qǐng)求,得不到服務(wù)器端的相應(yīng),所以該用戶看到的永遠(yuǎn)將是最原始的競(jìng)價(jià),無(wú)法得到最新的信息。這是像網(wǎng)上拍賣系統(tǒng)這種及時(shí)系統(tǒng)所必須解決的。目前解決這種問(wèn)題的方案主要有兩種:服務(wù)器推送(server push) 、客戶端拉拽(client pull) 。 服務(wù)器推送(server push)簡(jiǎn)單的說(shuō),服務(wù)器推送(server push)就是服務(wù)器與每一個(gè)與之相連接的客戶端都保持一個(gè)基于 的長(zhǎng)連接,這個(gè)長(zhǎng)連接作為以后傳輸及時(shí)數(shù)據(jù)的通道,一旦服務(wù)器端有數(shù)據(jù)發(fā)生改變,服務(wù)器就通過(guò)這個(gè)長(zhǎng)連接將最新的數(shù)據(jù)發(fā)送到客戶端??蛻舳酥恍枰忉尣@示從服務(wù)器發(fā)來(lái)的數(shù)據(jù)即可。服務(wù)器端則需要維護(hù)一個(gè)長(zhǎng)連接隊(duì)列,記錄每一個(gè)與之相連的客戶端 【22】 。這種技術(shù)的優(yōu)勢(shì)在于,能夠?qū)崟r(shí)的傳輸數(shù)據(jù),保持?jǐn)?shù)據(jù)的敏感性,最大限度的減少延遲,同時(shí)省略客戶端毫無(wú)必要的刷新操作,減少客戶端的壓力。不可否認(rèn),這種技術(shù)很適合及時(shí)系統(tǒng)的開發(fā)。但是它也有其固有的不足,就是服務(wù)器端需要維護(hù)一個(gè)長(zhǎng)連接隊(duì)列,記錄每一個(gè)與之連接的客戶端的信息,這無(wú)形中占用了大量的服務(wù)器資源,加大了服務(wù)器的壓力,對(duì)服務(wù)器的性能要求相對(duì)苛刻,同時(shí)大大的降低了服務(wù)器并發(fā)數(shù)。值得一提的是,采用服務(wù)器推送(server push)技術(shù),每一個(gè)客戶端最多可以保持兩條與服務(wù)器相連的長(zhǎng)連接,一旦有客戶端的長(zhǎng)連接超過(guò)兩條,系統(tǒng)就會(huì)崩潰。這無(wú)形中又增加了開發(fā)的難度。 客戶端拉拽(client pull)簡(jiǎn)單的說(shuō),客戶端拉拽(client pull)就是由客戶端以某個(gè)頻率不斷的向服務(wù)器發(fā)送請(qǐng)求,然后接收服務(wù)器回送的信息,以保持信息的及時(shí)性的技術(shù)。所以以這種技術(shù)獲得的及時(shí)信息,與其說(shuō)是“及時(shí)信息” ,不如說(shuō)是“相對(duì)及時(shí)信息” 。信息的延遲可能較長(zhǎng),拉拽頻率也很難控制。同時(shí)其實(shí)大量的拉拽是沒(méi)有必要的,增加了客戶端的壓力,而不斷的拉拽刷新也是得界面的美觀程度受到一定的影響。但是它也有其優(yōu)點(diǎn),就是客戶端拉拽(client pull)能夠保持服務(wù)器無(wú)狀態(tài)高并發(fā)的優(yōu)勢(shì)。客戶端發(fā)送一次請(qǐng)求,服務(wù)器回送數(shù)據(jù)后,就與服務(wù)器斷開,大大減輕了服務(wù)器的壓力,使得服務(wù)器可以在相同的條件下為更多的客戶端服務(wù)。同時(shí)實(shí)現(xiàn)也相當(dāng)?shù)暮?jiǎn)單,不會(huì)對(duì)網(wǎng)站的體系結(jié)構(gòu)造成額外的負(fù)擔(dān)。 關(guān)鍵技術(shù)的選用綜上所述,這兩種技術(shù)各有優(yōu)勢(shì),又都存在不足之處。相對(duì)來(lái)說(shuō),服務(wù)器推送(server push)技術(shù)更適合開發(fā)像網(wǎng)上拍賣系統(tǒng)這樣的實(shí)時(shí)系統(tǒng),但是它就好像是一把“雙刃劍” ,用好了可以事半功倍,用不好則會(huì)得不償失。其實(shí)之前我也有想過(guò)用服務(wù)器推送(server push)技術(shù),但是我忽略了一個(gè)重要的問(wèn)題,就是長(zhǎng)連接的數(shù)量問(wèn)題,即是每一個(gè)客戶端只能夠與服務(wù)器保持最多兩條的長(zhǎng)連接。而本系統(tǒng)的一大特點(diǎn)就是用戶同時(shí)參與多個(gè)商品的競(jìng)拍,這與服務(wù)器推送(server push)技術(shù)的長(zhǎng)連接原則是違背的。如果非要使用服務(wù)器推送(server push)技術(shù),則需要修改很多地方,甚至涉及到網(wǎng)站體系結(jié)構(gòu)的修改,工作量實(shí)在太大。反之,客戶端拉拽(client pull)技術(shù)雖然簡(jiǎn)單,容易實(shí)現(xiàn),但是只要調(diào)整好拉拽頻率,效果雖然沒(méi)有服務(wù)器推送(server push)技術(shù)好,但是也差不到哪里去。而且客戶端拉拽(client pull)技術(shù)保持服務(wù)器無(wú)狀態(tài)高并發(fā)的優(yōu)勢(shì),正適合網(wǎng)上拍賣系統(tǒng),因?yàn)槿魏我粋€(gè)市場(chǎng)的繁榮都需要大量的客戶參與。而客戶端拉拽(client pull)對(duì)服務(wù)器的寬松條件,對(duì)于那些實(shí)力不是很雄厚的中小企業(yè)來(lái)說(shuō),其實(shí)用性也增強(qiáng)了??傊?,雖然使用客戶端拉拽(client pull)技術(shù)是無(wú)奈之舉,但是也可以說(shuō)收到了意想不到的效果,發(fā)掘了其潛在的優(yōu)勢(shì)。以下是客戶端拉拽(client pull)技術(shù)實(shí)現(xiàn)的核心代碼:(只需要在 JSP頁(yè)面文件的 HTML 的 body 部分添加下面代碼,即可實(shí)現(xiàn)。 )meta equiv=refresh content=20。url = %=url% 系統(tǒng)的測(cè)試 測(cè)試目標(biāo)測(cè)試網(wǎng)上拍賣系統(tǒng)整體功能是否達(dá)到設(shè)計(jì)要求,以及各個(gè)功能模塊是否正常運(yùn)行。各項(xiàng)具體測(cè)試目標(biāo)如下:(1) 系統(tǒng)首界面的啟動(dòng):登錄頁(yè)面、用戶注冊(cè)等功能。(2) 新用戶注冊(cè):進(jìn)行用戶名、密碼、真實(shí)姓名、地址和聯(lián)系方式的注冊(cè)登記。(3) 新商品的發(fā)布:進(jìn)行商品各項(xiàng)信息的發(fā)布登記。(4) 查看正在拍賣的商品信息:顯示所有正在拍賣的商品的簡(jiǎn)要信息。(5) 參與某商品的競(jìng)拍:顯示該商品的詳細(xì)信息,對(duì)該商品的出價(jià)功能,拍賣的仲裁以及競(jìng)拍報(bào)告的發(fā)送,多客戶端同時(shí)參與競(jìng)拍等。(6) 查看競(jìng)拍報(bào)告:出價(jià)報(bào)告、成交報(bào)告等的相關(guān)信息。 測(cè)試結(jié)果? 用戶登錄在系統(tǒng)首頁(yè)中,輸入一個(gè)已注冊(cè)的用戶名和密碼即可登錄系統(tǒng)。如果輸入的是未注冊(cè)的用戶名和密碼,或者是任何非法信息,系統(tǒng)會(huì)提示登錄失敗,并自動(dòng)轉(zhuǎn)回系統(tǒng)首頁(yè),讓用戶重新登錄。? 用戶注冊(cè)在系統(tǒng)首頁(yè)中,點(diǎn)擊“注冊(cè)”即可進(jìn)入用戶注冊(cè)頁(yè)面。在用戶注冊(cè)頁(yè)面中提交相關(guān)信息即可注冊(cè)成為會(huì)員,使用系統(tǒng)的各項(xiàng)功能。注冊(cè)成功后,系統(tǒng)給出提示并自動(dòng)登錄系統(tǒng)主界面。如果提交的信息不完整或者提交非法信息,系統(tǒng)給出注冊(cè)失敗的提示,并自動(dòng)轉(zhuǎn)回用戶注冊(cè)頁(yè)面,讓用戶重新登錄。? 發(fā)布新商品登錄系統(tǒng)主界面后,點(diǎn)擊“發(fā)布新商品”即可進(jìn)入新商品的發(fā)布頁(yè)面。用戶在該頁(yè)面中提交相關(guān)的信息即可將該商品進(jìn)行發(fā)布登記,參與競(jìng)拍。商品發(fā)布成功后,系統(tǒng)給出提示并自動(dòng)轉(zhuǎn)回系統(tǒng)主頁(yè)面。如果提交的信息不完整或者提交任何非法信息,系統(tǒng)給出發(fā)布失敗的提示,并自動(dòng)轉(zhuǎn)回新商品的發(fā)布頁(yè)面,讓用戶重新發(fā)布商品。在測(cè)試過(guò)程中,每個(gè)用戶均可發(fā)布多個(gè)商品。? 查看正在拍賣的商品登錄系統(tǒng)主界面后,點(diǎn)擊“正在拍賣的商品”即可進(jìn)入商品的所有信息頁(yè)面。用戶在該頁(yè)面可以查看到目前已經(jīng)進(jìn)行合法發(fā)布登記的正在進(jìn)行拍賣的所有商品,如果商品太多,還可以前后翻頁(yè)進(jìn)行查看。在該頁(yè)面中,用戶看到的是商品的簡(jiǎn)要信息。測(cè)試過(guò)程中,所有正在拍賣的商品均能正常顯示。? 參與某商品的競(jìng)拍登錄系統(tǒng)后,先進(jìn)入“正在拍賣的商品”頁(yè)面,在“商品的所有信息”列表中點(diǎn)擊某商品的“參加競(jìng)拍”鏈接,就可以進(jìn)入該商品的競(jìng)拍頁(yè)面。測(cè)試過(guò)程中,該商品的詳細(xì)信息、當(dāng)前競(jìng)價(jià)、當(dāng)前競(jìng)價(jià)的更新、離競(jìng)拍截止時(shí)間的倒計(jì)時(shí)、用戶出價(jià)等功能均能正常實(shí)現(xiàn)。對(duì)于不合法的出價(jià),系統(tǒng)會(huì)給出提示并自動(dòng)轉(zhuǎn)回該商品的“參加競(jìng)拍”頁(yè)面。如果出價(jià)成功,系統(tǒng)會(huì)自動(dòng)給成功出價(jià)的用戶發(fā)送“出價(jià)成功”的報(bào)告,以便用戶日后查閱。對(duì)于多客戶端的同時(shí)參與競(jìng)拍, (1)A 用戶的成功出價(jià)能及時(shí)顯示在 B 用戶的客戶端上。另外,在測(cè)試過(guò)程中, (2)如果 A 用戶先于 B 用戶進(jìn)入“正在拍賣的商品” ,但是 B 用戶在 A 用戶之前將 a 商品拍走,當(dāng) A 用戶再次進(jìn)入 a 商品的“參加競(jìng)拍”時(shí),系統(tǒng)會(huì)自動(dòng)提示該商品已撤下貨架,并關(guān)閉窗口。 (3)如果 A 用戶和 B 用戶都進(jìn)入了同一個(gè)商品的“參加競(jìng)拍” ,A 用戶先于 B 用戶將該商品拍走,這時(shí) B 用戶的頁(yè)面會(huì)提示該商品已經(jīng)被買走。拍得商品有兩種方式:商品的第一次被出價(jià)達(dá)到一口價(jià)、競(jìng)拍時(shí)間到且商品當(dāng)前有出價(jià)。在測(cè)試過(guò)程中,無(wú)論這兩種方式的哪一種,用戶都能成功拍下該商品。該商品被拍下后,系統(tǒng)會(huì)自動(dòng)給買賣雙方發(fā)送“商品成交”報(bào)告,包括雙方的真實(shí)資料,供其互相聯(lián)系付款發(fā)貨。值得一提的是,只有拍得該商品的買家和發(fā)布該商品的賣家才能得到該報(bào)告,這也保證了交易的安全性。如果競(jìng)拍時(shí)間截止時(shí),某商品依然沒(méi)有被出價(jià),那則該商品的拍賣失敗,系統(tǒng)會(huì)發(fā)送“拍賣失敗”報(bào)告給發(fā)布該商品的用戶,并自動(dòng)將其撤下貨架,如果用戶想再次參與拍賣,可以將該商品再次發(fā)布。測(cè)試過(guò)程中,此功能正常運(yùn)行。? 查看競(jìng)拍報(bào)告競(jìng)拍報(bào)告有如下幾種:“出價(jià)成功”報(bào)告、 “商品成交”報(bào)告、 “拍賣失敗”報(bào)告。在測(cè)試過(guò)程中,所有報(bào)告均能正常顯示,用戶對(duì)競(jìng)拍報(bào)告的“刪除”功能也能正常實(shí)現(xiàn)。 測(cè)試結(jié)論通過(guò)以上測(cè)試,系統(tǒng)中用戶的登記和管理模塊、商品的登記和管理模塊、競(jìng)拍系統(tǒng)模塊、競(jìng)拍報(bào)告模塊均正常工作。從測(cè)試結(jié)果也可以看出,所有與拍賣有關(guān)的商務(wù)活動(dòng)均能正常實(shí)現(xiàn),對(duì)于多客戶端的拍賣測(cè)試也沒(méi)有異常,對(duì)于其過(guò)程中可能產(chǎn)生的非法的操作和數(shù)據(jù),均有友好的提示和引導(dǎo)??梢哉f(shuō),本網(wǎng)上拍賣系統(tǒng)基本達(dá)到軟件設(shè)計(jì)要求,驗(yàn)證了系統(tǒng)的設(shè)計(jì)思想,將來(lái)有可能投入應(yīng)用。第四章
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1