本科畢業(yè)論文:Web校園二手交易系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)44241_第1頁
本科畢業(yè)論文:Web校園二手交易系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)44241_第2頁
本科畢業(yè)論文:Web校園二手交易系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)44241_第3頁
本科畢業(yè)論文:Web校園二手交易系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)44241_第4頁
本科畢業(yè)論文:Web校園二手交易系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)44241_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、安陽師范學(xué)院本科學(xué)生畢業(yè)論文web校園二手交易系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)作 者 周 偉 院 (系) 人文管理學(xué)院 專 業(yè) 信息管理與信息系統(tǒng) 年 級(jí) 2007 級(jí) 學(xué) 號(hào) 074952024 指導(dǎo)教師 田喜平 論文成績(jī) 日 期 2009 年 6 月 目 錄1引言11.1 開發(fā)背景11.2 開發(fā)意義11.3 可行性研究22系統(tǒng)構(gòu)架分析22.1java語言簡(jiǎn)潔22.2 javaee技術(shù)介紹22.3 servlet/jsp技術(shù)32.4 javabeans技術(shù)32.5 開發(fā)環(huán)境及環(huán)境配置42.5.1 系統(tǒng)環(huán)境及java/jsp環(huán)境配置42.5.2 數(shù)據(jù)庫開發(fā)工具選擇及配置42.5.3 關(guān)系數(shù)據(jù)庫管理系統(tǒng)52.5

2、.4 對(duì)性能的一般規(guī)定52.5.5 其他專門要求52.5.6 對(duì)安全性的要求52.5.7 運(yùn)行環(huán)境規(guī)定53系統(tǒng)設(shè)計(jì)63.1 系統(tǒng)總體設(shè)計(jì)63.2 概要設(shè)計(jì)63.2.1 系統(tǒng)功能模塊設(shè)計(jì)63.2.2 系統(tǒng)結(jié)構(gòu)圖73.2.3 數(shù)據(jù)流圖73.3數(shù)據(jù)庫設(shè)計(jì)83.3.1 數(shù)據(jù)庫需求分析83.3.2 數(shù)據(jù)庫概要設(shè)計(jì)83.3.3 數(shù)據(jù)庫詳細(xì)設(shè)計(jì)94 系統(tǒng)實(shí)現(xiàn)114.1程序設(shè)計(jì)114.2系統(tǒng)的測(cè)試214.2.1測(cè)試的目的和作用214.2.2測(cè)試原則214.2.3測(cè)試方法和步驟21總 結(jié)22參 考 文 獻(xiàn)24web校園二手交易系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)周偉(安陽師范學(xué)院 人文管理學(xué)院, 河南 安陽 455002)摘 要:

3、隨著信息技術(shù)的迅速發(fā)展與網(wǎng)絡(luò)教學(xué)的普及,網(wǎng)上作業(yè)提交也成為現(xiàn)代化教學(xué)不可或缺的一部分。在此背景下,用javaee開發(fā)了網(wǎng)上作業(yè)提交系統(tǒng)。本論文首先考慮了學(xué)生網(wǎng)上作業(yè)提交和教師網(wǎng)上作業(yè)批改的實(shí)際要求,分析了此系統(tǒng)應(yīng)該具有的功能;其次對(duì)系統(tǒng)的主要功能模塊進(jìn)行了詳細(xì)地描述,其中主要包括教師布置作業(yè),學(xué)生提交作業(yè),教師批改作業(yè)和管理員設(shè)置。最后結(jié)合系統(tǒng)開發(fā)階段和調(diào)試階段發(fā)現(xiàn)的問題,提出了系統(tǒng)需要完善的地方,總結(jié)了開發(fā)此系統(tǒng)所取得的經(jīng)驗(yàn)和體會(huì)。關(guān)鍵詞:web二手交易系統(tǒng);javaee;b/s結(jié)構(gòu);數(shù)據(jù)庫1 引言1.1 開發(fā)背景近些年來互聯(lián)網(wǎng)迅速發(fā)展,使得不同地點(diǎn)的人們?cè)谌魏螘r(shí)間都可以輕松獲取自己需要的信

