【文章內(nèi)容簡介】
解決數(shù)據(jù)流通中的問題。現(xiàn)有的數(shù)據(jù)流程分析多是通過分層的數(shù)據(jù)流程圖( data flow diagram,簡稱 DFD)來實現(xiàn)的。其具體的做法是:按業(yè)務流程 圖理出的業(yè)務流程順序,將相應調(diào)查過程中所掌握的數(shù)據(jù)處理過程,繪制成一套完整的數(shù)據(jù)流程圖,一邊繪圖,一邊核對相應的數(shù)據(jù)和報表、模型等 ,可以得 到的數(shù)據(jù)流圖如下 : 會 員商 城 管 理 員訂 單 信 息訂 單 信 息 庫用 戶 信 息用 戶 信 息 庫游 客管 理 用 戶 信 息 請 求查 詢 訂 單 請 求管 理 訂 單 信 息 請 求 查 詢 訂 單 請 求修 改 用 戶 信 息 請 求訂 單 信 息用 戶 信 息訂 單 信 息用 戶 信 息生 成 訂 單 請 求訂 單 信 息生 成 訂 單 請 求反 饋 信 息物 流 信 息產(chǎn) 品 信 息產(chǎn) 品 信 息 庫其 他 信 息 庫其 他 信 息發(fā) 布 產(chǎn) 品 信 息 請 求產(chǎn) 品 信 息管 理 產(chǎn) 品 信 息管 理 其 他 信 息 圖 3 數(shù)據(jù)流程圖 (DFD) 9 3 系統(tǒng)設計 系統(tǒng)總體結構分析 該系統(tǒng)總體結構設計如下 : 登 錄 界 面輸 入 用 戶 密 碼統(tǒng) 計 報 表 其 他 信 息 管 理 產(chǎn) 品 信 息 管 理 訂 單 管 理 會 員 信 息 管 理是 否 管 理 員管 理 員 主 頁 會 員 主 頁驗 證 錯 誤驗 證 正 確是 否返 回 主 頁 登 出登 出商 城 主 頁反 饋 信 息 管 理 物 流 信 息 管 理 圖 4 系統(tǒng)總體結構 數(shù)據(jù)庫設計 數(shù)據(jù)庫的設計思想 數(shù)據(jù)庫( DataBase,簡記為 DB) 是 長期儲存在計算機內(nèi)的 、 有組織10 的 、統(tǒng)一管理的相關數(shù)據(jù)的集合。 DB 能為各種會員共享,具有較小冗余度、數(shù)據(jù)間聯(lián)系緊密而又有較高是數(shù)據(jù)獨立性等特點。 數(shù)據(jù)庫設計( Database Design,簡稱 DBD)是指對于給定的軟、硬件環(huán)境,針對現(xiàn)實問題,設計一個較優(yōu)的數(shù)據(jù)模型,建立 DB 結構和 DB 應用系統(tǒng)。 幾乎所有的 WEB 項目都是基于數(shù)據(jù)庫的,這使得數(shù)據(jù)的設計在整個項目中的地位舉足輕重。相關研究表明,在數(shù)據(jù)應用系統(tǒng)的開發(fā)中,項目成功 50%靠數(shù)據(jù)庫的設計。良好的數(shù)據(jù)設計往往能夠減少開發(fā)的負擔。 數(shù)據(jù)庫設計是指對于一個給定的 應用環(huán)境,通過合理的邏輯設計和有效的物理設計來構造較優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫極其應用系統(tǒng),滿足會員的各種信息需求。 數(shù)據(jù)庫設計( Database Design,簡稱 DBD)是指對于給定的軟、硬件環(huán)境,針對現(xiàn)實問題,設計一個較優(yōu)的數(shù)據(jù)模型,建立 DB 結構和 DB 應用系統(tǒng)。 計算機信息系統(tǒng)以數(shù)據(jù)庫為核心,為現(xiàn)實世界的信息流計算機化,并對計算機化的信息進行各種操作,就是如何利用數(shù)據(jù)庫管理系統(tǒng),將會員的要求轉(zhuǎn)化成有效的數(shù)據(jù)結構,并使數(shù)據(jù)庫結構易于適應會員新的要求的過程,這個過程稱為數(shù)據(jù)庫設計。 數(shù)據(jù)庫簡介 本系統(tǒng)采用 MySQL 作為后臺管理數(shù)據(jù)庫。 MySQL 是一個小型關系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典 MySQL AB 公司。在 20xx 年 1 月 16 號被 Sun 公司收購。而 20xx 年, SUN 又被 Oracle收購。 MySQL 是一種關聯(lián)數(shù)據(jù)庫管理系統(tǒng),關聯(lián)數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi)。這樣就增加了速度并提高了靈活性。 MySQL 的 SQL“結構化查詢語言”。 SQL 是用于訪問數(shù)據(jù)庫的最常用標準化語言。 MySQL 軟件采用了 GPL( GNU 通用公共許可證)。由于其體積小、速度快、總體擁有成本低,尤其 是開放源碼這一特點,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了 MySQL 作為網(wǎng)站數(shù)據(jù)庫。 數(shù)據(jù)庫需求分析 11 通過對整個系統(tǒng)的分析,依據(jù)網(wǎng)上商店的處理需求,對應數(shù)據(jù)表設計及功能如下。 ? 商品基本信息表:存放網(wǎng)上商店所銷售商品的基本信息。 ? 商品類別信息表:存放網(wǎng)上商店所提供商品大的分類信息。 ? 會員信息表:存放網(wǎng)上商店用戶的基本信息。 ? 游客信息表:存放非注冊會員的相關信息。 ? 訂單信息表:存放與用戶相關的訂單基本信息。 ? 信息顯示表:存放用于主頁和各種分類頁面顯示的產(chǎn)品信息。 ? 物流信息表:存放物流相關數(shù)據(jù) 。 ? 反饋信息表:存放用戶投訴反饋和購買商品后評論的信息。 ? 反饋信息類別表:存放反饋信息類別。 ? 商城廣告信息表:存放商店的廣告信息。 數(shù)據(jù)庫關系模型 根據(jù)需求分析 生成的數(shù)據(jù)庫關系模型圖如下 :i t e mP K i t e m i d n a m e p r i c e s t a t u s p r o d u c e d a t e d i s c o u n tF K 1 t y p e i d r e m a r k t i t l e d i s p l a yi t e m t y p eP K t y p e i d t y p e n a m em e m b e rP K u s e r i d r e a l n a m e u s e r n a m e p a s s w o r d p h o n e a d d r e s s r o l e e m a i l r e m a r k i po r d e r f o r mP K o r d e r i dF K 1 u s e r i d o r d e r p r i c e o r d e r d a t e a d d r e s s p h o n e a r e a c o d e s t a t u so r d e r l i s tP K l i s t i dF K 1 o r d e r i dF K 2 i t e m i d a c o u n te x p r e s sP K e x p r e s s i dF K 1 o r d e r i dF K 2 u s e r i d a d d r e s s p h o n e a r e a c o d e c o r p e r a t i o n e x p r e s s c o d e c r e a t e d tf e e d b a c kP K f e e d b a c k i dF K 1 u s e r i d c o n t e n t c r e a t e d t t y p eF K 2 o r d e r i d 圖 5 ER 圖 12 根據(jù)選用的數(shù)據(jù)庫管理系統(tǒng)為 MySQL, 網(wǎng)上商城 系統(tǒng) 數(shù)據(jù)庫中的各個表字段定義 如下所示: 1) user 為 用戶 信息表 ,主要保存 用戶和管理員的 的注冊信息, 如表51: 表 51 列名 數(shù)據(jù)類型 可否為空 說明 user_id int not null ID,唯一標識 user_name varchar not null 用戶名 user_pass varchar not null 密碼 real_name varchar null 真實姓名 phone varchar null 電話 address varchar null 家庭住址 role int not null 權限 varchar not null 電子郵箱 remark varchar null 備注 ip varchar not null IP status int not null 刪除標示 2) shopcar 表,主要存儲 用戶的購物車 信息,見表 52 表 52 列名 數(shù)據(jù)類型 可否為空 說明 shopcar_id int not null ID,唯一標識 user_id int not null 用戶 ID product_id int not null 產(chǎn)品 ID product_sum int not null 產(chǎn)品數(shù)量 product_name varchar not null 產(chǎn)品名稱 3) product表,主要保存 產(chǎn)品 信息,見表 53 表 53 列名 數(shù)據(jù)類型 可否為空 說明 product_id int not null ID,唯一標識 product_name varchar not null 產(chǎn)品名稱 price varchar not null 價格 discount varchar not null 優(yōu)惠價格 title_display varchar not null 標題顯示 remark varchar not null 備注 detail varchar not null 詳細介紹 discount_id int not null 優(yōu)惠 ID status int not null 刪除標示 image varchar not null 圖片地址 13 content varchar not null 產(chǎn)品參數(shù) category_id int not null 類別 ID 4) order表, 儲存訂單信息, 見表 54 表 54 列名 數(shù)據(jù)類型 可否為空 說明 order_id int not null ID,唯一標識 user_id int not null 用戶 ID order_price varchar not null 訂單總價 order_time varchar not null 訂單時間 address varchar not null 收貨地址 phone varchar not null 收貨電話 area_code varchar not null 郵政編碼 status int not null 刪除標示 product_ids varchar not null 產(chǎn)品 ID 組 product_sum varchar not null 產(chǎn)品數(shù)量組 name varchar not null 收件人姓名 5) feedback表, 保存用戶反饋信息 ,見表 55 表 55 列名 數(shù)據(jù)類型 可否為空 說明 feedback_id Int not null ID,唯一標識 user_id Int not null 用戶 ID order_id Int not null 訂單 ID content varchar not null 內(nèi)容 create_time timestamp not null 創(chuàng)建時間 status Int not null 刪除標示 6) express 表,保存物流信息,見表 56 表 56 列名 數(shù)據(jù)類型 可否為空 說明 express_id Int not null ID,唯一標識 order_id Int not null 訂單 ID user_id Int not null 用戶 ID address varchar not null 地址 phone varchar not null 電話 area_code varchar not null 郵政編碼 corperation varchar not null 快遞公司 express_code varchar not null 快遞單號 create_time timestamp not null 創(chuàng)建時間 status Int not null 刪除標示 14 7) discount 表,保存優(yōu)惠信息信息,見表 57 表 57 列名 數(shù)據(jù)類型 可否為空 說明 discount_id Int not null ID,唯一標識 discount_name varchar not null 優(yōu)惠名稱 status Int not null 刪除標示 7) category 表,保存 產(chǎn)品類別 信息,見表 58 表 58 列名 數(shù)據(jù)類型 可否為空 說明 category_id Int not null ID,唯一標識 name varchar not null 類別名稱 father_id Int not null 上級 ID statue Int not null 刪除標示 attribute varchar not null 類別參數(shù) 系統(tǒng)的開發(fā) 技術簡介 與運行環(huán)境 Struts+Hibernate+Spring