第一篇:網(wǎng)上購(gòu)物系統(tǒng)測(cè)試報(bào)告[模版]
網(wǎng)上購(gòu)物系統(tǒng)測(cè)試報(bào)告
M10 計(jì)算機(jī)科學(xué)與技術(shù)(專轉(zhuǎn)本)1021413002
一、題目描述
在互聯(lián)網(wǎng)日益流行的今天,網(wǎng)絡(luò)已經(jīng)變的越來(lái)越重要,而在網(wǎng)絡(luò)這個(gè)大家庭里,用戶商城系統(tǒng)則是一個(gè)熱點(diǎn)。它具有信息時(shí)代的快捷方便等特征。事實(shí)上網(wǎng)上購(gòu)物商城的出現(xiàn),給消費(fèi)者的消費(fèi)觀念帶來(lái)了重要的變化。同時(shí)一個(gè)用戶商城系統(tǒng)是否具有良好的人機(jī)界面,其系統(tǒng)最大限度地實(shí)現(xiàn)易維護(hù)性和易操作性,運(yùn)行穩(wěn)定、安全可靠如何,都是用戶及運(yùn)營(yíng)者所關(guān)心的。本次測(cè)試就本用戶商城系統(tǒng)的用戶管理等安全性進(jìn)行測(cè)試。
二、測(cè)試分析
本次我進(jìn)行測(cè)試的是用戶商城系統(tǒng)的會(huì)員管理:用戶在前臺(tái)注冊(cè)成功后,管理員可以在該功能項(xiàng)中進(jìn)行管理。主要是用戶在購(gòu)買(mǎi)商品前需要先進(jìn)行登錄,如果您還未注冊(cè)會(huì)員,需要先進(jìn)行注冊(cè)。注冊(cè)成功后進(jìn)行登錄,登錄成功后用戶即可購(gòu)買(mǎi)商品。我所思考的主要是安全性方面,看是否有服務(wù)器注入漏洞,是否有Session對(duì)象的使用,以及其他的安全性問(wèn)題。
三、測(cè)試設(shè)計(jì) 3.1測(cè)試總體結(jié)構(gòu)
3.2白盒測(cè)試用例設(shè)計(jì)
1.用戶在前臺(tái)注冊(cè),在對(duì)比數(shù)據(jù)庫(kù)中沒(méi)有相重或不合法的地方后,即提交注冊(cè)信息,將新用戶信息寫(xiě)入數(shù)據(jù)庫(kù)。
注冊(cè)代碼:
public partial class Register : System.Web.UI.Page {
UserInfoClass uiObj = new UserInfoClass();
public static int G_Int_MemberID;
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnSave_Click(object sender, EventArgs e)
{
1.if(txtPostCode.Text.Trim()== “" && txtPassword.Text.Trim()==”“)
{
2.Response.Write(”“);
}
else
{
3.bool P_Bl_Sex;
4.if(Convert.ToInt32(ddlSex.SelectedItem.Value.Trim())==1)
{
5.P_Bl_Sex =true;
}
else
{
6.P_Bl_Sex =false;
}
7.G_Int_MemberID = uiObj.AddUInfo(txtName.Text.Trim(), P_Bl_Sex, txtPassword.Text.Trim(), txtTrueName.Text.Trim(), ”“, ”“, txtPhone.Text.Trim(), txtEmail.Text.Trim(), ddlCity.SelectedItem.Text.Trim(), txtAddress.Text.Trim(), txtPostCode.Text.Trim());
8.Session[”Username“] = ”“;
9.Session[”Username“] =txtName.Text.Trim();
10.Response.Write(”“);
}
} } 1)控制流圖
2)環(huán)路復(fù)雜度計(jì)算
由上圖可得,有四條不同的環(huán)路,所以環(huán)路復(fù)雜度為四。
3)基本路徑集設(shè)計(jì)
基本路徑為:
A.1、2、4、5、7、8、9、10 B.1、2、4、6、7、8、9、10 C.1、3、4、5、7、8、9、10 D.1、3、4、6、7、8、9、10 4)測(cè)試用例集設(shè)計(jì)
2.用戶登錄,用戶在注冊(cè)完后,獲取得屬于自己的合法身份,即可通過(guò)獲得的身份進(jìn)行相應(yīng)的權(quán)限操作。同時(shí)也看其是否使用了Session對(duì)象對(duì)網(wǎng)頁(yè)的安全性進(jìn)行進(jìn)一步鞏固,每個(gè)用戶的操作都有時(shí)效限制。
登錄代碼:
protected void btnLoad_Click(object sender, EventArgs e)
{
1.Session[”UID“] = null;
2.Session[”Username“] = null;
3.if(txtName.Text.Trim()== ”“ || txtPassword.Text.Trim()== ”“)
{
4.}
else
{
5.if(txtValid.Text.Trim()== lbValid.Text.Trim())
{
6.int P_Int_IsExists = uiObj.UserExists(txtName.Text.Trim(), txtPassword.Text.Trim());
7.if(P_Int_IsExists == 100)
{
8.DataSet ds = uiObj.ReturnUIDs(txtName.Text.Trim(), txtPassword.Text.Trim(), ”UserInfo“);
9.Session[”UID“] = Convert.ToInt32(ds.Tables[”UserInfo“].Rows[0][0].ToString());
10.Session[”Username“] = ds.Tables[”UserInfo“].Rows[0][1].ToString();
11.Response.Redirect(”index.aspx“);
}
else
{
12.Response.Write(”“);
Response.Write(”“);
}
}
else
{
13.}
} }
Response.Write(”");
1)控制流圖
2)環(huán)路復(fù)雜度計(jì)算
由上圖可得,有四條不同的環(huán)路,所以環(huán)路復(fù)雜度為四。
3)基本路徑集設(shè)計(jì)
基本路徑: A.1、2、3、4 B.1、2、3、5、6、7、8、9、10、11、12 C.1、2、3、5、7、12 D.1、2、3、5、7、8、9、10、11、12 4)測(cè)試用例集設(shè)計(jì)
四、測(cè)試報(bào)告
五、測(cè)試小結(jié)
通過(guò)本次測(cè)試實(shí)驗(yàn),我基本了解掌握了基本的白盒測(cè)試方法及測(cè)試用例分析方法。本次測(cè)試是針對(duì)一網(wǎng)上購(gòu)物系統(tǒng)進(jìn)行的,網(wǎng)購(gòu)系統(tǒng)對(duì)安全性的要求是很高的,其安全影響方面頗多,真正的網(wǎng)購(gòu)系統(tǒng)一旦有漏洞所造成的損失將是巨大的。所以,本次所測(cè)系統(tǒng)雖小但影響或是說(shuō)對(duì)我的印象是十分深刻的,深深讓我體會(huì)到了測(cè)試工作的重要性。測(cè)試工作看著雖小,但實(shí)際上他的所負(fù)是極為有用的。一系統(tǒng)的問(wèn)題及改進(jìn)方向有重大影響與指導(dǎo),一個(gè)合格的軟件測(cè)試工作者,能為日后軟件的維護(hù)、服務(wù)等都可省卻一大筆,為客戶、公司避免過(guò)大的損失。這次實(shí)驗(yàn)后也糾正了我的很多思想,我已不再單純的認(rèn)為軟件測(cè)試比軟件開(kāi)發(fā)容易了,在進(jìn)行測(cè)試前,首先必須理解業(yè)務(wù)和需求。需求和業(yè)務(wù)理解了,才知道客戶想要系統(tǒng)實(shí)現(xiàn)什么。然后按照需求來(lái)進(jìn)行測(cè)試,不滿足需求要求的都可以認(rèn)為是BUG。雖然在實(shí)際工作中,拿到一份完整詳細(xì)的需求是很不容易的,但要做好一個(gè)功能測(cè)試,前提就是要對(duì)需求比較熟悉,各個(gè)業(yè)務(wù)細(xì)節(jié)都很了解,甚至做到比開(kāi)發(fā)人員還要了解。而且對(duì)一個(gè)軟件測(cè)試人員最重要的素質(zhì)要求就是要追求完美,不容許哪些缺點(diǎn)。
實(shí)驗(yàn)結(jié)束,給了我對(duì)軟件測(cè)試這一行業(yè)新的理解,
第二篇:網(wǎng)上購(gòu)物系統(tǒng)報(bào)告
網(wǎng)上購(gòu)物系統(tǒng)UML實(shí)驗(yàn)報(bào)告
實(shí)驗(yàn)?zāi)康模?1.2.3.4.掌握用例圖的涵義和內(nèi)容 掌握用例圖的繪制方法 掌握用例圖的使用范圍
理解活動(dòng)圖及狀態(tài)圖表示界面遷徙的方法。
實(shí)驗(yàn)內(nèi)容:
有如下案例:
某網(wǎng)絡(luò)購(gòu)物系統(tǒng),這次開(kāi)發(fā)的軟件項(xiàng)目是一個(gè)網(wǎng)上購(gòu)物系統(tǒng)。使用此系統(tǒng)的顧客通過(guò)互聯(lián)網(wǎng)進(jìn)行網(wǎng)上購(gòu)物;使用此系統(tǒng)的管理員通過(guò)互聯(lián)網(wǎng)進(jìn)行系統(tǒng)的管理。這個(gè)系統(tǒng)的主要功能如下。
? 顧客能夠按照商品類別,關(guān)鍵字等信息對(duì)商品進(jìn)行查詢,取得商品概要信息,并能進(jìn)一步查看商品詳細(xì)信息。? 顧客能夠注冊(cè)及登陸,能夠添加商品到購(gòu)物車(chē),也能修改購(gòu)物車(chē)中商品,并能夠進(jìn)行結(jié)賬。結(jié)賬時(shí),顧客可以選擇多種結(jié)賬方式。? 顧客可以查看及修改自己的訂單(在系統(tǒng)發(fā)貨前)。
? 管理員能夠維護(hù)業(yè)務(wù)數(shù)據(jù),包括商品,訂單,會(huì)員數(shù)據(jù)等。? 該系統(tǒng)與財(cái)務(wù)系統(tǒng)交互,更新訂單付款狀態(tài)。
? 該系統(tǒng)也與庫(kù)存系統(tǒng)以及物流系統(tǒng)(確定訂單配送狀態(tài))交互。
畫(huà)出該案例用例圖,詳細(xì)書(shū)寫(xiě)其中至少2個(gè)主要用例的用例文本,畫(huà)出主要界面原型,并用狀態(tài)圖表示界面之間的遷徙。
將上述用例分析結(jié)果形成完成的用例模型文檔。
實(shí)驗(yàn)步驟: 用例分析:
本系統(tǒng)共有三類用戶:
普通用戶是指沒(méi)有登陸權(quán)限(主要指網(wǎng)絡(luò)用戶),以匿名用戶的身份訪問(wèn)系統(tǒng)網(wǎng)站。此類用戶主要有瀏覽系統(tǒng)信息、查看商品信息,注冊(cè)成為會(huì)員。把本網(wǎng)站設(shè)為首頁(yè),添加到收藏夾,聯(lián)系開(kāi)發(fā)人,查看交款方式,退換貨原則,配送范圍,交易條款,保密協(xié)議等操作。瀏覽的內(nèi)容包括:商品信息、商品分類信息。
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
會(huì)員:這類用戶擁有普通用戶的所有權(quán)限;普通用戶可以注冊(cè)成為會(huì)員,并根據(jù)會(huì)員ID和密碼登陸系統(tǒng),登陸之后可以對(duì)更改自己的信息但會(huì)員ID做為數(shù)據(jù)庫(kù)表主鍵不能修改。會(huì)員登陸后可以查看商品信息,查看各種分類商品信息,將商品添加到購(gòu)物車(chē)中。修改購(gòu)物車(chē)中商品數(shù)量,或是刪除某些不想要的商品。
系統(tǒng)管理員:系統(tǒng)管理員主要負(fù)責(zé)管理著系統(tǒng)后臺(tái)信息;主要有訂單管理,商品管理,會(huì)員管理,留言管理和系統(tǒng)管理。訂單管理有未確認(rèn)訂單和已確認(rèn)訂單管理,未付款訂單和已付款訂單管理,未發(fā)貨和已發(fā)貨訂單管理,未歸檔和已歸檔訂單管理。商品管理主要有商品添加和商品管理,商品類別添加和商品類別管理。會(huì)員管理主要有添加管理員和管理管理員,管理會(huì)員。物流系統(tǒng)主要有支付方式添加和管理,配送方式添加和管理,配送地點(diǎn)添加和管理。系統(tǒng)管理主要是上傳管理。
因此,本系統(tǒng)主要功能是對(duì)商品進(jìn)行管理規(guī)劃,方便會(huì)員購(gòu)買(mǎi)。
前臺(tái)模塊功能有:商品信息查看、會(huì)員注冊(cè)、會(huì)員登錄、會(huì)員信息修改、購(gòu)物車(chē)管理、購(gòu)物留言。
后臺(tái)模塊功能有:商品管理、訂單管理、會(huì)員管理、管理員管理、留言管理
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
一、系統(tǒng)總體用例圖
二、分層用例
2.1 添加購(gòu)物車(chē)用例
用例名稱:添加購(gòu)物車(chē) 主要參與者:顧客
前置條件:
顧客已登錄,擁有一臺(tái)聯(lián)網(wǎng)的電腦
主成功場(chǎng)景:
顧客登陸購(gòu)物網(wǎng)站
按關(guān)鍵字查找商品,系統(tǒng)返回幾項(xiàng)結(jié)果
用戶點(diǎn)擊所選商品
系統(tǒng)返回商品詳細(xì)信息
顧客添加商品到購(gòu)物車(chē)
系統(tǒng)返回購(gòu)物車(chē)信息
后置條件:
購(gòu)物車(chē)有更新
用例圖:
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
系統(tǒng)順序圖:
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
交互圖之順序圖:
2.2 一次交易過(guò)程用例
主要參與者:顧客
主成功場(chǎng)景:
1.顧客登陸系統(tǒng)
2.顧客按關(guān)鍵字查詢商品
3.系統(tǒng)顯示商品的信息
4.顧客將商品加入購(gòu)物車(chē)
顧客重復(fù)2到4步直到結(jié)束
5.系統(tǒng)生成訂單并顯示訂單信息
6.顧客選擇支結(jié)帳式
7.顧客確認(rèn)訂單進(jìn)行結(jié)帳
8.系統(tǒng)記錄銷(xiāo)售信息、并將銷(xiāo)售信息和支付信息發(fā)送到財(cái)務(wù)系統(tǒng)(進(jìn)行訂單
處理)、庫(kù)存系統(tǒng)(更新庫(kù)存)和物流系統(tǒng)(確認(rèn)訂單配送狀態(tài))
擴(kuò)展
a.管理員可以隨時(shí)對(duì)商品、訂單、會(huì)員等數(shù)據(jù)進(jìn)行操作
b.系統(tǒng)在任意時(shí)刻失敗
管理員重啟系統(tǒng)
1a.用戶名無(wú)效或密碼錯(cuò)誤
重新輸入或注冊(cè)為新會(huì)員
2a.無(wú)相應(yīng)的商品
1.系統(tǒng)提示錯(cuò)誤并提示重新輸入商品信息
2.顧客重新輸入或退出系統(tǒng)
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
3a.當(dāng)按關(guān)鍵字查詢到多個(gè)商品時(shí)
1.沒(méi)有顧客想要的商品或商品缺貨
2.重新查找或退出
4a.添加購(gòu)物車(chē)失敗
1.系統(tǒng)提示顧客為登陸
2.顧客登陸系統(tǒng)
3.操作購(gòu)物車(chē)
1a.顧客修改購(gòu)物車(chē)信息或刪除購(gòu)物車(chē)中的商品
6a.銀行匯款
1.輸入顧客銀行信息
2.系統(tǒng)顯示支付信息
6b.貨到付款 用例圖:
交易處理順序圖:
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
2.3 用戶注冊(cè)用例:
主要參與者:顧客,管理員
前置條件:系統(tǒng)運(yùn)行正常
主成功場(chǎng)景:
1、顧客登錄購(gòu)物網(wǎng)站,點(diǎn)擊注冊(cè)按鈕;
2、用戶進(jìn)入顧客注冊(cè)頁(yè)面;
3、顧客填寫(xiě)注冊(cè)信息,提交頁(yè)面;
4、系統(tǒng)管理員驗(yàn)證顧客的所有注冊(cè)信息是合法;
5、系統(tǒng)返回用戶注冊(cè)成功信息;
擴(kuò)展流程:
3a、用戶填寫(xiě)信息有誤,提交失??;
3b、系統(tǒng)提示顧客重新填寫(xiě)失敗的信息; 后置條件
系統(tǒng)數(shù)據(jù)庫(kù)增加一條顧客信息
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
2.4、用戶登錄用例
主要參與者:用戶
前置條件:用戶已注冊(cè)
主成功場(chǎng)景:
1、用戶瀏覽購(gòu)物網(wǎng)站
2、點(diǎn)擊登錄按鈕,跳轉(zhuǎn)到登錄界面
3、顧客填寫(xiě)登錄信息。
4、系統(tǒng)驗(yàn)證登錄信息存在5、跳轉(zhuǎn)到之前登錄的界面
擴(kuò)展流程:
1a、用戶輸入網(wǎng)址錯(cuò)誤
1b、提示用戶重新輸入
4a、用戶填寫(xiě)用戶名或密碼信息錯(cuò)誤
4b、系統(tǒng)提示用戶重新輸入用戶名和密碼
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
2.5查詢商品用例:
用例文本:
主要參與者:顧客
前置條件:用戶已登錄購(gòu)物網(wǎng)站
主成功場(chǎng)景:
1.用戶登錄購(gòu)物網(wǎng)站(用例開(kāi)始)
2.用戶輸入商品關(guān)鍵字,查詢對(duì)應(yīng)的商品
3.系統(tǒng)返回該關(guān)鍵字所對(duì)應(yīng)的網(wǎng)站里的所有的商品
4.顧客選擇適合自己的商品添加到購(gòu)物車(chē)
擴(kuò)展流程:
3a:系統(tǒng)返回的商品中沒(méi)有顧客想要的3b:顧客重新輸入關(guān)鍵字或退出系統(tǒng)
查詢商品用例圖:
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
查詢商品順序圖:
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
三、領(lǐng)域模型
系統(tǒng)領(lǐng)域模型:
四.頁(yè)面跳轉(zhuǎn)圖
交易成功場(chǎng)景頁(yè)面跳轉(zhuǎn)圖
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
五.活動(dòng)圖及操作契約:
更新購(gòu)物車(chē)系統(tǒng)活動(dòng)圖:
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
結(jié)束瀏覽開(kāi)始查詢信息瀏覽信息添加購(gòu)物車(chē)查看購(gòu)物車(chē)更新購(gòu)物車(chē)條件檢查
更新購(gòu)物車(chē)操作契約 契約名稱:添加購(gòu)物車(chē) 交叉引用:處理交易
前置條件:正在進(jìn)行中的購(gòu)物活動(dòng)
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
后置條件:系統(tǒng)創(chuàng)建購(gòu)物車(chē)實(shí)例;
顧客被關(guān)聯(lián)到購(gòu)物車(chē)實(shí)例當(dāng)中; 購(gòu)物車(chē)有更新
系統(tǒng)總體活動(dòng)圖:
六、順序圖:
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
顧客留言管理順序圖
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
服務(wù)人員能夠提供在線幫助也能夠向普通顧客那樣查詢商品,其順序圖類似于顧客瀏覽商品順序圖
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
網(wǎng)站管理人員管理商品的系統(tǒng)順序圖:
網(wǎng)絡(luò)購(gòu)物系統(tǒng)實(shí)驗(yàn)報(bào)告
交互圖之交易處理順序圖:
七、實(shí)驗(yàn)感想:
通過(guò)本次實(shí)驗(yàn),我對(duì)uml建模有了深入的理解,能夠熟練使用UML的繪圖工具,為以后的學(xué)習(xí)和工作奠定的堅(jiān)實(shí)的基礎(chǔ)。
第三篇:網(wǎng)上購(gòu)物系統(tǒng)系統(tǒng)分析
一、系統(tǒng)流程分析
(1)普通用戶分為注冊(cè)會(huì)員用戶和非會(huì)員用戶。進(jìn)入網(wǎng)站首頁(yè),會(huì)員用戶登錄成功后具有查看商品信息并訂購(gòu)商品、查看訂購(gòu)信息、查看公告信息、修改個(gè)人信息等權(quán)限;非會(huì)員用戶不用登錄,只能查看商品信息、公告信息,不能訂購(gòu)商品.只有注冊(cè)成為會(huì)員用戶并成功登錄后。方可訂購(gòu)商品。
(2)部門(mén)管理員只可以對(duì)本部門(mén)銷(xiāo)售的商品的分類、商品品牌和商品信息進(jìn)行管理,也可對(duì)自己的個(gè)人信息進(jìn)行管理維護(hù)。
(3)總管理員可以對(duì)商城銷(xiāo)售的商品大類、各部門(mén)的管理員、公告信息和客戶訂單進(jìn)行管理.并可以修改個(gè)人信息和密碼。
圖1-1 系統(tǒng)流程示意圖
二、系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)
本系統(tǒng)客觀存在的實(shí)體有:管理員(gly)、注冊(cè)會(huì)員用戶user)、商品種類(spzl)、商品子類(splx)、商品品牌(ppxx)、商品(sp)、商城公告(board)。共7個(gè)實(shí)體,圖2-1 網(wǎng)上購(gòu)物全局E-R圖
三、邏輯結(jié)構(gòu)設(shè)計(jì)
管理員:包括管理員編號(hào)、注冊(cè)名、密碼、真實(shí)姓名、地址、電話、E-mail、其他。當(dāng)管理員編號(hào)為“0000”時(shí),代表系統(tǒng)總管理員,其他編號(hào)為對(duì)應(yīng)的部門(mén)管理員。注冊(cè)會(huì)員用戶信息:包括用戶ID、姓名、密碼、性別、地址、手 機(jī)號(hào)、電話、E—mail。
商品種類:包括商品種類編號(hào),商品種類名稱。每一個(gè)商品種類可以有多個(gè)商品子類。商品子類:包括子類編號(hào)、子類名稱、指標(biāo)名稱I、指標(biāo)名稱
2、指標(biāo)名稱
3、指標(biāo)名稱
4、指標(biāo)名稱5。5個(gè)指標(biāo)名稱中分別存
放每一子類商品的5個(gè)主要的指標(biāo)名稱。
商品品牌:包括品牌編號(hào)、品牌名稱、品牌生產(chǎn)商、業(yè)務(wù)聯(lián)系 信息。
商品:包括商品編號(hào)、商品名稱、商品型號(hào)、商品指標(biāo)值
1、商品指標(biāo)值
2、商品指標(biāo)值3,商品指標(biāo)值
4、商品指標(biāo)值
5、參考銷(xiāo)售單價(jià)、上市日期、圖片、簡(jiǎn)介。5個(gè)商品指標(biāo)值巾分別存放各商品的具體指標(biāo)參數(shù)值。
商城公告信息:包括公告編號(hào)、公告標(biāo)題、公告內(nèi)容、發(fā)布時(shí)閱。
商品銷(xiāo)售信息:包括訂單編號(hào)、用戶編號(hào)、商品種類編號(hào)、商品分類編號(hào)、商品品牌編號(hào)、商品編號(hào)、訂購(gòu)日期、訂購(gòu)數(shù)量、實(shí)際銷(xiāo)售價(jià)、用戶確認(rèn)、發(fā)貨日期、管理員確認(rèn)。
四、數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)
1.公告信息表(題目,內(nèi)容,時(shí)間,編號(hào),提交人)
2.商品類別表(編號(hào),類別,名稱,序號(hào),廠家,包裝類型,銷(xiāo)售價(jià)格,進(jìn)貨價(jià)格,商品簡(jiǎn)介,瀏覽次數(shù),銷(xiāo)售數(shù)量,相關(guān)圖片)
3.購(gòu)物車(chē)表(編號(hào),用戶名,商品編號(hào),訂購(gòu)時(shí)間,訂購(gòu)數(shù)量,銷(xiāo)售價(jià)格,用戶確認(rèn),訂單號(hào),提交時(shí)間,管理員確認(rèn))
4.用戶投訴表(投訴編號(hào),投訴時(shí)間,用戶名,訂單號(hào),投訴內(nèi)容,處理結(jié)果,處理標(biāo)志)5.用戶信息表(用戶名,用戶密碼,用戶姓名,性別,地址,電子郵件地址,固定電話,移動(dòng)電話)
6.管理員表(用戶名,密碼,用戶姓名)
五、模塊功能設(shè)計(jì)
(1)顧客注冊(cè),登錄模塊
顧客可以通過(guò)填寫(xiě)注冊(cè)信息注冊(cè)成為會(huì)員,會(huì)員注冊(cè),登錄需要填寫(xiě)附加碼,保證 系統(tǒng)的安全性。會(huì)員登錄后才能進(jìn)行購(gòu)物,購(gòu)物車(chē)的管理與意見(jiàn)反饋,為登錄的會(huì)員或 未注冊(cè)的顧客只能檢索與瀏覽商品信息。(2)購(gòu)物車(chē)模塊
顧客輸入帳號(hào)與密碼登錄后便可以進(jìn)行購(gòu)物車(chē)的管理,可以查看購(gòu)物車(chē),將商品添 加到購(gòu)物車(chē)中,也可以刪除購(gòu)物車(chē)中的商品,修改購(gòu)物車(chē)中商品的數(shù)量,在線下訂單及 訂單查看。
(3)商品檢索,瀏覽模塊,特價(jià)商品檢索,瀏覽模塊
顧客可以根據(jù)不同的商品種類瀏覽商品信息(如商品名稱,商品圖片,商品型號(hào),價(jià)格,生產(chǎn)廠商,生產(chǎn)日期等),也可以輸入關(guān)鍵字進(jìn)行商品檢索。顧客可以根據(jù)不同 的商品種類瀏覽特價(jià)商品信息(如商品名稱,商品圖片,商品型號(hào),價(jià)格,生產(chǎn)廠商,生產(chǎn)日期等),也可以輸入關(guān)鍵字進(jìn)行特價(jià)商品檢索。(4)顧客留言模塊
顧客登錄成功后,進(jìn)入反饋信息界面,可以發(fā)表自己的意見(jiàn)或建議。(5)后臺(tái)登錄模塊
系統(tǒng)管理員輸入帳號(hào),密碼和附加碼可以登錄后臺(tái)界面,登錄驗(yàn)證模塊根據(jù)輸入的 帳號(hào)密碼識(shí)別不同角色的管理員,然后進(jìn)入不同的后臺(tái)管理模塊,賬號(hào)密碼輸入錯(cuò)誤后 給出錯(cuò)誤提示并要求從新輸入。(6)訂單管理模塊
訂單管理員登錄后,可以根據(jù)日期范圍,訂單完成狀態(tài),訂單編號(hào)等取得訂單列表 與查看某訂單的詳情,也可以修改訂單的完成狀態(tài)及訂單中的商品或數(shù)量,還可以刪除 訂單本身及訂單中的商品。(7)商品管理模塊
商品管理員可以查看商品種類和商品信息,也可以新增,修改,刪除商品的種類和 商品本身。
(8)特價(jià)商品管理模塊
該模塊也和商品管理模塊一樣,商品管理員可以查看特價(jià)商品種類和信息,也可以 新增,修改,刪除商品的種類和特價(jià)商品本身,并且可以將商品列為特價(jià)商品以及將特 價(jià)商品修改為一般商品(9)會(huì)員管理模塊
會(huì)員管理員登錄后,可以根據(jù)注冊(cè)時(shí)間范圍,會(huì)員級(jí)別及會(huì)員D取得會(huì)員列表,然后對(duì)某個(gè)會(huì)員可以進(jìn)行詳細(xì)資料的查看,級(jí)別調(diào)整與刪除操作;也可以根據(jù)留言時(shí)間 范圍,回復(fù)狀態(tài)及會(huì)員D取得留言列表,然后對(duì)某個(gè)留言進(jìn)行內(nèi)容查看,回復(fù)與刪除 操作。
(10)系統(tǒng)用戶管理模塊
系統(tǒng)管理員登錄后,可以根據(jù)用戶列表進(jìn)行用戶詳細(xì)資料的查看,新增用戶,修改 用戶與刪除用戶操作。論文
1. 網(wǎng)上購(gòu)物系統(tǒng)的開(kāi)發(fā)背景+可行性分析(經(jīng)濟(jì),技術(shù))2. 系統(tǒng)需求
3. 系統(tǒng)設(shè)計(jì)+系統(tǒng)分析、實(shí)現(xiàn) 4. 系統(tǒng)工作流程 5.
第四篇:網(wǎng)上購(gòu)物系統(tǒng)論文
目錄
第一章 系統(tǒng)設(shè)計(jì)概述 1 1.1引言 1 1.1.1系統(tǒng)開(kāi)發(fā)的背景 1 1.1.2系統(tǒng)開(kāi)發(fā)的目的與意義 1 第二章 可行性研究與需求分析 3 2.1可行性研究 3 2.1.1技術(shù)可行性 3 2.1.2經(jīng)濟(jì)可行性 3 2.1.3運(yùn)行可行性 3 2.1.4法律可行性 3 2.2需求分析 3 2.2.1系統(tǒng)目的 3 2.2.2數(shù)據(jù)流圖 4 2.2.3數(shù)據(jù)字典 6 2.2.4功能需求 8 2.2.5性能要求 8 第三章 項(xiàng)目設(shè)計(jì)的基本原理和采用的主要方法與技術(shù) 9 3.1項(xiàng)目設(shè)計(jì)的基本原理 9 3.2項(xiàng)目設(shè)計(jì)采用的主要方法與技術(shù) 9 第四章 總體設(shè)計(jì) 12 4.1總體設(shè)計(jì)原理 12 4.2運(yùn)行環(huán)境 12 4.3系統(tǒng)流程圖 12 4.4系統(tǒng)功能模塊圖 14 4.5系統(tǒng)安全與維護(hù) 15 第五章 詳細(xì)設(shè)計(jì) 17 5.1程序流程圖 17 5.2數(shù)據(jù)庫(kù)設(shè)計(jì) 19 5.2.1概念結(jié)構(gòu)設(shè)計(jì) 20 5.2.2邏輯結(jié)構(gòu)設(shè)計(jì) 23 第六章 編碼實(shí)現(xiàn)與測(cè)試用例設(shè)計(jì) 28 6.1登錄界面 28 6.2管理界面 30 6.3網(wǎng)站主界面 33 6.4訂單查詢界面 34 第七章 測(cè)試用例設(shè)計(jì)、測(cè)試與運(yùn)行記錄 37 7.1測(cè)試目的 37 7.2 測(cè)試目標(biāo) 37 7.3測(cè)試方法 37 7.4測(cè)試項(xiàng)目 37 7.5測(cè)試界面 37 7.5.1管理員登錄測(cè)試 37 7.5.2管理商品信息測(cè)試 38 7.5.3管理訂單信息測(cè)試 39 7.5.4用戶管理測(cè)試 40 7.5.5管理員密碼修改測(cè)試 40 7.5.6用戶登錄測(cè)試 41 7.5.7用戶個(gè)人管理測(cè)試 42 7.5.8添加商品信息測(cè)試 42 總結(jié) 44 參考文獻(xiàn) 47 本系統(tǒng)必須具備以下幾個(gè)功能如下:
1.顧客登錄及身份驗(yàn)證功能:接受游客的基本信息。
2.顧客在線購(gòu)物功能:顧客瀏覽商品信息,進(jìn)行選購(gòu),提交訂單后進(jìn)行交易。3.管理員功能:管理員對(duì)整個(gè)系統(tǒng)進(jìn)行管理。
4.購(gòu)物車(chē)功能:在顧客提交訂單之前,一直存放顧客選購(gòu)得商品
第五篇:網(wǎng)上購(gòu)物管理系統(tǒng)
課程實(shí)踐報(bào)告
課程名稱:軟件工程實(shí)踐II 項(xiàng)目名稱:網(wǎng)上購(gòu)物系統(tǒng) 專業(yè)班級(jí):
姓
名: 學(xué)
號(hào):
指導(dǎo)教師:
成績(jī):______ 報(bào)告日期:2014年12月9日
網(wǎng)上購(gòu)物管理系統(tǒng)
摘要
隨著計(jì)算機(jī)技術(shù)在各行各業(yè)日益廣泛和深入的應(yīng)用,網(wǎng)絡(luò)的概念早已深入人心。網(wǎng)絡(luò)在各行各頁(yè)的發(fā)展戰(zhàn)略占據(jù)了重要的位置,成為了商家不可分割的一部分。網(wǎng)絡(luò)已經(jīng)成為了商家展示自己的另一個(gè)舞臺(tái)。商家建立網(wǎng)站,通過(guò)網(wǎng)站可以實(shí)現(xiàn),瀏覽商品,網(wǎng)上購(gòu)物,結(jié)賬
本系統(tǒng)實(shí)現(xiàn)了網(wǎng)上購(gòu)物商城的基本功能和購(gòu)物流程。主要模塊有:商品查詢、商品管理、商品顯示、購(gòu)物車(chē)、訂單管理、用戶管理等功能。其開(kāi)發(fā)主要包括:數(shù)據(jù)庫(kù)的建立,前臺(tái)Web頁(yè)面設(shè)計(jì),后臺(tái)管理。本系統(tǒng)采用MySql數(shù)據(jù)庫(kù)和Tomcat服務(wù)器實(shí)現(xiàn),并且使用HTML、JSP等技術(shù)來(lái)編輯網(wǎng)頁(yè),并運(yùn)用Hibernate技術(shù)把數(shù)據(jù)庫(kù)和動(dòng)態(tài)網(wǎng)頁(yè)相關(guān)聯(lián)。
關(guān)鍵字
關(guān)鍵詞:網(wǎng)上商場(chǎng),購(gòu)物車(chē),結(jié)賬,Tomcat,Sevlet,JSP,MySql數(shù)據(jù)庫(kù)
目錄
摘要..............................................................................................................................................2 關(guān)鍵字..........................................................................................................................................2 1需求分析.......................................................................................................................................4 1.1背景.........................................................................................................................................4 1.2可行性分析.............................................................................................................................4 1.3對(duì)性能的規(guī)定.........................................................................................................................4 1.3.1時(shí)間特性要求..................................................................................................................4 1.3.2靈活性..............................................................................................................................5 1.4其他專門(mén)要求.........................................................................................................................5 1.5運(yùn)行環(huán)境的規(guī)定.....................................................................................................................5 1.6設(shè)備.........................................................................................................................................5 1.7支持軟件.................................................................................................................................5 2功能分析.......................................................................................................................................6 2.1功能分析的目的.....................................................................................................................6 2.2業(yè)務(wù)描述.................................................................................................................................6 2.3用例圖.....................................................................................................................................8 2.4 狀態(tài)圖..................................................................................................................................10 3模塊設(shè)計(jì).....................................................................................................................................10 3.1系統(tǒng)功能模塊.......................................................................................................................10 3.2模塊分析...............................................................................................................................11 4數(shù)據(jù)庫(kù)分析與設(shè)計(jì).....................................................................................................................18 4.1數(shù)據(jù)庫(kù)分析...........................................................................................................................18 4.2系統(tǒng)整體ER圖的設(shè)計(jì)........................................................................................................19 4.3數(shù)據(jù)庫(kù)設(shè)計(jì)...........................................................................................................................20 5編碼,實(shí)現(xiàn)及測(cè)試.....................................................................................................................22 5.1各功能源代碼.......................................................................................................................22 6 結(jié)論............................................................................................................................................29 6.1系統(tǒng)優(yōu)點(diǎn)...............................................................................................................................29 6.2系統(tǒng)缺點(diǎn)...............................................................................................................................29 6.3未來(lái)發(fā)展...............................................................................................................................29 7實(shí)驗(yàn)小結(jié).....................................................................................................................................30 7.1 孫佳偉實(shí)驗(yàn)小結(jié)..................................................................................錯(cuò)誤!未定義書(shū)簽。7.2 喻道斌實(shí)驗(yàn)小結(jié)..................................................................................錯(cuò)誤!未定義書(shū)簽。7.3 金龍實(shí)驗(yàn)小結(jié)......................................................................................錯(cuò)誤!未定義書(shū)簽。1需求分析
1.1背景
在發(fā)達(dá)國(guó)家,電子商務(wù)的發(fā)展非常迅速,通過(guò)Internet進(jìn)行交易己成為一種潮流?;陔娮由虅?wù)所連帶出的商品交易方案、電子結(jié)賬方案和信息安全方案等,已逐步成為國(guó)際信息技術(shù)市場(chǎng)競(jìng)爭(zhēng)的焦點(diǎn)。隨著電子商務(wù)的日益發(fā)展,產(chǎn)生了網(wǎng)上購(gòu)物、網(wǎng)絡(luò)廣告等新興信息產(chǎn)業(yè),從側(cè)面反應(yīng)了電子商務(wù)正在對(duì)社會(huì)和經(jīng)濟(jì)產(chǎn)生著深刻的影響。
在我國(guó),網(wǎng)上購(gòu)物從無(wú)到有也不過(guò)短短幾年時(shí)間。但是就在這幾年時(shí)間,網(wǎng)絡(luò)購(gòu)物已經(jīng)深入千家萬(wàn)戶,普通的購(gòu)物已經(jīng)不能滿足人們的消費(fèi)。網(wǎng)上購(gòu)物以其諸多優(yōu)勢(shì),獲得人們的青睞。它以其方便,快捷,高效,高選擇性等優(yōu)點(diǎn),迅速得到了廣大網(wǎng)友的喜愛(ài)與青睞,現(xiàn)在的網(wǎng)上購(gòu)物已經(jīng)非常普及。本系統(tǒng)設(shè)計(jì)就是為了滿足廣大網(wǎng)友的這些需求,改變傳統(tǒng)的交易模式,通過(guò)互聯(lián)網(wǎng)完成查看商品,購(gòu)買(mǎi)商品等完成網(wǎng)上交易。方便消費(fèi)者,同時(shí)對(duì)商家的商品信息進(jìn)行管理,便于商家的商品數(shù)據(jù)分析。截止2013年1月中國(guó)有網(wǎng)上購(gòu)物的用戶將近5000萬(wàn)人,這足以證明網(wǎng)上購(gòu)物具有良好的群眾基礎(chǔ),網(wǎng)上購(gòu)物方式日趨被大家所接受。因此我們小組致力于做一個(gè)基于B/S架構(gòu)的網(wǎng)上購(gòu)物管理系統(tǒng),使廣大用戶可以享受網(wǎng)上購(gòu)物的種種優(yōu)勢(shì)。
1.2可行性分析
隨著計(jì)算機(jī)的普及,Internet的發(fā)展,網(wǎng)購(gòu)已經(jīng)成為人們生活消費(fèi)中一大部分。一個(gè)網(wǎng)上購(gòu)物系統(tǒng)可以為消費(fèi)者提供軟件條件,使其可以更加快捷,方便,實(shí)惠的選擇商品,而商家也可以更好的管理商品,節(jié)約成本,兩全其美。所以構(gòu)建一個(gè)網(wǎng)上購(gòu)物商城在運(yùn)行上是完全可行的。
此次開(kāi)發(fā)使用JSP作為開(kāi)發(fā)語(yǔ)言,采用Servlet技術(shù),Tomcat7.0座位Web服務(wù)器,采用MySql作為數(shù)據(jù)庫(kù),這幾種技術(shù)及工具的方便,快捷,免費(fèi)大大的縮短了開(kāi)發(fā)的時(shí)間,減少了開(kāi)發(fā)的成本。并且使得開(kāi)發(fā)更方便安全,更利于后期的維護(hù)。網(wǎng)上購(gòu)物服務(wù)系統(tǒng)給人們帶來(lái)了方便,成為一種全新的商務(wù)模式。因此,不用出門(mén)就可以在家購(gòu)物的新時(shí)尚已經(jīng)到來(lái),構(gòu)建一個(gè)網(wǎng)上購(gòu)物服務(wù)系統(tǒng)在經(jīng)濟(jì)上是完全可行的。
綜上所述:開(kāi)發(fā)本系統(tǒng)是完全可行的。
1.3對(duì)性能的規(guī)定 1.3.1時(shí)間特性要求
對(duì)于商品基本信息,訂單信息管理的增加刪除修改必須是實(shí)時(shí)響應(yīng),與客戶端的交互響應(yīng)時(shí)間不超過(guò)5s 1.3.2靈活性
操作方式的變化,可以直接從UI或從數(shù)據(jù)庫(kù)輸入行,對(duì)初始行進(jìn)行增加,刪除,刪除等操作。
1.4其他專門(mén)要求
文字描述必須準(zhǔn)確,精煉,通俗易懂。安全性要得以保障,可移植性要高,為了適應(yīng)不同系統(tǒng),程序吞吐量必須要大,否則不能動(dòng)態(tài)適應(yīng)購(gòu)物網(wǎng)站的需要。
1.5運(yùn)行環(huán)境的規(guī)定 1.6設(shè)備
開(kāi)發(fā)環(huán)境: 操作系統(tǒng):windows 7 硬件環(huán)境:
客戶終端:pc機(jī); 服務(wù)器:Tomcat 編譯環(huán)境:Jdk 1.6 1.7支持軟件
操作系統(tǒng):** 開(kāi)發(fā)軟件:MyEclipse 數(shù)據(jù)庫(kù): Mysql
2功能分析
2.1功能分析的目的
從用戶需求出發(fā),對(duì)于網(wǎng)上購(gòu)物系統(tǒng)做細(xì)致全面的功能分析,準(zhǔn)確地定義網(wǎng)上購(gòu)物系統(tǒng)的目標(biāo),確定系統(tǒng)必須做什么,再用UML建模,并以Rational Rose工具畫(huà)出功能模型,以此形式分析確定此網(wǎng)上購(gòu)物系統(tǒng)的功能。
2.2業(yè)務(wù)描述
用戶進(jìn)入網(wǎng)站后,可以根據(jù)價(jià)格高低確定是否進(jìn)行篩選,不篩選則進(jìn)入所有的商品瀏覽界面,篩選則得出篩選后的瀏覽界面。接著可以點(diǎn)擊商品加入購(gòu)物車(chē),可以自己選擇加入的數(shù)量。加入購(gòu)物車(chē)以后可以查看購(gòu)物車(chē),在購(gòu)物策劃模塊中可以選擇添加或刪除購(gòu)物車(chē)商品,接著用戶可以自行判斷是否繼續(xù)購(gòu)物,如果繼續(xù)購(gòu)物則返回首頁(yè),不購(gòu)物則進(jìn)行結(jié)賬。結(jié)賬之后可以查看訂單界面,這里有詳細(xì)的訂單信息。,否則注銷(xiāo)退出。
下圖為網(wǎng)上購(gòu)物系統(tǒng)的業(yè)務(wù)流程圖。
開(kāi)始用戶進(jìn)入網(wǎng)站按照價(jià)格高低進(jìn)行篩選篩選后的瀏覽界面瀏覽商品加入購(gòu)物車(chē)查看購(gòu)物車(chē)添加或刪除購(gòu)物車(chē)商品繼續(xù)購(gòu)物結(jié)賬查看訂單訂單界面注銷(xiāo)退出結(jié)束
圖 1-1 系統(tǒng)業(yè)務(wù)流程圖
2.3用例圖
用例圖
? 瀏覽商品用例,可以實(shí)現(xiàn)瀏覽商品
? 搜索商品用例,可以根據(jù)商品的價(jià)格進(jìn)行篩選查詢商品。? 管理商品詳情用例,可以實(shí)現(xiàn)對(duì)商品中所有信息的瀏覽。
? 加入購(gòu)物車(chē)用例,是用戶才有的功能,能在瀏覽商品后把商品加入購(gòu)物車(chē) ? 管理購(gòu)物車(chē)用例,在加入購(gòu)物車(chē)后擴(kuò)展的功能,對(duì)于購(gòu)物車(chē)內(nèi)的商品可以增加刪除 ? 購(gòu)買(mǎi)商品用例,用戶可以對(duì)于商品顯示頁(yè)面的商品進(jìn)行購(gòu)買(mǎi) ? 管理自身訂單,用戶可以對(duì)自身的訂單進(jìn)行搜索,刪除功能。? 清空購(gòu)物車(chē)用例,用戶對(duì)購(gòu)物車(chē)中所有商品進(jìn)行清空
? 瀏覽曾經(jīng)的商品(歷史記錄)用例,用戶可以在這里瀏覽曾經(jīng)使用的商品 ? 結(jié)賬模塊用例,用戶可以在這里進(jìn)行結(jié)賬功能。
<
圖1-2主用例圖
刪除商品用戶瀏覽購(gòu)物車(chē)清空購(gòu)物車(chē)?yán)^續(xù)購(gòu)物結(jié)賬
圖 1-3 購(gòu)物車(chē)用例圖
結(jié)賬用戶事務(wù)管理查看訂單信息
圖 1-4 結(jié)賬用例圖
2.4 狀態(tài)圖
對(duì)于系統(tǒng)進(jìn)行狀態(tài)細(xì)節(jié)分析如下 a)b)c)d)e)f)g)h)用戶首頁(yè)輸入網(wǎng)址進(jìn)入首頁(yè)界面 用戶瀏覽商品進(jìn)入商品展示界面
瀏覽完之后可選擇喜歡的商品進(jìn)入購(gòu)物車(chē)界面 在購(gòu)物車(chē)中可以添加或刪除商品進(jìn)入更改商品界面
更改接受后確定是否繼續(xù)購(gòu)物,若繼續(xù)擇返回商品展示界面 若不繼續(xù)購(gòu)物則進(jìn)入結(jié)賬界面
在結(jié)賬界面中進(jìn)行查看訂單,進(jìn)入訂單確認(rèn)狀態(tài)
訂單確認(rèn)無(wú)誤后,則系統(tǒng)提交,之后用戶可以注銷(xiāo)退出。
按價(jià)格篩選用戶輸入網(wǎng)址首頁(yè)瀏覽商品商品展示界面加入購(gòu)物車(chē)購(gòu)物車(chē)界面結(jié)賬界面發(fā)出結(jié)賬請(qǐng)求查看訂單注銷(xiāo)繼續(xù)購(gòu)物確定是否購(gòu)物添加或刪除商品訂單確認(rèn)狀態(tài)退出
3模塊設(shè)計(jì)
3.1系統(tǒng)功能模塊
功能模塊圖:
系統(tǒng)總體分為前臺(tái)展示模塊,購(gòu)物車(chē)模塊,結(jié)賬模塊。
前臺(tái)展示模塊包括:瀏覽商品模塊,篩選商品模塊,商品詳情模塊,歷史紀(jì)錄模塊。購(gòu)物車(chē)模塊包括:購(gòu)物車(chē)展示模塊,刪除商品模塊,清空購(gòu)物車(chē)模塊,繼續(xù)購(gòu)物模塊。
結(jié)賬模塊包括:訂單確認(rèn)模塊,提交訂單模塊,事務(wù)處理模塊。
網(wǎng)上購(gòu)物管理系統(tǒng)前臺(tái)展示模塊購(gòu)物車(chē)模塊結(jié)賬模塊瀏覽商品模塊篩選商品模塊商品詳情模塊歷史紀(jì)錄模塊購(gòu)物車(chē)展示模塊刪除商品模塊清空購(gòu)物車(chē)模塊繼續(xù)購(gòu)物模塊訂單確認(rèn)模塊提交訂單模塊事務(wù)處理模塊
圖3-1 功能模塊圖
3.2模塊分析
1:商品展示模塊
這是網(wǎng)站的主頁(yè)面,用戶不登陸也可以進(jìn)入該頁(yè)面,登陸成功后,頁(yè)面會(huì)顯示用戶的信息。此頁(yè)面主要是顯示一些主要商品的圖片、名稱、價(jià)格等信息,用戶可以輸入商品名稱,種類等進(jìn)行搜索,也可以直接點(diǎn)擊商品查看商品細(xì)節(jié)信息。
圖 3-2 商品展示模塊
在主界面中可以根據(jù)價(jià)格的高低排序
2:商品詳情模塊
當(dāng)你點(diǎn)擊一個(gè)商品的鏈接,可以進(jìn)入商品的詳情頁(yè)面,這里會(huì)相識(shí)一個(gè)商品的所有具體信息,可以看到書(shū)名,作者,價(jià)格,出版日期
圖3-3 商品詳情模塊
3:購(gòu)物車(chē)模塊
用戶喜歡的商品可以選擇放進(jìn)購(gòu)物車(chē)?yán)?,可以在?gòu)物車(chē)?yán)锂a(chǎn)看用戶選擇的商品的名稱價(jià)格以及購(gòu)物車(chē)商品的總價(jià),用戶可以對(duì)購(gòu)物車(chē)中的商品進(jìn)行操作,修改購(gòu)買(mǎi)數(shù)量,刪除商品,清空購(gòu)物車(chē),結(jié)賬等。
圖3-3 購(gòu)物車(chē)前臺(tái)模塊
圖3-4購(gòu)物車(chē)展示界面
清空購(gòu)物車(chē)
刪除購(gòu)物車(chē)中的某教材
圖3-5清空購(gòu)物車(chē)界面
圖3-6刪除購(gòu)物車(chē)某教材
4:回顧商品模塊
當(dāng)您想看曾經(jīng)瀏覽過(guò)的商品時(shí),可以點(diǎn)擊查看瀏覽的歷史記錄,根據(jù)最近瀏覽的顯示記錄排序
5:結(jié)賬模塊
圖3-7 回顧商品模塊
在購(gòu)物車(chē)進(jìn)行結(jié)算以后,會(huì)跳轉(zhuǎn)至結(jié)賬界面,系統(tǒng)會(huì)顯示當(dāng)前的信用卡姓名,信用卡帳號(hào),當(dāng)您提交時(shí)就會(huì)結(jié)算成功,并且通過(guò)事務(wù)管理防止重復(fù)提交
圖3-8 結(jié)賬模塊界面
余額不足時(shí)提示
圖3-8 余額不足界面
6:訂單頁(yè)面模塊
在購(gòu)物車(chē)進(jìn)行結(jié)算以后,就會(huì)生成訂單,訂單會(huì)顯示訂單號(hào)、收貨人、地址、電話等信息。點(diǎn)擊查看詳情就可以進(jìn)入訂單詳情頁(yè)面
圖 3-9 訂單頁(yè)面模塊
4數(shù)據(jù)庫(kù)分析與設(shè)計(jì)
4.1數(shù)據(jù)庫(kù)分析
對(duì)于以上模塊的劃分以及分析我們建立網(wǎng)上購(gòu)物管理系統(tǒng)數(shù)據(jù)庫(kù),建了5個(gè)表,分別是帳戶表(account),書(shū)籍信息表(mybooks),訂單表(trade),訂單項(xiàng)目表(tradeItem),用戶信息管理(usersInfo),各表的實(shí)現(xiàn)的功能在上述模塊設(shè)計(jì)中已經(jīng)指出,此刻不再贅述。
帳戶表(account)中的各列分別為:帳戶編號(hào)(accounted)主碼,帳戶余額balance 書(shū)籍信息表(mybooks)中的各列分別為:書(shū)籍(Id)主碼,作者(Author),標(biāo)題(Title),價(jià)格(Price),出版日期(Publishingdate),車(chē)輛類型(Salesamount),車(chē)輛規(guī)格(Storenumber),單價(jià)預(yù)算(Remark)訂單表(trade)中的各列分別為:訂單編號(hào)(tradeid)主碼,用戶編號(hào)(userid)外碼,訂單日期(tradetime)訂單項(xiàng)目表(tradeItem)中的各列分別為:訂單編號(hào)(itemid)主碼,書(shū)籍編號(hào)(bookid)外碼,(quantity),使用年限(tradeid)用戶信息管理(usersInfo)中的各列分別為:用戶編號(hào)(userid),用戶名(username),帳戶編號(hào)(accountid)
4.2系統(tǒng)整體ER圖的設(shè)計(jì)
用戶編號(hào)訂單編號(hào)帳戶編號(hào)帳戶余額訂單表訂單日期帳戶表用戶名用戶編號(hào)帳戶編號(hào)生成擁有用戶信息管理?yè)碛匈?gòu)買(mǎi)訂單項(xiàng)目表書(shū)籍信息表訂單編號(hào)書(shū)籍價(jià)格作者出版日期標(biāo)題書(shū)籍編號(hào)使用年限
圖4-1 系統(tǒng)整體ER圖設(shè)計(jì)
4.3數(shù)據(jù)庫(kù)設(shè)計(jì)
帳戶表(account)設(shè)計(jì)
書(shū)籍信息表(mybooks)設(shè)計(jì)
圖4-2帳戶表(account)設(shè)計(jì)
訂單表(trade)設(shè)計(jì)
圖4-3書(shū)籍信息表(mybooks)設(shè)計(jì)
圖 4-4訂單表(trade)設(shè)計(jì)
訂單項(xiàng)目表(tradeItem)設(shè)計(jì)
用戶信息表(userinfo)設(shè)計(jì)
圖4-5訂單項(xiàng)目表(tradeItem)設(shè)計(jì)
圖4-6 用戶信息表(userinfo)設(shè)計(jì) 5編碼,實(shí)現(xiàn)及測(cè)試
5.1各功能源代碼
5.1.1 分頁(yè)的實(shí)現(xiàn)
public List
String sql=null;System.out.println(“ method------------>”+method);if(method.equals(“price”)){ sql=“SELECT id, author, title, price, publishingDate, ” +
} elseif(method.equals(“salesamount”)){
} elseif(method.equals(“publishingdate”)){
} else{
} returngetForList(sql, sql=“SELECT id, author, title, price, publishingDate, ” +
“salesAmount, storeNumber, remark FROM mybooks ” + “WHERE price >= ? AND price <= ?order by price ”+ “LIMIT ?, ?”;sql=“SELECT id, author, title, price, publishingDate, ” +
“salesAmount, storeNumber, remark FROM mybooks ” + “WHERE price >= ? AND price <= ?order by publishingdate ”+ “LIMIT ?, ?”;sql=“SELECT id, author, title, price, publishingDate, ” +
“salesAmount, storeNumber, remark FROM mybooks ” + “WHERE price >= ? AND price <= ?order by salesamount ”+ “LIMIT ?, ?”;
“salesAmount, storeNumber, remark FROM mybooks ” + “WHERE price >= ? AND price <= ?order by price desc ”+ “LIMIT ?, ?”;cb.getMinPrice(),cb.getMaxPrice(),(cb.getPageNo()-1)*pageSize,pageSize);5.1.2:運(yùn)用ajax技術(shù)實(shí)現(xiàn)頁(yè)面的局部刷新
//ajax修改單個(gè)商品的數(shù)量
//1.獲取頁(yè)面中所有的text,并為其添加onclick事件 $(“:text”).change(function(){
varquantityVal = $.trim(this.value);varreg=/^d+$/g;varquantity=-1;
varflag=false;if(reg.test(quantityVal)){
} if(!flag){ alert('輸入的數(shù)量不合法');$(this).val($(this).attr(“class”));return;}
var$tr = $(this).parent().parent();vartitle = $.trim($tr.find(“td:first”).text());if(quantity==0){
} varflag = confirm(“確定要修改” + title + “的數(shù)量嗎?”);if(!flag){ $(this).val($(this).attr(“class”));} //2.請(qǐng)求地址為: bookServlet varurl = “Books”;
//3.請(qǐng)求參數(shù)為: method:updateItemQuantity, id:name屬性值, varidVal = $.trim(this.name);varargs = {“method”:“updateItemQuantity”, “id”:idVal,//4.在updateItemQuantity方法中, 獲取quanity, id, 再獲取購(gòu)物車(chē)對(duì)象, //5.傳回 JSON 數(shù)據(jù): bookNumber:xx, totalMoney return;
varflag2=confirm(“確定要?jiǎng)h除”+title+“嗎?”);if(flag2){ varserializeVal = $(“:hidden”).serialize();varhref=$tr.find(“td:last”).find(“a”).attr(“href”);window.location.href=href+ “&” + serializeVal;;return;} quantity=parseInt(quantityVal);if(quantity>=0)flag=true;
quantity:val, time:new Date()
“quantity”:quantityVal, “time”:newDate()};調(diào)用 service 的方法做修改
//6.更新當(dāng)前頁(yè)面的bookNumber和totalMoney $.post(url, args, function(data){
varbookNumber = data.bookNumber;vartotalMoney = data.totalMoney;$(“#totalMoney”).text(“總金額: ¥” + totalMoney);$(“#bookNumber”).text(“您的購(gòu)物車(chē)中共有” + bookNumber + “本書(shū)”);},“JSON”);});5.1.3:運(yùn)用ThreadLocal類實(shí)現(xiàn)數(shù)據(jù)庫(kù)的連接與當(dāng)前線程綁定,實(shí)現(xiàn)結(jié)賬的事務(wù)操作
publicvoiddoFilter(ServletRequest request, ServletResponse response, FilterChain chain)throwsIOException, ServletException {
Connection connection = null;try {
connection = DBUtils.getConnection();
connection.setAutoCommit(false);
ConnectionContext.getInstance().bind(connection);
chain.doFilter(request, response);
connection.commit();e.printStackTrace();try {
}
HttpServletResponseresp =(HttpServletResponse)response;HttpServletRequestreq =(HttpServletRequest)request;resp.sendRedirect(req.getContextPath()+ “/error-1.jsp”);connection.rollback();e1.printStackTrace();} catch(SQLException e1){ } catch(Exception e){
}
}
ConnectionContext.getInstance().remove();DBUtils.Release(connection);
} finally{ 5.1.4:使用過(guò)濾器實(shí)現(xiàn)頁(yè)面的編碼
publicvoiddoFilter(ServletRequest request, ServletResponse response, FilterChain chain)throwsIOException, ServletException {
} String encoding = request.setCharacterEncoding(encoding);chain.doFilter(request, response);filterConfig.getServletContext().getInitParameter(“encoding”);5.1.5:數(shù)據(jù)庫(kù)底層操作,運(yùn)用泛型技術(shù)和反射技術(shù)
public class BaseDao
private Class
publicBaseDao(){
} @Override public long insert(String sql, Object...args){
long id=0;Connection conn=ConnectionContext.getInstance().get();try {
PreparedStatement for(inti=0;i prepareStatement.setObject(i+1, args[i]);clazz = ReflectionUtils.getSuperGenericType(getClass());System.out.println(clazz); privateQueryRunnerqueryRunner=new QueryRunner();prepareStatement=conn.prepareStatement(sql,java.sql.Statement.RETURN_GENERATED_KEYS); } } { } // TODO Auto-generated catch block e.printStackTrace();id=resultSet.getLong(1);} catch(SQLException e){ return id;@Override public void update(String sql, Object...args){ } @Override public T query(String sql, Object...args){ } @SuppressWarnings(“unchecked”)@Override public Connection conn=ConnectionContext.getInstance().get();try { } return(V)queryRunner.query(conn, sql, new ScalarHandler(), args);// TODO Auto-generated catch block e.printStackTrace();} catch(SQLException e){ Connection conn=ConnectionContext.getInstance().get();try { } return null;return(T)queryRunner.query(conn, sql, new BeanHandler } queryRunner.update(conn, sql, args);// TODO Auto-generated catch block e.printStackTrace();} catch(SQLException e){ } } return null;@Override public void batch(String sql, Object[]...args){ } @Override public List } Connection conn=ConnectionContext.getInstance().get();try { } return null;System.out.println(“sql-----------”+sql);returnqueryRunner.query(conn, sql, new BeanListHandler e.printStackTrace();Connection conn=ConnectionContext.getInstance().get();try { } queryRunner.batch(conn, sql, args);e.printStackTrace();} catch(SQLException e){ } catch(SQLException e){ 5.1.6:使用session防止表單重復(fù)提交 publicvoidcash(HttpServletRequest request, HttpServletResponse response) HttpSession session=request.getSession(); Thread.sleep(5000);String username=request.getParameter(“username”);String accountId=request.getParameter(“accountId”);StringBuffer errors=validateFormField(username, accountId);if(errors.toString().equals(“")){ errors=validateUser(username, accountId);if(errors.toString().equals(”“)){ throwsServletException, IOException, InterruptedException { ; } } errors=validateBookStoreNumber(request);if(errors.toString().equals(”“)){ } errors=validateBalance(request,accountId);String code=(String)session.getAttribute(”code“);System.out.println(code+”---------“);String codeRe=request.getParameter(”checkCode“);if(!code.equals(codeRe)){ } if(!errors.toString().equals(”“)){ request.setAttribute(”errors“, errors);errors.append(”驗(yàn)證碼輸入不正確“);request.getRequestDispatcher(”/WEB-INF/pages/cash.jsp“).forward(request,service.cash(BookStoreWebUtils.getShopCart(request),username,accountId) request.getRequestDispatcher(”/WEB-INF/pages/error.jsp“).forward(reques } } } if(valS==null){ request.setAttribute(”username“, username);request.getRequestDispatcher(”/success.jsp“).forward(request, session.removeAttribute(”date“);} String val=request.getParameter(”date“); String valS=(String)session.getAttribute(”date“); if(valS!=null&&valS.equals(val)){ return;response);response);t, response);5.1.7:使用數(shù)據(jù)庫(kù)連接池 root 123456 jdbc:mysql:///bookstore com.mysql.jdbc.Driver 2 5 5 10 20 5 結(jié)論 6.1系統(tǒng)優(yōu)點(diǎn) 系統(tǒng)實(shí)現(xiàn)了網(wǎng)上購(gòu)物商城的基本功能,可以很好的完成網(wǎng)上購(gòu)物的一系列流程。而且方便快捷,高效。頁(yè)面也很美觀,大方。對(duì)整個(gè)系統(tǒng)的框架設(shè)計(jì)合理,大大提升了系統(tǒng)的整體性與耦合性。也方便了后期的進(jìn)一步開(kāi)發(fā)與維護(hù)。 6.2系統(tǒng)缺點(diǎn) 系統(tǒng)缺乏創(chuàng)新性,沒(méi)有自己過(guò)多的新增功能,沒(méi)有特別突出的特點(diǎn)。可以增加一些功能,來(lái)豐富系統(tǒng),提升系統(tǒng)的實(shí)用性。例如增加商品的銷(xiāo)量排行榜,方便用戶查看暢銷(xiāo)商品。增加商品的交易評(píng)價(jià),方便用戶判斷是否購(gòu)買(mǎi)此商品。 6.3未來(lái)發(fā)展 這里指為了使本系統(tǒng)更好的適應(yīng)環(huán)境的變化,有必要進(jìn)行適應(yīng)性維護(hù)。一方面由于計(jì)算機(jī)技術(shù)的飛速發(fā)展,原來(lái)的系統(tǒng)不能適應(yīng)新的軟硬件,另一方面,應(yīng)用對(duì)象也在不斷的發(fā)生變化,將導(dǎo)致系統(tǒng)不能適應(yīng)新的應(yīng)用環(huán)境,因此,有必要對(duì)系統(tǒng)進(jìn)行調(diào)整,以保證系統(tǒng)時(shí)時(shí)都能滿足用戶要求。 7實(shí)驗(yàn)小結(jié)