4、息,同時(shí)互聯(lián)網(wǎng)的出現(xiàn)極大地推動(dòng)了教育事業(yè)的發(fā)展,特別是javaee技術(shù),以其交互性、動(dòng)態(tài)性的特點(diǎn),大大擴(kuò)展了互聯(lián)網(wǎng)的應(yīng)用范圍,互聯(lián)網(wǎng)的廣泛應(yīng)用也深刻的影響了教育教學(xué)領(lǐng)域。1.2 開發(fā)意義 隨著全世界互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,各種基于互聯(lián)網(wǎng)技術(shù)的網(wǎng)絡(luò)應(yīng)用不斷涌現(xiàn),網(wǎng)絡(luò)技術(shù)正在不斷的深入人們的生活。人們從internet上獲取信息、享受生活、交流感情、網(wǎng)上工作等。internet正在迅速改變著人們的生活方式。在當(dāng)前社會(huì)上,許多的各種類型的電子商務(wù)類網(wǎng)站紛紛建立,可以很大程度上的解決人們信息資源的閉塞以及地域上的限制。作為大學(xué)校園,伴隨著學(xué)生的購買能力的提高和每年的升學(xué)和畢業(yè),也存在的許多各種類型的二手

5、商品,由于信息交流的落后,很多只限于于校園公告欄或者請(qǐng)人代為宣傳的方式進(jìn)行交易。這種方式有很多局限性和偶然性,并不能滿足二手商品暢通交流的要求。于是一種新的二手商品信息交流的方式出現(xiàn)了,就是基于web的校園網(wǎng)二手商品交易系統(tǒng)。通過這個(gè)系統(tǒng),可以發(fā)現(xiàn)每一個(gè)校園網(wǎng)用戶都是系統(tǒng)的主人,大家可以非常方便的發(fā)布自己的信息,瀏覽別人的發(fā)布的信息,還可以對(duì)各種二手商品信息作出橫向比較,作出自己的最佳選擇。由此可見,該系統(tǒng)只是一個(gè)交流二手商品信息的平臺(tái),與一般的電子商務(wù)類網(wǎng)站又有本質(zhì)的區(qū)別。1.3 可行性研究 設(shè)計(jì)這樣一個(gè)系統(tǒng),從根本上解決了傳統(tǒng)的校園二手信息發(fā)布交流方式的弊端,使得校園各種二手商品信息得到了

6、有效的整合,方便了廣大用戶。且擁有的客戶通常只是大學(xué)校園網(wǎng)的用戶,所有系統(tǒng)規(guī)模上來講不會(huì)很大,從經(jīng)濟(jì)上來說,由于選擇的開發(fā)工具和服務(wù)器幾乎全部為免費(fèi)的開源軟件,并且由于是開發(fā)成本較低的基于web的b/s模式,而非成本費(fèi)用相對(duì)較高的c/s模式,所以從經(jīng)濟(jì)上來講是可行的。從技術(shù)上來說,由于是基于web的,可以相對(duì)比較容易面對(duì)用戶的實(shí)際需求而開發(fā)。而在現(xiàn)今,各種網(wǎng)絡(luò)應(yīng)用的開發(fā)已經(jīng)相當(dāng)成熟,出現(xiàn)了幾大主流的開發(fā)語言和工具,都可以非常有效的支持開發(fā)這樣一個(gè)系統(tǒng)。同時(shí)作為本系統(tǒng),也有許多成功的電子商務(wù)類網(wǎng)站的經(jīng)驗(yàn)可以借鑒,所以從技術(shù)的角度來說,也是可行的。從運(yùn)行上來說,由于客戶端僅僅只是需要一個(gè)瀏覽器,通

7、過瀏覽器來登陸系統(tǒng),而服務(wù)器端也只需要一臺(tái)服務(wù)器,服務(wù)器要求一個(gè)數(shù)據(jù)庫環(huán)境和一個(gè)網(wǎng)絡(luò)應(yīng)用開發(fā)的環(huán)境,實(shí)現(xiàn)起來比較容易,所以從運(yùn)行上來說是可行的。同時(shí)這樣一個(gè)系統(tǒng),在系統(tǒng)管理員合法管理和用戶的自覺配合下,不會(huì)違規(guī)進(jìn)行任何的不法的活動(dòng)和交易,發(fā)布具有危害性和不適宜的信息,也不存在任何非法牟利的行為,在法律上也是可行的。在各種可行性研究保證和基于用戶需求要求下,開發(fā)系統(tǒng)的方案經(jīng)過不斷論證和假設(shè),確定出了一個(gè)最佳方案。2 系統(tǒng)構(gòu)架分析2.1 java語言簡(jiǎn)介java語言是美國sun公司于1995年推出的一種簡(jiǎn)單的、面向?qū)ο蟮?、分布式的、可解釋的、鍵壯的、安全的、結(jié)構(gòu)的、中立的、可移植的、性能很優(yōu)異的多

