目录
1、系统规格说明----------------------------------------------------------------------------- 1 -
、系统功能和目标 ------------------------------------------------------------------------------ 1 -
、可行性分析 ------------------------------------------------------------------------------------ 1 -
、技术可行性------------------------------------------------------------------------------------------ 1 -
、经济可行性------------------------------------------------------------------------------------------ 1 -
、社会可行性------------------------------------------------------------------------------------------ 2 -
2、需求规格说明----------------------------------------------------------------------------- 2 -
、任务概述 --------------------------------------------------------------------------------------- 2 -
、数据描述 --------------------------------------------------------------------------------------- 2 -
、数据库说明------------------------------------------------------------------------------------------ 2 -
、功能需求 --------------------------------------------------------------------------------------- 5 -
、运行需求 --------------------------------------------------------------------------------------- 6 -
、用户接口--------------------------------------------------------------------------------------------- 6 -
、硬件接口--------------------------------------------------------------------------------------------- 6 -
、软件接口--------------------------------------------------------------------------------------------- 6 -
、属性需求--------------------------------------------------------------------------------------------- 6 -
3、概要设计说明----------------------------------------------------------------------------- 6 -
、任务概述 --------------------------------------------------------------------------------------- 6 -
、总体设计 --------------------------------------------------------------------------------------- 7 -
、处理流程--------------------------------------------------------------------------------------------- 7 -
、软件结构 ------------------------------------------------------------------------------------------- 13 -
、运行设计-------------------------------------------------------------------------------------- 14 -
、ADO 类框图 --------------------------------------------------------------------------------------- 14 -
、Bean 类框图 --------------------------------------------------------------------------------------- 16 -
、公用函数类框图 ---------------------------------------------------------------------------------- 18 -
、过滤类类框图 ------------------------------------------------------------------------------------- 20 -
、监听类类框图 ------------------------------------------------------------------------------------- 20 -
、Servlet 类框图 ------------------------------------------------------------------------------------- 20 -
4、运行情况 --------------------------------------------------------------------------------- 23 -
、前台操作-------------------------------------------------------------------------------------- 23 -
、首页 ------------------------------------------------------------------------------------------------- 23 -
、我的账号 ------------------------------------------------------------------------------------------- 24 -
、后台操作-------------------------------------------------------------------------------------- 30 -
、用户管理 ------------------------------------------------------------------------------------------- 30 -
、类别管理 ------------------------------------------------------------------------------------------- 33 -
、商品管理 ------------------------------------------------------------------------------------------- 35 -
、订单管理 ------------------------------------------------------------------------------------------- 37 -
5、个人分工及感想: --------------------------------------------------------------------- 39 -
参考文献-------------------------------------------------------------------------------------- 40 -
- 0 -
1、系统规格说明
、系统功能和目标
随着网络的普及,网上购物越来越成为大家的喜爱。为了满足人们购物的欲望和方便,
各商店都会开发一些自己的电子商务网站。我们这款电子商务网站是立足于一个高度集成的、
功能强大、技术先进的软件系统。使用方便、安全、快捷。
本系统实现的主要功能有:
1)用户申请注册功能。每个人都可以通过申请成为该电子网站的会员。
2)用户登录功能。会员可以通过用户名和密码登录到网站主页。
3)商品搜索功能。会员可以在网站上查看各种商品信息。
4)购买商品功能。会员可以从网站上购买自己喜爱的商品。
5)下订单功能。会员可以对喜爱的商品预定下来。
6)购物车管理功能。会员可以把商品暂时放在自己的购物车里。
7)系统管理员登陆。管理员对系统、数据库等进行更新和维护。
、可行性分析
、技术可行性
本软件是一个简单易懂的网站系统,对硬件要求不高。一般电脑都可运行。
1)操作系统可以使用 window 系列,它快捷方便兼容性好,适合各种软件开发。Window 系
列可以运行多种软件,操作起来很简单。
2)系统的主心语言是 java,包括 javabean,jsp 等等。Java 是一种可以撰写跨平台应用软件
的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,
广泛应用于个人 PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时
拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java 更具备了
显著优势和广阔前景。
3)数据库使用 sql。SQL 是高级的非过程化编程语言,是沟通数据库服务器和客户端的重
要工具,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需
要用户了解具体的数据存放方式,所以,具有完全不同底层结构的不同数据库系统,可以
使用相同的 SQL 语言作为数据输入与管理的接口。
、经济可行性
Window 系统开发软件轻松快速,我们采用瀑布式开发软件,省时省力。另一方面,该软件
在市场上流行广泛,实用性强,开发成功后的收益将很有前瞻性。
- 1 -
、社会可行性
1)该软件纯属于个人开发,没有任何版权限制,为用户需求提供了方便。
2)硬件的需求小,而且在 window 中运行安全,减少了安装系统带来的不便。
3)开发的成本与收益的差值很乐观,在市场占有很大优势。
4)网络发展迅速,人们对网购的渴望给这款软件带来动力。
2、需求规格说明
、任务概述
需求分析工作是软件生存期中重要的一步,也是起决定性的一步。我们试图通过它来全面了
解整个系统的软件功能和性能方面的要求,为软件设计打下坚实的基础。该部分的目标主要
有:获得当前系统的物理模型,了解当前系统是如何运行的;抽象出当前系统的逻辑模型,
对物理模型进行筛选,得到与软件系统有关的部分;建立电子商务网站系统的逻辑模型,得
出数据关系图;补充目标系统的逻辑模型,对目标系统的用户界面,至今尚未考虑的细节进
行说明。
、数据描述
、数据库说明
本软件采用的数据库属于 SQL 数据库,因为它性能高,支持多种软件平台。数据库中有些
属性多,而且数据库包含的表也很多,访问能力需要很高的操作性。
1.数据库包含的表
1)用户表:
- 2 -
2)商品类别表
3)商品表
4)订单表
t_UserInfo
autoId
userName
password
trueName
userSex
userMail
userAddress
userCode
userFlag
addtime
locked
int
varchar2(100)
varchar2(20)
varchar2(20)
varchar2(4)
varchar2(50)
varchar2(200)
varchar(10)
int
date
int
<pk>
t_ClassInfo
classId
className
parentId
int
varchar2(50)
int
<pk>
t_ItemInfo
autoId
classId
nclassId
title
content
price
remark
filePath
fileName
addtime
int
int
int
varchar2(100)
varchar2(200)
float
varchar2(200)
varchar2(200)
varchar2(200)
date
<pk>
<fk1>
<fk2>
- 3 -
5)订单详情表
3.表关系图:
1)商品与商品类别的关系图:
t_OrderInfo
orderNo
userId
userName
userAddress
userCode
userPhone
userMail
ordertime
payType
camiedType
hasapproved
result
approvedUserId
approvedDate
int
int
varchar(200)
varchar2(200)
varchar2(10)
varchar2(20)
varchar2(50)
date
varchar2(50)
varchar2(50)
int
varchar(200)
int
date
<pk>
<fk>
t_OrderView
autoId
orderNo
itemId
itemName
itemCount
price
int
int
int
varchar2(100)
int
float
<pk>
<fk>
FK_CLASS_CLASSI D_I TEMFK_CLASS_NCLASSI D_I TEM
t _Cl assI nf o
cl assI d
cl assName
par ent I d
i nt
var char 2( 50)
i nt
<pk>
t _I t emI nf o
aut oI d
cl assI d
ncl assI d
t i t l e
cont ent
pr i ce
r emar k
f i l ePat h
f i l eName
addt i me
i nt
i nt
i nt
var char 2( 100)
var char 2( 200)
f l oat
var char 2( 200)
var char 2( 200)
var char 2( 200)
dat e
<pk>
<f k1>
<f k2>
- 4 -
2)用户,商品订单和订单详情表的关系图:
、功能需求
根据系统目标要求,该软件需要的功能划分结构图如下:
FK_ORDER_I D_USER
FK_ORDER_I D_VI EW
t _User I nf o
aut oI d
user Name
passwor d
t r ueName
user Sex
user Mai l
user Addr ess
user Code
user Fl ag
addt i me
l ocked
i nt
var char 2( 100)
var char 2( 20)
var char 2( 20)
var char 2( 4)
var char 2( 50)
var char 2( 200)
var char ( 10)
i nt
dat e
i nt
<pk>
t _Or der I nf o
or der No
user I d
user Name
user Addr ess
user Code
user Phone
user Mai l
or der t i me
payType
cami edType
hasappr oved
r esul t
appr ovedUser I d
appr ovedDat e
i nt
i nt
var char ( 200)
var char 2( 200)
var char 2( 10)
var char 2( 20)
var char 2( 50)
dat e
var char 2( 50)
var char 2( 50)
i nt
var char ( 200)
i nt
dat e
<pk>
<f k>
t _Or der Vi ew
aut oI d
or der No
i t emI d
i t emName
i t emCount
pr i ce
i nt
i nt
i nt
var char 2( 100)
i nt
f l oat
<pk>
<f k>
电子商务网站系统
注册功能 登录功能 商 品 搜 索 功
能
购物功能 订 单 功
能
购物车管理功能 系统管理员功能
- 5 -
、运行需求
、用户接口
电子商品网站系统作为一个面向大众的应用系统,对人机界面要求很高。网页格式必须
大众化,让人一目了然知道有哪些商品,以便于用户能熟悉方便购物。当然风格上可以有自
己的特色。
、硬件接口
本系统要求多台服务器的并行连接
、软件接口
Window 系列系统
Java 编程软件(包括 jsp 等)
SQL 数据库系统
、属性需求
要求功能实现良好简单操作,系统恢复性良好,启动快。
安全性能好,具有一定的抗病毒能力为上。
3、概要设计说明
、任务概述
本阶段的主要任务是根据需求规格说明确定设计目标,以及它们的优先顺序,并根据目
标确定最适合的设计方法,制定各种规范。将系统按功能划分成模块的层次结构。确定每个
模块的功能,建立与已确定的软件需求的对应关系。确定模块之间的调用关系,确定模块之
间的接口,即模块之间传递的消息。设计好接口的信息结构,评估模块划分的质量及导出模
块结构的规则。完成数据库设计,避免数据大量冗余。
- 6 -
、总体设计
、处理流程
作为运行前奏,用户先得进行注册接下来有以下的程序流程图
1)注册用户的注册及登录流程图
2) 商品信息搜索流程图
转到注册
新用户页面
填写注册基本信息
验证用户填写
的信息是否正
确
否
提示交用户注册的
信息
查询用户填写
的登录是否在
已存在
提示登录名
已存在
插入数据库
数据是否执行
成功
提示注册成功
提示注册失败,请稍
后重试
是
否
是
是 否
转到登录
用户页面
输入用户名,密码和
验证码并提交数据
验证码是否填
写正确
查询用户名和
密码在数据库
中是否存在
提示此用用户名已
登录
提示登录成功
验证此用户名
是否已登录
是
是
否是
提交用户名或密码
不正确
提示验证码输入错
误
否
否
- 7 -
3)购买商品流程图
输入查询条件
根据查询条件到数
据库正行查询操作
是否有查询到
记录
提示没有此条
件的商品信息
查询到的记录处理
记录是否起过
一页的显示范
围
进行分页处理
不进行分页处理,直
接返回所有记录
是
否
是
否
结束
- 8 -
4)购物车管理流程图
购买商品
根据商品ID号进行
数据处理,并存放到
购物车
购物车是否有
商品
新建 一购物车
取出存放在session
中的购物商品
加入新购买的商品,
重置购物车数据
否 是
- 9 -
5)下订单流程图
用户购买商品
商品添加到购物车
并跳转到购物车页
面
是否进入结算
中心
是否继续购物
是否清空购物
四
是否更新商品
数量
是否删除某商
品
进入结算
中心
跳转到首
页
将购物车
中的商品
全商清空
更新商品
数量
删除购物
车中的某
商品
结束
否
否
否
否是
是
是
是
是
- 10 -
进入结算中心
判断购物车是
否有数据
判断用户是否
已登录
填写订单的基本信
息,及必填项控制
重新审核订单
信息
是否修改购物
车中的商品
是否订单的基
本信息
执行订单数据到数
据库
数据库是否执
行成功
提示下订单失败 提示下订单成功
确认订单信
息
结束
修改购物
车商品
修改订单
基本信息
提示购物车为空,请
先购物
提示用户未登录,请
先登录,转到登录页
面
- 11 -
6)系统用户登录流程图
登录页面
输入用户名,密码,
验证码
判断用户名和
验证码是否为
空
验证码是否正
确
判断用户名是
否存在
判断密码是否
输入正确
判断密码错误
次数是否超过3
次
判断用户名是
否已在线
提示用户名已在线,
不能重复登录
登录成功,转入后以
系统管理首页
结束
提示密码错误
提示密码错误
已3次,将退出
系统
提示用户不存
在
提示验证码错
误
提示用户名或
验证码为空
否
是
是
否
是
否
是
是 否
否
否
是
- 12 -
、软件结构
软件主要有两大框架,他们内部的关系:
后台框架图:
前台框架图:
后台系统登录
用户管理
类别管理
商品管理
订单管理
系统用户管理
注册用户管理
系统用户的增加,删除,修改,查找操作
注册用户的冻结和解冻操作
商品类别添加
商品类别管理
大类别及小类别的添加操作
类别的修改和查找操作
商品信息添加
商品信息维护
商品信息添加操作
商品信息修改,删除,查询操作
订单信息审核
订单信息查询
待审核订单的查看及审核操作
历史订单信息的查询及详细信息的查看
- 13 -
、运行设计
根据需求各模块组合,编写类和函数,制作成框图
、ADO 类框图
1)订单 ADO 类框图
2)类别 ADO 类框图
OrderInfoAdo
- oia : OrderInfoAdo = new OrderInfoAdo()
-
+
+
+
+
+
+
+
+
+
<<Constructor>> OrderInfoAdo ()
initializeOIA ()
getOrderInfo (HttpServletRequest request)
getUserOrderInfo (HttpServletRequest request, String userId, String hasapproved)
getOrderInfo (String orderId)
auditingOrderInfo (String orderNo, String hasapproved, String result, String Approveduserid)
updateOrderInfo (OrderInfoBean orderBean)
buildOrderInfo (OrderInfoBean orderBean, List cartList)
getNextOrderNo ()
getUserOrderInfoUnauditing (HttpServletRequest request, String userId, String hasapproved)
: OrderInfoAdo
: List
: List
: OrderInfoBean
: boolean
: boolean
: boolean
: int
: List
打开首页
商品信息浏览 热销商品,最新上架商品,及搜索出商品的浏览
我的账号
我的账号信息查看
账户信息的修改操作
账户密码的修改操作
账户历史订单的详情查看
账户待审核订单的详情查看及基本信息修改操作
购物车 购买商品 下单基本信息的填写及下订单操作
- 14 -
3)商品 ADO 类框图
4)用户 ADO 类框图
5)订单详情 ADO 类框图
ClassInfoAdo
- cia : ClassInfoAdo = new ClassInfoAdo()
-
+
+
+
+
+
+
+
+
+
+
<<Constructor>> ClassInfoAdo ()
initializeCIA ()
getBigClass (Map searchMap)
getSmallClass (Map searchMap)
addClassInfo (ClassInfoBean classBean)
getClassInfo ()
getClassInfo (String classId)
updateClassInfo (ClassInfoBean classBean)
delSmallClassInfo (String classId)
delBigClassInfo (String classId)
isExist (String className, int classId)
: ClassInfoAdo
: List
: List
: boolean
: List
: ClassInfoBean
: boolean
: boolean
: boolean
: boolean
ItemInfoAdo
- iia : ItemInfoAdo = new ItemInfoAdo()
-
+
+
+
+
+
+
+
+
+
<<Constructor>> ItemInfoAdo ()
initializeIIA ()
getItemInfo (HttpServletRequest request, int pageSize, String pagetool)
addItemInfo (ItemInfoBean itemBean)
getItemInfo (String itemId)
delItemInfo (String itemId)
modifyItemInfo (ItemInfoBean itemBean)
getNewItemInfo (int row)
getHotItemInfo (int row)
getItemPic (String classId, boolean isNclass)
: ItemInfoAdo
: List
: boolean
: ItemInfoBean
: boolean
: boolean
: List
: List
: List
UserInfoAdo
- uia : UserInfoAdo = new UserInfoAdo()
-
+
+
+
+
+
+
+
+
+
+
<<Constructor>> UserInfoAdo ()
initializeUIA ()
getUserBean (String userName)
getUserInfoBean (String autoid)
getUserInfoBean (int flag, HttpServletRequest request)
addUser (UserInfoBean user)
modifyUser (UserInfoBean user)
delUser (String autoid)
lockedUser (String locked, String autoid)
updateUser (UserInfoBean user)
updateUserPassword (String pas, String autoid)
: UserInfoAdo
: UserInfoBean
: UserInfoBean
: List
: boolean
: boolean
: boolean
: boolean
: boolean
: boolean
OrderViewAdo
- ova : OrderViewAdo = new OrderViewAdo()
+
-
+
<<Constructor>>
initializeOVA ()
OrderViewAdo ()
getOrderView (String orderNo)
: OrderViewAdo
: List
- 15 -
、Bean 类框图
1)类别 Bean
2)商品 Bean
3)订单 Bean
Cl assI nf oBean
-
-
-
-
-
ser i al Ver si onUI D
cl assI d
cl assName
par ent I d
par ent Name
: l ong
: i nt
: St r i ng
: i nt
: St r i ng
= 5873557312823736246L
+
+
+
+
+
+
+
+
get Par ent Name ( )
set Par ent Name ( St r i ng par ent Name)
get Cl assI d ( )
set Cl assI d ( i nt cl assI d)
get Cl assName ( )
set Cl assName ( St r i ng cl assName)
get Par ent I d ( )
set Par ent I d ( i nt par ent ed)
: St r i ng
: voi d
: i nt
: voi d
: St r i ng
: voi d
: i nt
: voi d
I t emI nf oBean
-
-
-
-
-
-
-
-
-
-
-
-
-
ser i al Ver si onUI D
aut oI d
cl assI d
ncl assI d
t i t l e
cont ent
pr i ce
r emar k
f i l ePat h
f i l eName
addt i me
cl assName
ncl assName
: l ong
: i nt
: i nt
: i nt
: St r i ng
: St r i ng
: doubl e
: St r i ng
: St r i ng
: St r i ng
: Dat e
: St r i ng
: St r i ng
= - 6366092537493126308L
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
get Cl assName ( )
set Cl assName ( St r i ng cl assName)
get Ncl assName ( )
set Ncl assName ( St r i ng ncl assName)
get Addt i me ( )
set Addt i me ( Dat e addt i me)
get Aut oI d ( )
set Aut oI d ( i nt aut oI d)
get Cl assI d ( )
set Cl assI d ( i nt cl assI d)
get Cont ent ( )
set Cont ent ( St r i ng cont ent )
get Fi l eName ( )
set Fi l eName ( St r i ng f i l eName)
get Fi l ePat h ( )
set Fi l ePat h ( St r i ng f i l ePat h)
get Ncl assI d ( )
set Ncl assI d ( i nt ncl assI d)
get Pr i ce ( )
set Pr i ce ( doubl e pr i ce)
get Remar k ( )
set Remar k ( St r i ng r emar k)
get Ti t l e ( )
set Ti t l e ( St r i ng t i t l e)
: St r i ng
: voi d
: St r i ng
: voi d
: Dat e
: voi d
: i nt
: voi d
: i nt
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
: i nt
: voi d
: doubl e
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
- 16 -
4)订单详情 Bean
Or der I nf oBean
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
ser i al Ver si onUI D
or der No
user I d
user Name
user Addr ess
user Code
user Phone
user Mai l
or der t i me
payType
cami edType
hasappr oved
r esul t
appr ovedUser I d
appr ovedDat e
appr ovedUser Name
: l ong
: i nt
: i nt
: St r i ng
: St r i ng
: St r i ng
: St r i ng
: St r i ng
: Dat e
: St r i ng
: St r i ng
: i nt
: St r i ng
: i nt
: Dat e
: St r i ng
= 4781708839811382099L
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
get Appr ovedUser Name ( )
set Appr ovedUser Name ( St r i ng appr ovedUser Name)
get Appr ovedDat e ( )
set Appr ovedDat e ( Dat e appr ovedDat e)
get Appr ovedUser I d ( )
set Appr ovedUser I d ( i nt appr ovedUser I d)
get Cami edType ( )
set Cami edType ( St r i ng cami edType)
get Hasappr oved ( )
set Hasappr oved ( i nt hasappr oved)
get Or der No ( )
set Or der No ( i nt or der No)
get Or der t i me ( )
set Or der t i me ( Dat e or der t i me)
get PayType ( )
set PayType ( St r i ng payType)
get Resul t ( )
set Resul t ( St r i ng r esul t )
get User Addr ess ( )
set User Addr ess ( St r i ng user Addr ess)
get User Code ( )
set User Code ( St r i ng user Code)
get User I d ( )
set User I d ( i nt user I d)
get User Mai l ( )
set User Mai l ( St r i ng user Mai l )
get User Name ( )
set User Name ( St r i ng user Name)
get User Phone ( )
set User Phone ( St r i ng user Phone)
: St r i ng
: voi d
: Dat e
: voi d
: i nt
: voi d
: St r i ng
: voi d
: i nt
: voi d
: i nt
: voi d
: Dat e
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
: i nt
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
Or der Vi ewBean
-
-
-
-
-
-
-
ser i al Ver si onUI D
aut oI d
or der No
i t emI d
i t emName
i t emCount
pr i ce
: l ong
: i nt
: i nt
: i nt
: St r i ng
: i nt
: doubl e
= 5491500094624848757L
+
+
+
+
+
+
+
+
+
+
+
+
get Aut oI d ( )
set Aut oI d ( i nt aut oI d)
get I t emCount ( )
set I t emCount ( i nt i t emCount )
get I t emI d ( )
set I t emI d ( i nt i t emI d)
get I t emName ( )
set I t emName ( St r i ng i t emName)
get Or der No ( )
set Or der No ( i nt or der No)
get Pr i ce ( )
set Pr i ce ( doubl e pr i ce)
: i nt
: voi d
: i nt
: voi d
: i nt
: voi d
: St r i ng
: voi d
: i nt
: voi d
: doubl e
: voi d
- 17 -
5)用户 Bean
、公用函数类框图
1)数据库公用函数
2)公用函数
User I nf oBean
-
-
-
-
-
-
-
-
-
-
-
-
ser i al Ver si onUI D
aut oI d
user Name
passwor d
t r ueName
user Sex
user Mai l
user Addr ess
user Code
user Fl ag
addt i me
l ocked
: l ong
: i nt
: St r i ng
: St r i ng
: St r i ng
: St r i ng
: St r i ng
: St r i ng
: St r i ng
: i nt
: Dat e
: i nt
= 1239033457667349559L
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
get Addt i me ( )
set Addt i me ( Dat e addt i me)
get Aut oI d ( )
set Aut oI d ( i nt aut oI d)
get Locked ( )
set Locked ( i nt l ocked)
get Passwor d ( )
set Passwor d ( St r i ng passwor d)
get Tr ueName ( )
set Tr ueName ( St r i ng t r ueName)
get User Addr ess ( )
set User Addr ess ( St r i ng user Addr ess)
get User Code ( )
set User Code ( St r i ng user Code)
get User Mai l ( )
set User Mai l ( St r i ng user Mai l )
get User Name ( )
set User Name ( St r i ng user Name)
get User Sex ( )
set User Sex ( St r i ng user Sex)
get User Fl ag ( )
set User Fl ag ( i nt user Fl ag)
: Dat e
: voi d
: i nt
: voi d
: i nt
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
: St r i ng
: voi d
: i nt
: voi d
DBUt i l
-
+
+
+
+
+
+
+
<<Const r uct or >> DBUt i l ( )
get Connect i on ( )
i sConnOK ( St r i ng sql , St r i ng or acl eDr i ver , St r i ng user Name, St r i ng user Pas)
oper at eDB ( St r i ng sql )
cl ose ( St at ement st at e)
cl ose ( Connect i on con)
cl ose ( Resul t Set r es)
get MaxI d ( St r i ng t abl eName, St r i ng i dName)
: Connect i on
: bool ean
: bool ean
: voi d
: voi d
: voi d
: St r i ng
- 18 -
3)分页公用函数
4)日志公用函数
5)表单文件流公用函数
CommonUt i l
-
+
+
+
+
+
+
<<Const r uct or >> CommonUt i l ( )
Nul l ToSt r i ng ( St r i ng st r )
dat eToSt r i ng ( Dat e dat e, St r i ng f or mat )
dat eToSt r i ng ( Dat e dat e)
st r i ngToDat e ( St r i ng st r Dat e, St r i ng f or mat )
st r i ngToDat e ( St r i ng st r Dat e)
doubl eToSt r i ng ( doubl e dou)
: St r i ng
: St r i ng
: St r i ng
: Dat e
: Dat e
: St r i ng
PageDAO
+
+
+
+
cur r ent page
pagecount
r scount
pagesi ze
: i nt
: i nt
: i nt
: i nt
= 1
= 0
= 0
= 20
+
+
+
+
+
+
+
+
+
+
+
+
+
get Cur r ent page ( )
set Cur r ent page ( i nt cur r ent page)
get Pagecount ( )
set Pagecount ( i nt pagecount )
get Pagesi ze ( )
set Pagesi ze ( i nt pagesi ze)
get Rscount ( )
set Rscount ( i nt r scount )
get RsCount For Rs ( St r i ng sql )
get RsCount For SQL ( St r i ng sql )
get PageCount ( )
get Cur r ent Page ( Ht t pSer vl et Request r equest )
paget ool ( St r i ng f i l eName)
: i nt
: voi d
: i nt
: voi d
: i nt
: voi d
: i nt
: voi d
: i nt
: i nt
: i nt
: i nt
: St r i ng
LogUt i l
-
+
+
<<Const r uct or >> LogUt i l ( )
r eadLog ( St r i ng f i l eName, St r i ng f i l ePat h)
wr i t eLog ( St r i ng l og, St r i ng f i l ePat h)
: St r i ng
: voi d
Fi l eRequest Handl er
-
-
-
-
-
-
-
-
-
ser i al Ver si onUI D
r eq
i sMul t i par t
maxMemor ySi ze
t empDi r ect or y
maxFi l eSi ze
f i l eMap
par aMap
r eadOnl yPar aMap
: l ong
: Ht t pSer vl et Request
: bool ean
: i nt
: St r i ng
: l ong
: Map
: Map
: Map
= - 2633528184124692029L
= new HashMap( )
= new HashMap( )
-
-
+
+
+
+
+
+
<<Const r uct or >> Fi l eRequest Handl er ( Ht t pSer vl et Request r eq)
par seRequest ( )
i nvoke ( Obj ect pr oxy, Met hod met hod, Obj ect ar gs[ ] )
get Par amet er Names ( )
get Fi l ePar amet er ( St r i ng key)
get Par amet er ( St r i ng key)
f i l ePar se ( Ht t pSer vl et Request r eq)
f i l ePar se ( Ht t pSer vl et Request r eq, i nt maxMemor ySi ze, St r i ng t empDi r ect or y, i nt maxFi l eSi ze)
: voi d
: Obj ect
: Enumer at i on
: Fi l eI t em
: St r i ng
: Fi l eHt t pSer vl et Request
: Fi l eHt t pSer vl et Request
- 19 -
、过滤类类框图
1)编码过滤类
2)页面跳转过滤类
、监听类类框图
在线用户的监听类:
、Servlet 类框图
1)购物车 Servlet
2)类别 Servlet
3)商品 Servlet
Encodi ngFi l t er
+
+
+
i ni t ( Fi l t er Conf i g conf i g)
doFi l t er ( Ser vl et Request r equest , Ser vl et Response r esponse, Fi l t er Chai n chai n)
dest r oy ( )
: voi d
: voi d
: voi d
PageFi l t er
+
+
+
i ni t ( Fi l t er Conf i g ar g0)
doFi l t er ( Ser vl et Request r equest , Ser vl et Response r esponse, Fi l t er Chai n chai n)
dest r oy ( )
: voi d
: voi d
: voi d
User OnLi neLi st ener
+
+
+
at t r i but eAdded ( Ht t pSessi onBi ndi ngEvent event )
at t r i but eRemoved ( Ht t pSessi onBi ndi ngEvent event )
at t r i but eRepl aced ( Ht t pSessi onBi ndi ngEvent ar g0)
: voi d
: voi d
: voi d
Cl assI nf oSer vl et
- ser i al Ver si onUI D : l ong = 7414385442475211928L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
Cl assI nf oSer vl et
- ser i al Ver si onUI D : l ong = 7414385442475211928L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
- 20 -
4)订单 Servlet
5)前台商品展示 Servlet
6)我的账号 Servlet
7)用户 Servlet
I t emI nf oSer vl et
- ser i al Ver si onUI D : l ong = - 902772759320536003L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
Oper at eI t emSer vl et
- ser i al Ver si onUI D : l ong = - 8133431175766745026L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r eq, Ht t pSer vl et Response r esponse) : voi d
Or der I nf oSer vl et
- ser i al Ver si onUI D : l ong = 8365573319720745033L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
Mor eNewI t emI nf oSer vl et
- ser i al Ver si onUI D : l ong = - 2396568812662629009L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
Mor eHot I t emI nf o
- ser i al Ver si onUI D : l ong = - 4775131575555328406L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
I t emI nf o
- ser i al Ver si onUI D : l ong = 3648427863314143724L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
MyMessageSer vl et
- ser i al Ver si onUI D : l ong = 3652L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
ShowUser Ser vl et
- ser i al Ver si onUI D : l ong = 1510190786273238810L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
Oper at eUser Ser vl at e
- ser i al Ver si onUI D : l ong = - 600164982659595700L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
- 21 -
8)前台首页 Servlet
9)登录 Servlet
Oper at eSyst emUser DB
- ser i al Ver si onUI D : l ong = 2608467999666906939L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
I ndexSer vl et
- ser i al Ver si onUI D : l ong = - 7129343887636051599L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
Logi nSer vl et
- ser i al Ver si onUI D : l ong = 7607946676454464902L
#
-
-
<<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse)
get User I sOnLi ne ( St r i ng st r Name)
er r or Message ( Pr i nt Wr i t er out , St r i ng message)
: voi d
: bool ean
: voi d
Logout Ser vl et
- ser i al Ver si onUI D : l ong = 3943696055846314273L
# <<Over r i de>> execut e ( Ht t pSer vl et Request r equest , Ht t pSer vl et Response r esponse) : voi d
- 22 -
4、运行情况
、前台操作
、首页
商品列表页面(热销商品,最新上架商品,搜索商品,类别的链接商品)
- 23 -
高级搜索页面
、我的账号
(未登录)
- 24 -
注册页面:
(已登录)
账户信息
- 25 -
账户修改
密码修改
- 26 -
历史订单
待审核订单
- 27 -
待审核订单基本信息修改页面
购物车页面
- 28 -
购物车为空时
订单确认
- 29 -
、后台操作
、用户管理
系统用户管理:
列表显示页面:
- 30 -
添加页面:
修改页面
- 31 -
注册用户管理:
- 32 -
、类别管理
类别列表页面
添加大类别页面
- 33 -
添加小类别页面
- 34 -
、商品管理
列表页面
添加页面
- 35 -
修改页面:
- 36 -
、订单管理
订单审核
审核页面
- 37 -
订单信息查询页面
查看详情页面:
- 38 -
5、个人分工及感想:
个人感想:
参考文献
[1]李绪成,Java Web 开发教程,北京,清华大学出版社,2011 年 12 月
[2]张海潘,软件工程导论(第 5 版),北京,清华大学出版社,2009 年 10 月
- 39 -