手机商城销售系统详细设计.docx
《手机商城销售系统详细设计.docx》由会员分享,可在线阅读,更多相关《手机商城销售系统详细设计.docx(35页珍藏版)》请在冰点文库上搜索。
手机商城销售系统详细设计
手机商城销售系统详细设计
2012年10月
1.导言1
1.1目的1
1.2范围1
1.3缩写说明1
1.4参考资料1
2.总体设计2
2.1需求概述2
2.2系统结构2
3.详细设计概述3
4.客户模块的详细设计3
4.1登录注册管理模块的详细设计3
4.1.1登录注册多层架构3
4.1.2视图层3
4.1.3控制层4
4.1.4业务逻辑层4
4.1.5数据访问层4
4.2账号管理模块的详细设计5
4.2.1账号管理多层架构5
4.2.2视图层5
4.2.3控制层5
4.2.4业务逻辑层6
4.2.5数据访问层6
4.3购物车模块的详细设计6
4.3.1购物车多层架构6
4.3.2视图层7
4.3.3控制层7
4.3.4业务逻辑层7
4.3.5数据访问层8
4.4订单管理模块的详细设计8
4.4.1订单信息多层架构8
4.4.2视图层8
4.4.3控制层9
4.4.4业务逻辑层9
4.4.5数据访问层9
5后台管理模块10
5.1手机信息管理模块的详细设计10
5.1.1手机信息模块的多层架构10
5.1.2视图层10
5.1.3控制层11
5.1.4业务逻辑层11
5.1.5数据访问层11
5.2订单信息管理模块的详细设计12
5.2.1订单管理的多层框架12
5.2.2视图层12
5.2.3控制层12
5.2.4业务逻辑层13
5.2.5数据访问层13
5.3会员管理模块的详细设计13
5.3.1会员管理的多层架构13
5.3.2视图层14
5.3.3控制层14
5.3.4业务逻辑层14
5.3.5数据访问层15
5.4公告信息管理模块的详细设计15
5.4.1公告信息的多层架构15
5.4.2视图层15
5.4.3控制层16
5.4.4业务逻辑层16
5.4.5数据访问层17
6.系统配置文件17
6.1Web.xml配置文件17
6.2struts.xml配置文件19
6.2.1struts1.xml前台配置文件19
6.2.1struts2.xml后台配置文件20
6.3applicationContext-*.xml配置文件21
6.3.1applicationContext-bean.xml配置文件21
6.3.2applicationContext-db.xml配置文件22
6.3.3applicationContext-tr.xml配置文件23
6.4jdbc.properties配置文件23
6.5struts.properties配置文件24
1.导言
1.1目的
网上手机销售系统的详细设计是设计的第三个阶段,这个阶段的主要任务是在网上手机销售系统的概要设计基础上,对概要设计中产生的功能模块进行过程描述,设计功能模块的内部细节,包括算法和详细数据结构,为编写源代码提供必要的说明。
概要设计解决了系统总体结构设计的问题,包括整个系统的结构、模块划分、模块功能和模块间的联系等。
详细设计则要解决如何实现各个模块的内部功能,即模块设计。
具体的说,模块设计就是要为网上手机销售系统设计详细的算法。
但这并不等同于系统实现阶段用具体的语言编码,它只是对实现细节作精确的描述,这样编码阶段就可以将详细设计中对功能实现的描述,直接翻译、转化为程序设计语言。
1.2范围
该文档描述了系统的各个模块的功能,实现各个模块需要的类、接口和方法等。
1.3缩写说明
•SSHJPA框架即Struct2+Spring+HibernatJPA组合
•Mysql:
数据库管理软件
•Navicat:
数据库图形用户界面
•Windows7/XP:
运行环境(其他系统未测试)
•Netbeans:
开发工具
1.4参考资料
[1]《javaEE企业级架构开发技术与案例教程》杨树林、胡洁萍编著机械工业出版社
[2]《软件工程案例教程-软件项目开发实践》韩万江姜立新等编著第二版机械工业出版社
2.总体设计
2.1需求概述
按照需求分析文档中的规格要求,使用手机品牌,手机型号等发布商品信息,使得信息传递准确、流畅。
同时,系统最大限度地实现易维护性,易操作性,运行稳定,安全可靠。
2.2系统结构
系统由2大模块,8小模块组成:
结构如下
功能模块1:
注册登录
功能模块2:
个人信息管理
子系统1:
客户前台管理
功能模块3:
购物车
功能模块4:
订单管理
网上购物系统总体结构图
功能模块5:
商品信息管理
功能模块6:
公告信息管理
子系统2:
后台管理
功能模块7:
订单信息管理
功能模块8:
会员信息管理
3.详细设计概述
本系统采用了基于SSHJPA框架体系结构的设计,将控制层中访问数据库的部分放在业务逻辑层中实现。
因此,设计了视图层、控制层、业务逻辑层、数据访问层(模型层)四层结构。
采用面向对象的java语言,在整个的开发过程中,尽可能采用复用的原则,例如采用统一命名规则,使struts.xml配置文件清晰,较少代码的书写。
每个实体类对应一个数据访问层接口。
利用MySQL数据库实现数据的存储,Struts2实现控制层的Action的控制操作,HibernatJPA实现数据层的访问实体类的控制,Spring将struts2和HibernatJPA集成到一起。
降低代码的耦合度。
4.客户模块的详细设计
4.1登录注册管理模块的详细设计
4.1.1登录注册多层架构
用户登录注册管理模块主要实现了用户登录和注册以及相关验证功能,系统架构可分为四层结构,即视图层、控制层、业务逻辑层和数据访问层,具体如图所示。
视图层
控制层
业务逻辑层
数据访问层
实体类
user_login.jsp
user_register.jsp
Index.jsp
Login.java(用于验证)
Login-validation.xml
UserAction.java
Register.java(用于验证)
Register-validation.xml
IUserService.java
IUserDao.java
Userinfor
4.1.2视图层
根据上述功能介绍,视图层设计如下表所示。
界面
Jsp
功能描述
登录界面
user_login.jsp
登录的主页面
注册页面
user_register.jsp
注册的主页面
主页面
index.jsp
主页面
4.1.3控制层
登录注册管理模块的控制层主要是设计用户的登录注册事件(Action)的流程控制。
下表中列出了每个Action的入口,业务逻辑层的接口以及出口(即Action将请求转发到的目的组件)。
事件
入口
页面Action
控制层
出口
登录
user_login.jsp
user_Login
UserAction.Login
UserAction.Register
index.jsp
注册
user_register.jsp
user_Register
meb_login.jsp
4.1.4业务逻辑层
登录注册管理模块的业务逻辑层的实现访问数据访问层的接口,业务逻辑层组件如下:
业务逻辑接口
业务逻辑实现(方法)
数据访问层接口
IUserService.java
UserService.java
findNamePwd(Stringname,Stringpwd)
IUserDao.java
addMebInfo(Userinforobj)
4.1.5数据访问层
登录注册管理模块的数据访问层的实现负责完成用户信息的写入和读取的操作,数据访问层组件如下:
数据访问层接口
数据访问层实现(方法)
模型层(实体类)
IUserDao.java
UserDao.java
findOne((Stringname,Stringpwd)
Userinfor.java
super.insert(Userinforobj)
4.2账号管理模块的详细设计
4.2.1账号管理多层架构
账号管理模块主要实现了用户查看个人信息、修改密码、更新个人信息功能。
系统架构可分为四层结构,即视图层、控制层、业务逻辑层和数据访问层,具体如图所示。
视图层
控制层
业务逻辑层
数据访问层
实体类
meb_info.jsp
meb_key.jsp
meb_update.jsp
MebAction.java
IUserService.java
IUserDao.java
Userinfor
4.2.2视图层
根据上述功能介绍,视图层设计如下表所示。
界面
Jsp
功能描述
个人资料管理页面
meb_info.jsp
查看个人信息
密码修改页面
meb_key.jsp
修改密码
个人信息管理页面
meb_update.jsp
修改个人信息
4.2.3控制层
账号管理模块的控制层主要是设计用户查看个人信息、修改密码、更新个人信息事件(Action)的流程控制。
下表中列出了每个Action的入口,业务逻辑层的接口以及出口(即Action将请求转发到的目的组件)。
事件
入口
页面Action
控制层
出口
个人资料管理页面
meb_info.jsp
meb_MebInfo
MebAction.MebInfo
MebAction.MebUpPw
MebAction.MebUpAll
meb_info.jsp
密码修改页面
meb_info.jsp
meb_MebUpPw
meb_key.jsp
个人信息更新页面
meb_info.jsp
meb_MebUpAll
meb_update.jsp
4.2.4业务逻辑层
帐号管理模块的业务逻辑层的实现负责访问数据访问层的接口,业务逻辑层组件如下:
业务逻辑接口
业务逻辑实现(方法)
数据访问层接口
IUserService.java
UserService.java
findAll()
IUserDao.java
editMebInfoKey(Stringpwd)
editMebInfoAll(Userinforobj)
4.2.5数据访问层
帐号管理模块的的数据访问层负责完成用户信息的数据库操作的业务逻辑模型,数据访问层组件如下:
数据访问层接口
数据访问层实现(方法)
模型层(实体类)
IUserDao.java
UserDao.java
super.findAll()
Userinfor.java
super.update(Stringpwd)
super.update(Userinforobj)
4.3购物车模块的详细设计
4.3.1购物车多层架构
购物车模块主要实现了用户查看购购物车商品信息、管理购物车内商品的功能,系统架构可分为四层结构,即视图层、控制层、业务逻辑层和数据访问层,具体如图所示。
视图层
控制层
业务逻辑层
数据访问层
模型层(实体类)
bbus_info.jsp
bbus_delete.jsp
bbus_orderpay.jsp
BBusAction.java
IBBusService.java
IBBusDao.java
Bbus.java
4.3.2视图层
根据上述功能介绍,视图层设计如下表所示。
界面
Jsp
功能描述
购物车商品
bbus_info.jsp
查看购物车内商品
删除商品
bbus_delete.jsp
删除商品信息
确认付款
bbus_orderpay.jsp
确认付款
4.3.3控制层
购物车模块的控制层主要是设计查看购物车商品、删除购物车内商品、确认付款事件(Action)的流程控制。
下表中列出了每个Action的入口,业务逻辑层的接口以及出口(即Action将请求转发到的目的组件)。
事件
入口
页面Action
控制层
出口
查看购物车
bbus_info.jsp
bbus_BusInfo
BBusAction.BusInfo
BBusAction.BusDelete
BBusAction.BusOrderOK
bbus_info.jsp
删除商品
bbus_info.jsp
bbus_BusDelete
bbus_delete.jsp
确认付款
bbus_info.jsp
bbus_BusOrderOK
bbus_orderpay.jsp
4.3.4业务逻辑层
购物车模块的业务逻辑层的实现负责访问数据访问层的接口,业务逻辑层组件如下:
业务逻辑接口
业务逻辑实现(方法)
数据访问层接口
IBBusService.java
BBusService.java
findAll()
IBBusDao.java
deleteBusInfo(intid)
addOrderInfo(Bbusobj)
4.3.5数据访问层
购物车模块的数据访问层的实现负责完成用户信息的数据库实体类的操作,数据访问层组件如下:
数据访问层接口
数据访问层实现(方法)
模型层(实体类)
IBBusDao.java
BBusDao.java
super.findAll()
Bbus.java
super.delete(intid)
super.insert(Bbusobj)
4.4订单管理模块的详细设计
4.4.1订单信息多层架构
订单管理模块主要实现了用户查看订单管理、订单详情,订单删除功能,系统架构分为四层结构,即视图层、控制层、业务逻辑层和数据访问层,如图所示。
视图层
控制层
业务逻辑层
数据访问层
模型层(实体类)
order_info.jsp
order_detail.jsp
order_cancel.jsp
MebOrderAction.java
IOrderService.java
IOrderDao.java
Order.java
4.4.2视图层
根据上述功能介绍,视图层设计如下表所示。
界面
Jsp
功能描述
订单信息管理
order_info.jsp
订单信息管理
订单详情
order_detail.jsp
订单详情
订单删除
order_delete.jsp
删除订单
4.4.3控制层
订单管理模块的控制层主要是设计用户的订单信息管理、订单详情管理、确认收货管理事件(Action)的流程控制。
下表中列出了每个Action的入口,业务逻辑层的接口以及出口(即Action将请求转发到的目的组件)。
事件
入口
页面Action
控制层
出口
订单信息
order_info.jsp
order_OrderInfo
MebOrderAction.OrderInfo
MebOrderAction.OrderDetail
MebOrderAction.OrderDelete
order_info.jsp
订单详情
order_info.jsp
order_OrderDetail
order_detail.jsp
删除订单
order_info.jsp
order_OrderDelete
order_delete.jsp
4.4.4业务逻辑层
订单管理模块的业务逻辑层的实现负责访问数据访问层的接口,
业务逻辑层组件如下:
业务逻辑接口
业务逻辑实现(方法)
数据访问层接口
IOrderService.java
OrderService.java
findAll()
IOrderDao.java
findAll()
deleteOrderInfo(intid)
4.4.5数据访问层
订单管理模块的数据访问层的实现负责完成用户信息的数据库实体类的操作,数据访问层组件如下:
数据访问层接口
数据访问层实现(方法)
模型层(实体类)
IOrderDao.java
OrderDao.java
super.findAll()
Order.java
super.findAll()
super.delete(intid)
5后台管理模块
5.1手机信息管理模块的详细设计
5.1.1手机信息模块的多层架构
手机信息管理模块主要实现了管理员对手机上下架和手机信息更新的管理,系统架构可分为四层结构,即视图层、控制层、业务逻辑层和数据访问层,具体如图所示。
视图层
控制层
业务逻辑层
数据访问层
实体类
goods_info.jsp
goods_add.jsp
goods_del.jsp
goods_update
GoodsAction.java
IGoodsService.java
IGoodsDao.java
Goods.java
5.1.2视图层
根据上述功能介绍,视图层设计如下表所示。
界面
Jsp
功能描述
商品显示界面
goods_info.jsp
显示所有商品信息
商品上架界面
goods_add.jsp
商品上架界面
商品下架界面
goods_delele.jsp
商品下架界面
商品更新
Goods_update
更新商品信息
5.1.3控制层
手机信息管理模块的控制层主要是设计管理员对手机上架和下架事件(Action)的流程控制。
下表中列出了每个Action的入口,业务逻辑层的接口以及出口(即Action将请求转发到的目的组件)。
事件
入口
页面Action
控制层
出口
显示商品
goods_info.jsp
goods_GoodsInfo
GoodsAction.GoodsInfo
GoodsAction.GoodsAdd
GoodsAction.GoodsDelete
GoodsAction.GoodsUpdate
goods_info.jsp
商品上架
goods_add.jsp
goods_GoodsAdd
goods_info.jsp
商品下架
goods_info.jsp
good_GoodsDelete
goods_delele.jsp
商品更新
goods_info.jsp
goods_GoodsUpdate
good_update.jsp
5.1.4业务逻辑层
手机信息管理模块的业务逻辑层的实现负责访问数据访问层的接口,业务逻辑层组件如下:
业务逻辑接口
业务逻辑实现(方法)
数据访问层接口
IGoodsService.java
GoodsService.java
findAll()
IGoodsDao.java
addGoodsInfo(Goodsobj)
deleteGoodsInfo(Stringph)
editGoodsInfo(stringph)
5.1.5数据访问层
手机信息管理管理的数据访问层负责完成用户信息的数据库操作的业务逻辑模型,数据访问层组件如下:
数据访问层接口
数据访问层实现(方法)
模型层(实体类)
IGoodsDao.java
GoodsDao.java
super.findAll()
Goods.java
super.insert(Goodsobj)
super.delete(Stringph)
super.update(Stringph)
5.2订单信息管理模块的详细设计
5.2.1订单管理的多层框架
订单信息管理主要实现了管理员查看订单的状态信息,系统架构可分为四层结构,即视图层、控制层、业务逻辑层和数据访问层,具体如图所示。
视图层
控制层
业务逻辑层
数据访问层
实体类
order_info.jsp
order_update.jsp
order_delete.jsp
AdminOrderAction.java
IOrderService.java
IOrderDao.java
Orderlist.java
5.2.2视图层
根据上述功能介绍,视图层设计如下表所示。
界面
Jsp
功能描述
订单信息显示
order_info.jsp
订单信息显示
订单更新
order_update.jsp
更新订单
订单删除
order_delete.jsp
删除订单
5.2.3控制层
订单信息管理模块的控制层主要是设计管理员查看、更新、删除订单状态信息事件(Action)的流程控制。
下表中列出了每个Action的入口,业务逻辑层的接口以及出口(即Action将请求转发到的目的组件)。
事件
入口
页面Action
控制层
出口
订单信息
order_info.jsp
order_OrderInfo
OrderAction.OrderInfo
OrderAction.OrderAdd
OrderAction.OrderDelete
goods_info.jsp
订单更新
order_info.jsp
order_OrderAdd
order_update.jsp
订单删除
order_info.jsp
order_OrderDelete
order_delele.jsp
5.2.4业务逻辑层
订单信息管理模块的业务逻辑层的实现负责访问数据访问层的接口,业务逻辑层组件如下:
业务逻辑接口
业务逻辑实现(方法)
数据访问层接口
IOrderService.java
OrderService.java
findAll()
IOrderDao.java
editOrderInfo(intid)
deleteOrderInfo(intid)
5.2.5数据访问层
订单信息管理模块的数据访问层负责完成用户信息的数据库操作的业务逻辑模型,数据访问层组件如下:
数据访问层接口
数据访问层实现(方法)
模型层(实体类)
IOrderDao.java
OrderDao.java
super.findAll()
Order.java
super.update(intid)
super.delete(intid)
5.3会员管理模块的详细设计
5.3.1会员管理的多层架构
会员管理模块主要实现了管理员管理会员信息的功能,系统架构可分为四层结构,即视图层、控制层、业务逻辑层和数据访问层,具体如图所示。
视图层
控制层
业务