8、線程的、動(dòng)態(tài)的語言。其前身為oak語言,是sun公司為一些消費(fèi)性電子產(chǎn)品而設(shè)計(jì)的一個(gè)通用環(huán)境。他們最初的目的只是為了開發(fā)一種獨(dú)立于平臺(tái)的軟件技術(shù)。經(jīng)過sun公司的工程師的不懈努力以及全世界無數(shù)的編程愛好者的使用,java終于發(fā)展成為今天這樣一個(gè)集桌面(j2se)、網(wǎng)絡(luò)(j2ee)、移動(dòng)平臺(tái)(j2me)應(yīng)用為一體的功能強(qiáng)大的編程語言。目前java由于其平臺(tái)無關(guān)及分布式特性,最重要的應(yīng)用是在網(wǎng)絡(luò)應(yīng)用上。2.2 j2ee技術(shù)介紹j2ee技術(shù)是java網(wǎng)絡(luò)應(yīng)用的技術(shù),廣泛應(yīng)用于企業(yè)級(jí)的應(yīng)用。它是由一套規(guī)范(shannin,2001)和建立在j2se平臺(tái)上的應(yīng)用編程接口(api)組成。j2ee擁有sun

9、公司提供免費(fèi)開發(fā)工具,稱為j2ee軟件開發(fā)工具包(software development kit,sdk )(/j2ee)。j2ee技術(shù)是一種java網(wǎng)絡(luò)應(yīng)用技術(shù)的組合,包含有遠(yuǎn)程方法調(diào)用(remote method invocation,rmi)、java消息服務(wù)(java message service,jms)、javamail等通信服務(wù),jdbc、java命名和目錄接口(java naming and directory interface,jndi)、java連接器體系結(jié)構(gòu)(java connector architecture,jca)、jav

10、a事務(wù)api/java事務(wù)服務(wù)(jta/jts)、xml處理api等通用服務(wù)以及servlet、java服務(wù)器頁面(jsp)、企業(yè)級(jí)javabean(ejb)等組件技術(shù)。任何j2ee的實(shí)現(xiàn)都必須要在其特定容器中實(shí)現(xiàn)。 2.3 servlet/jsp技術(shù)servlet是jsp技術(shù)的基礎(chǔ),jsp本身就是預(yù)先被編譯成servlet,然后再運(yùn)行的,而且大型的web應(yīng)用程序的開發(fā)需要java servlet和jsp配合才能完成。 servlet其實(shí)和傳統(tǒng)的cgi程序和isapi、nsapi等web程序開發(fā)工具的作用是相同的,在使用java servlet以后,用戶不必再使用效率低下的cgi方式,也不必使

11、用只能在某個(gè)固定web服務(wù)器平臺(tái)運(yùn)行的api方式來動(dòng)態(tài)生成web頁面。許多web服務(wù)器都支持servlet,即使不直接支持servlet的web服務(wù)器也可以通過附加的應(yīng)用服務(wù)器和模塊來支持servlet。得益于java的跨平臺(tái)的特性,servlet也是平臺(tái)無關(guān)的,實(shí)際上,只要符合java servlet規(guī)范,servlet是完全平臺(tái)無關(guān)且是web服務(wù)器無關(guān)的。由于java servlet內(nèi)部是以線程方式提供服務(wù),不必對(duì)于每個(gè)請(qǐng)求都啟動(dòng)一個(gè)進(jìn)程,并且利用多線程機(jī)制可以同時(shí)為多個(gè)請(qǐng)求服務(wù),因此java servlet效率非常高。但java servlet也不是沒有缺點(diǎn),和傳統(tǒng)的cgi、isapi、

12、nsapi方式相同,java servlet是利用輸出html語句來實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁的,如果用java servlet來開發(fā)整個(gè)網(wǎng)站,動(dòng)態(tài)部分和靜態(tài)頁面的整合過程簡(jiǎn)直就是一場(chǎng)噩夢(mèng)。這就是為什么sun還要推出java server pages的原因。jsp(javaserver pages)是一種基于java的腳本技術(shù)。在jsp 的眾多優(yōu)點(diǎn)之中,其中之一是它能將 html 編碼從 web 頁面的業(yè)務(wù)邏輯中有效地分離出來。用 jsp 訪問可重用的組件,如 servlet、javabean 和基于 java 的 web 應(yīng)用程序。jsp 還支持在 web 頁面中直接嵌入 java 代碼。可用兩種方法訪問

13、 jsp 文件:瀏覽器發(fā)送 jsp 文件請(qǐng)求、發(fā)送至 servlet 的請(qǐng)求。 1. jsp 文件訪問 bean 或其它能將生成的動(dòng)態(tài)內(nèi)容發(fā)送到瀏覽器的組件。2. 發(fā)送至 servlet 的請(qǐng)求生成動(dòng)態(tài)內(nèi)容,并調(diào)用 jsp 文件將內(nèi)容發(fā)送到瀏覽器。該訪問使得將內(nèi)容生成從內(nèi)容顯示中分離出來更為方便。jsp最大的優(yōu)點(diǎn)在于其與平臺(tái)無關(guān)性,并且具有“一次編寫,處處運(yùn)行”的特點(diǎn)。2.4 javabeans技術(shù)javabeans就是java的可重用組件技術(shù)。asp通過com來擴(kuò)充復(fù)雜的功能,如文件上載、發(fā)送email以及將業(yè)務(wù)處理或復(fù)雜計(jì)算分離出來成為獨(dú)立可重復(fù)利用的模塊。jsp通過javabeans實(shí)現(xiàn)

14、了同樣的功能擴(kuò)充。jsp對(duì)于在web應(yīng)用中集成javabeans組件提供了完善的支持。這種支持不僅能縮短開發(fā)時(shí)間(可以直接利用經(jīng)測(cè)試和可信任的已有組件,避免了重復(fù)開發(fā)),也為jsp應(yīng)用帶來了更多的可伸縮性。javabeans組件可以用來執(zhí)行復(fù)雜的計(jì)算任務(wù),或負(fù)責(zé)與數(shù)據(jù)庫的交互以及數(shù)據(jù)提取等。在實(shí)際的jsp開發(fā)過程中,和傳統(tǒng)的asp或php頁面相比,jsp頁面將會(huì)是非常簡(jiǎn)潔的,由于javabeans開發(fā)起來簡(jiǎn)單,又可以利用java語言的強(qiáng)大功能,許多動(dòng)態(tài)頁面處理過程實(shí)際上被封裝到了javabeans中。2.5 開發(fā)環(huán)境及環(huán)境配置2.5.1 系統(tǒng)環(huán)境及java/jsp環(huán)境配置開發(fā)及測(cè)試的系統(tǒng)環(huán)境,

15、我選擇了microsoft windows advanced server 2000。由于其本身就是為服務(wù)器版的,適合用于搭設(shè)成為服務(wù)器端。要開發(fā)jsp,首先必須要求有java環(huán)境,我選擇了java 2 platform,enterprise edition 1.4 sdk(即j2eesdk-1_4_03-windows)。作為jsp的容器,選擇了目前非常流行的tomcat 5.5。而ide工具則選擇了eclipse。各種軟件和工具安裝完成后,必須相應(yīng)的配置windows 2000的系統(tǒng)環(huán)境變量。2.5.2 數(shù)據(jù)庫開發(fā)工具選擇及配置oracle系統(tǒng)主要是由oracle database和ora

16、cle application server兩大拳頭產(chǎn)品及oracle 管理程序包等其他產(chǎn)品組成,下面主要例一下10g的產(chǎn)品:oracle database 10g 提供了四個(gè)版本,每個(gè)版本適用于不同的開發(fā)和部署環(huán)境。oracle 還提供了額外的幾種可選數(shù)據(jù)庫產(chǎn)品,這些產(chǎn)品針對(duì)特殊的應(yīng)用需求增強(qiáng)了 oracle database 10g 的功能。下面是 oracle database 10g 的可用版本: oracle數(shù)據(jù)庫10g企業(yè)版(oracle database 10g enterprise edition )為關(guān)鍵任務(wù)的應(yīng)用程序(如大業(yè)務(wù)量的在線事務(wù)處理 (oltp) 環(huán)境、查詢密集的

17、數(shù)據(jù)倉庫和要求苛刻的互聯(lián)網(wǎng)應(yīng)用程序)提供了高效、可靠、安全的數(shù)據(jù)管理。oracle 數(shù)據(jù)庫企業(yè)版為企業(yè)提供了滿足當(dāng)今關(guān)鍵任務(wù)應(yīng)用程序的可用性和可伸縮性需求的工具和功能。它包含了 oracle 數(shù)據(jù)庫的所有組件,并且能夠通過購買選項(xiàng)和程序包(本文稍后將加以說明)來進(jìn)一步得到增強(qiáng)。oracle 數(shù)據(jù)庫個(gè)人版、oracle 數(shù)據(jù)庫標(biāo)準(zhǔn)版、標(biāo)準(zhǔn)版1和 oracle 數(shù)據(jù)庫企業(yè)版包含了一系列常見的應(yīng)用程序開發(fā)功能(包括與 sql 對(duì)象相關(guān)的功能、用于編寫存儲(chǔ)過程和觸發(fā)器的 pl/sql 和 java 編程接口)。oracle 數(shù)據(jù)庫這些版本中的任意一個(gè)編寫的應(yīng)用程序?qū)⑴c其它的應(yīng)用程序一起運(yùn)行,oracl

18、e數(shù)據(jù)庫10g企業(yè)版提供了額外的性能2.5.3關(guān)系數(shù)據(jù)庫管理系統(tǒng)關(guān)系數(shù)據(jù)庫所使用關(guān)系語言班的特點(diǎn)是高度非過程化,即用戶只需說明做什么而不必說明怎么做。用戶不必請(qǐng)求數(shù)據(jù)庫管理員為其建立特殊的存取路徑,存取路徑的選擇是由dbms(數(shù)據(jù)庫管理系統(tǒng))自動(dòng)完成的。這也是關(guān)系數(shù)據(jù)庫的主要優(yōu)點(diǎn)之一。 早期關(guān)系操作有兩種表示方式:關(guān)系代數(shù)與關(guān)系演算。理論上,關(guān)系代數(shù)和關(guān)系演算被證明是完全等價(jià)的。關(guān)系代數(shù)通過對(duì)關(guān)系的運(yùn)算來表達(dá)查詢,其操作對(duì)象是關(guān)系,操作結(jié)果亦為關(guān)系。全關(guān)系系統(tǒng)十二準(zhǔn)則:一個(gè)關(guān)系形的關(guān)系數(shù)據(jù)庫系統(tǒng)必須能完全通過它的關(guān)系能力來管理數(shù)據(jù)庫;關(guān)系數(shù)據(jù)庫系統(tǒng)的所有信息都應(yīng)該在邏輯一級(jí)上用表中的值這一種方

19、法顯式的表示;依靠表名、主碼和列名的組合,保證能以邏輯方式訪問關(guān)系數(shù)據(jù)庫中的每個(gè)數(shù)據(jù)項(xiàng);全關(guān)系的關(guān)系數(shù)據(jù)庫系統(tǒng)支持空值的概念,并用系統(tǒng)化的方法處理空值;數(shù)據(jù)庫的描述在邏輯級(jí)上和普通數(shù)據(jù)采用同樣的表述方式;一個(gè)關(guān)系數(shù)據(jù)庫系統(tǒng)可以具有幾種語言和多種終端訪問方式,但必須有一種語言,它的語句可以表示為嚴(yán)格語法規(guī)定的字符串,并能全面的支持各種規(guī)則;所有理論上可更新的視圖也應(yīng)該允許由系統(tǒng)更新;系統(tǒng)應(yīng)該對(duì)各種操作進(jìn)行查詢優(yōu)化;無論數(shù)據(jù)庫的數(shù)據(jù)在存儲(chǔ)表示或存取方法上作任何變化,應(yīng)用程序和終端活動(dòng)都保持邏輯上的不變性;當(dāng)對(duì)基本關(guān)系進(jìn)行理論上信息不受損害的任何改變時(shí),應(yīng)用程序和終端活動(dòng)都保持邏輯上的不變性;關(guān)系數(shù)

20、據(jù)庫的完整性約束條件必須是用數(shù)據(jù)庫語言定義并存儲(chǔ)在數(shù)據(jù)字典中的;關(guān)系數(shù)據(jù)庫系統(tǒng)在引入分布數(shù)據(jù)或數(shù)據(jù)重新分布時(shí)保持邏輯不變;如果一個(gè)關(guān)系數(shù)據(jù)庫系統(tǒng)具有一個(gè)低級(jí)語言,那么這個(gè)低級(jí)語言不能違背或繞過完整性準(zhǔn)則。2.5.4對(duì)性能的一般規(guī)定一、硬件服務(wù)器硬件要求有一臺(tái)可以滿足日常辦公的pcserver,可以同時(shí)滿足全體員工同時(shí)在線使用該系統(tǒng)。公司內(nèi)部可以通過交換機(jī)、集線器等設(shè)備連接到硬件服務(wù)器上,通過瀏覽器訪問使用。二、軟件服務(wù)器tomcat6,本身就可以作為服務(wù)器使用,雖然性能上沒有weblogic、server、 apache、websphere等大型服務(wù)器功能強(qiáng)大,但是,作為一個(gè)中小型公司oa的服

21、務(wù)器,完全可以滿足日常訪問和使用的需求,并保持一定的性能。 2.5.5 其他專門要求web校園二手交易系統(tǒng)對(duì)數(shù)據(jù)庫操作不是很頻繁,可以使用sqlserver2000、mysql、oracle等做數(shù)據(jù)庫服務(wù)器就均可以滿足用戶的訪問操作需求。2.5.6 對(duì)安全性的要求在配置服務(wù)器時(shí)會(huì)保障軟,硬服務(wù)器的的相對(duì)安全性。web校園二手交易系統(tǒng)的使用者分為兩種權(quán)限的級(jí)別(管理員和普通用戶),但是這兩種權(quán)限與部門的權(quán)利體系并沒進(jìn)行對(duì)應(yīng),可以減少程序復(fù)雜性,降低程序出錯(cuò)和安全風(fēng)險(xiǎn)。程序代碼的安全性通過封裝javabean 而減少原代碼泄露的危險(xiǎn)。2.5.7運(yùn)行環(huán)境規(guī)定設(shè)備及分布1)主機(jī)類型 服務(wù)

22、器:2*p4 cpu以上/2g內(nèi)存以上 客戶端:p4 cpu以上/128內(nèi)存以上2)網(wǎng)絡(luò)類型 基于企業(yè)內(nèi)部的intenet和廣域internet3)存貯器容量 服務(wù)器:80g硬盤以上 客戶端:10g硬盤以上 支撐軟件1) 操作系統(tǒng)服務(wù)器端:windows98/windows2k/windowsnt/linux/unix客戶端:windows98/windows2k/windowsnt/linux/unix2) 數(shù)據(jù)庫管理系統(tǒng)在服務(wù)器端使用oracle10g,也可以分布式應(yīng)用,使web服務(wù)器和數(shù)據(jù)庫服務(wù)器分別在安裝兩臺(tái)計(jì)算機(jī)上。3) 其他支撐軟件客戶端瀏覽器在ie 4.0以上。2.

23、5.7.3 接口web校園二手交易系統(tǒng)的各個(gè)功能模塊之間通過相應(yīng)的javabean進(jìn)行關(guān)聯(lián)和相互的數(shù)據(jù)調(diào)用。 程序運(yùn)行方式web校園二手交易系統(tǒng)獨(dú)立運(yùn)行在服務(wù)器端,客戶端通過ie,或者netscape瀏覽器進(jìn)行訪問操作。3.系統(tǒng)設(shè)計(jì)3.1系統(tǒng)總體設(shè)計(jì) 圖1 總體設(shè)計(jì)系統(tǒng)主要運(yùn)行在tomcat這個(gè)web容器中,各個(gè)模塊對(duì)數(shù)據(jù)庫的訪問都通過javabeans來實(shí)現(xiàn),javabeans為數(shù)據(jù)庫的連接建立一個(gè)連接池,將對(duì)數(shù)據(jù)庫的連接請(qǐng)求池化,控制有效連接數(shù),可確保系統(tǒng)及數(shù)據(jù)庫管理系統(tǒng)的穩(wěn)定運(yùn)行。 系統(tǒng)安全可靠也是一個(gè)重要的設(shè)計(jì)原則。本系統(tǒng)的配置是采用windows xp作為網(wǎng)絡(luò)操作系統(tǒng),

24、oracle 10g作為數(shù)據(jù)庫服務(wù)器。所以操作系統(tǒng)windows xp的安全防護(hù)機(jī)制及數(shù)據(jù)庫oracle 10g的安全機(jī)制是本系統(tǒng)采用的安全防護(hù)方式。3.2 概要設(shè)計(jì)3.2.1 系統(tǒng)功能模塊設(shè)計(jì)系統(tǒng)主要設(shè)計(jì)了用戶設(shè)置功能、發(fā)布信息功能、信息管理功能、搜索信息功能,留言功能,及系統(tǒng)管理功能模塊。用戶設(shè)置功能主要是用戶注冊(cè)必須填寫所要求的個(gè)人資料,完成個(gè)人資料登入。發(fā)布信息功能主要是為已注冊(cè)用戶的服務(wù),登陸的用戶可以即時(shí)發(fā)布自己的二手商品信息,立刻就能瀏覽到。這是本系統(tǒng)的主要功能。信息管理功能是幫助已發(fā)表信息的的用戶管理自身發(fā)布的二手商品信息的同時(shí)也管理短消息信息。此項(xiàng)功能也主要是服務(wù)于注冊(cè)用戶。

25、搜索信息功能是面向所有登陸到本系統(tǒng)的人員的,采用模糊查詢的方法,篇?dú)v所有二手商品信息,搜索出瀏覽者感興趣的內(nèi)容。留言功能分為兩種,一種是對(duì)某一二手商品信息進(jìn)行留言,還可以查看該信息的其他留言;另一種是短消息的,可以在用戶與用戶之間,也可以在系統(tǒng)管理員與用戶之間進(jìn)行短消息聯(lián)系。留言功能可在信息管理功能中進(jìn)行相應(yīng)的管理。該項(xiàng)功能也主要是面向注冊(cè)用戶的。系統(tǒng)管理功能是系統(tǒng)管理員對(duì)系統(tǒng)所有信息資源進(jìn)行統(tǒng)一管理的一個(gè)模塊。只針對(duì)系統(tǒng)管理員帳戶,登陸方式采用了帳戶加驗(yàn)證碼機(jī)制,提高該模塊的安全級(jí)別。3.2.2 系統(tǒng)結(jié)構(gòu)圖校園網(wǎng)二手商品信息系統(tǒng)發(fā)布信息功能信息管理功能搜索信息功能系統(tǒng)管理留言功能用戶注冊(cè)模塊

26、用戶設(shè)置功能用戶登陸模塊出售信息模塊求購信息模塊信息瀏覽模塊信息管理模塊短消息管理模塊信息搜索模塊信息瀏覽模塊商品留言信息短消息模塊用戶信息模塊信息管理模塊信息管理模塊留言管理模塊短消息管理模塊添加信息模塊郵件發(fā)送模塊圖2 系統(tǒng)結(jié)構(gòu)圖3.2.3 數(shù)據(jù)流圖 圖3 數(shù)據(jù)流圖3.3 數(shù)據(jù)庫設(shè)計(jì)3.3.1 數(shù)據(jù)庫需求分析對(duì)于數(shù)據(jù)庫的需求主要體現(xiàn)在對(duì)數(shù)據(jù)庫的提交信息、更新信息、刪除信息、保存信息等。這些信息的存在都取決于各個(gè)功能模塊的對(duì)信息的需求。通過對(duì)功能模塊的具體操作,實(shí)現(xiàn)對(duì)數(shù)據(jù)庫中信息的輸入和輸出。所以,針對(duì)各個(gè)功能模塊的需求,設(shè)計(jì)如下的數(shù)據(jù)表和數(shù)據(jù)結(jié)構(gòu):用戶信息:包括用戶名、密碼、及用戶的相關(guān)信

27、息等。商品信息表:包括信息序號(hào)、發(fā)布信息的用戶名,信息相關(guān)內(nèi)容等。商品留言信息:包括信息序號(hào)、商品信息相關(guān)、留言內(nèi)容相關(guān)等。用戶消息:包括發(fā)消息和接消息的用戶名、消息相關(guān)內(nèi)容等。系統(tǒng)管理員信息:包括帳戶名和帳戶密碼等。通過以上的信息,完成數(shù)據(jù)庫對(duì)各項(xiàng)需求的實(shí)現(xiàn)。3.3.2 數(shù)據(jù)庫概要設(shè)計(jì)使用er-wring進(jìn)行建模:邏輯模型為: 圖4 邏輯模型圖物理模型為:圖5 物理模型圖3.3.3 數(shù)據(jù)庫詳細(xì)設(shè)計(jì)表1 (會(huì)員信息表)序號(hào)字段名稱約束寬度類型default字段說明1id主鍵8-18char保持唯一2passwordnot null8-18char密碼3namenot null10char名字4

28、loadusernot null11char登錄名5sexnot null2char性別6idcardnot null18char身份證號(hào)7emailnot null50char電子郵件8agenot null50char年齡9identity外鍵50int1參照identable10lock外鍵50int參照locktable表2 (身份表)序號(hào)字段名稱約束寬度類型default字段說明1id主鍵8-18 int保持唯一2typenot null8-18 char身份說明表3 (狀態(tài)表)序號(hào)字段名稱約束寬度類型default字段說明1id主鍵8-18 int保持唯一2typenot null

29、3-11char類型 表4 (權(quán)限)序號(hào)字段名稱約束寬度類型default字段說明1id主鍵8-18 int保持唯一2namenot null3-11 char功能的名稱3connurlnot null3-11 char功能的地址4ismenunot null3-11char菜單項(xiàng)5father_idnot null11char父親節(jié)點(diǎn)的id表5序號(hào)字段名稱約束寬度類型default字段說明1identable_id主鍵外鍵4 int參照identable2funs_id主鍵外鍵4 int參照funs表表6(登錄安全表) 序號(hào)字段名稱約束寬度類型default字段說明1users_id主鍵4

30、int保持唯一2time11datanew data記錄登錄時(shí)間3id11 int記錄登錄用戶表7 (我要買的商品)序號(hào)字段名稱約束寬度類型default字段說明1id主鍵8-18 int保持唯一2merchandisenamenot null3-11 char商品的名字3content11char求購的內(nèi)容4narrate33char求購的說明5sestate_id 外鍵3int參照sestate表8(狀態(tài)表)序號(hào)字段名稱約束寬度類型default字段說明1id主鍵8-18 int保持唯一2typenamenot null14char類型名字表9 (我要賣的東西)序號(hào)字段名稱約束寬度類型de

31、fault字段說明1id主鍵8-18 int保持唯一2merchandisenamenot null14char商品名字3content12char出售內(nèi)容4hue12char成色新舊5price13char價(jià)格6sale_id外鍵3int參照saleestate表10(狀態(tài)表)序號(hào)字段名稱約束寬度類型default字段說明1id主鍵8-18 int保持唯一2typenamenot null14char類型名字表11(商品的類型)序號(hào)字段名稱約束寬度類型default字段說明1id主鍵8-18 int保持唯一2typenamenot null14char類型名字表12(留言模塊表)序號(hào)字段名稱

32、約束寬度類型default字段說明1id主鍵8-18int保持唯一2content256char留言內(nèi)容3leavedatenotnulldate留言日期4name30char作者5mysaleidnotnull30外鍵6myshoppingnotnull30外鍵4 系統(tǒng)實(shí)現(xiàn)4.1 程序設(shè)計(jì)用戶登錄界面:圖6 用戶登錄界面用戶登錄核心代碼:public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse response)stri

33、ng key = request.getparameter(key);list list = new arraylist();if (key = null)firstuser f = (firstuser) form;string name = f.getnames();string password = f.getpwd();string regx = 0-9a-za-z_2,9$;actionmessages ms = new actionmessages();boolean flag = true;if (!(name.matches(regx)actionmessage m = new

34、 actionmessage(username.wrong);ms.add(username.wrong, m);flag = false;if (!(password.matches(regx)actionmessage m = new actionmessage(userpwd.wrong);ms.add(userpwd.wrong, m);flag = false;bysjservice bs = new bysjserviceimpl();if (flag = true)tryusers u = bs.seachname(name, password)set set = (set) b

35、s.lockuser(u.getidentitys().getid(); list.add(u);list.add(set);httpsession session = request.getsession();session.setattribute(key, list); catch (dataaccessexception e)actionmessage m = new actionmessage(nameerror);ms.add(nameerror, m);flag = false; catch (dataerrorexception e)actionmessage m = new

36、actionmessage(pwderror);ms.add(pwderror, m);flag = false;if (!flag)saveerrors(request, ms);return mapping.getinputforward();return mapping.findforward(ok);return mapping.findforward(oks);1)會(huì)員登錄模塊:會(huì)員發(fā)布出售信息:圖7 發(fā)布出售信息平臺(tái)界面發(fā)布出售信息核心代碼:public actionforward execute(actionmapping mapping, actionform form,htt

37、pservletrequest request, httpservletresponse response) tryaddmysalefrom amf = (addmysalefrom) form;httpsession session = request.getsession();file file = null;list list = (list) session.getattribute(key);users u = (users) list.get(0);bysjservice bs = new bysjserviceimpl();string str = bs.addmysale(a

38、mf, u.getloaduser();servletcontext sc = getservlet().getservletcontext();string fileurl = sc.getrealpath(upload + + u.getloaduser();file = new file(fileurl);if (file.isdirectory()/ system.out.println(); elsefile.mkdir();string fileurls = fileurl + + str;system.out.println(fileurl);byte b = new byte1

39、024;formfile ff = amf.getuploads();tryinputstream is = ff.getinputstream();outputstream os = new fileoutputstream(fileurls);while (true)int c = is.read(b);os.write(b);if (c 0)sql+= and m.merchandisename=+shoppingname+;if(where!=null & where.length()0)sql+= and m.merchandisetype.id=+where;pagepage=(p

40、age)am.seachmysall(sql, integer.parseint(pageindex);request.setattribute(page, page);return mapping.findforward(ok);2)管理員模塊:商品類別管理:圖11 商品類別管理界面商品管理后臺(tái)代碼:public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse response)list list = new ajaxmer

41、chandisetypeimpl().seachmerchandise();request.setattribute(list, list);return mapping.findforward(ok);public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse response)string id = request.getparameter(ids);string type = request.getparameter(

42、type);merchandisetype mt = new ajaxmerchandisetypeimpl().findbyid(id);mt.settype(type);return mapping.findforward(ok);public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse response) string type=request.getparameter(type);merchandisetype m

43、t=new merchandisetype();mt.settype(type);new ajaxmerchandisetypeimpl().insert(mt);return mapping.findforward(ok);留言信息管理:圖12 留言信息管理界面留言管理后臺(tái)代碼:public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse response)string id=request.getparameter(id);messageimpl msg = new messageimpl();msg.deletebyid(id);return mapping.findforward(ok);public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse r

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論