JWAP系统详细设计说明书.docx

上传人:b****8 文档编号:23867272 上传时间:2023-05-21 格式:DOCX 页数:23 大小:122.72KB
下载 相关 举报
JWAP系统详细设计说明书.docx_第1页
第1页 / 共23页
JWAP系统详细设计说明书.docx_第2页
第2页 / 共23页
JWAP系统详细设计说明书.docx_第3页
第3页 / 共23页
JWAP系统详细设计说明书.docx_第4页
第4页 / 共23页
JWAP系统详细设计说明书.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

JWAP系统详细设计说明书.docx

《JWAP系统详细设计说明书.docx》由会员分享,可在线阅读,更多相关《JWAP系统详细设计说明书.docx(23页珍藏版)》请在冰豆网上搜索。

JWAP系统详细设计说明书.docx

JWAP系统详细设计说明书

JWAP系统说明书

 

编写人

Sevenstar

编写日期

2009.12.17

1.导言

1.1目的

该文档的目的是描述《网上购物系统》项目的详细设计,其主要内容包括:

·系统功能简介;

·系统底层数据库的ER图;

·网上购物系统的流程图;

·系统详细设计简述;

·各个模块的三层划分

·DAO层设计

·biz层设计

·过滤器的设计

·监听器的设计

·系统功能流程图;

1.2范围

该文档定义了系统的各个模块和模块接口,以及页面跳转的过程但未确定单元的具体实现,这部分内容将在程序实现中确定。

1.3缩写说明

JSP:

JavaServerPage(Java服务器页面)的缩写,一个脚本化的语言。

1.4术语定义

JavaBean:

JavaBean是一种JAVA语言写成的可重用组件。

Database:

数据库,按照数据结构来组织、存储和管理数据的仓库。

2.1系统设计概述

根据《网上购物系统》的概要设计,本系统按照功能分解,可以分为客户端子系统和管理端子系统。

根据页面流的设计,管理端系统分为登陆管理、用户管理、产品管理、类别管理、订单管理5个模块,客户端系统分为自服务、购物车管理2个模块。

它们的关系如图C-1所示,以下将对各个部分分别进行详细设计。

图C-1模块设计

2.2网上购物系统的流程图如下;

3.详细设计概述

本系统采用JSP+JavaBean+Database的3层架构。

JSP负责表现,JavaBean负责业务逻辑,Database负责持久保持数据。

三层架构(3-tierapplication)通常意义上的三层架构就是将整个业务应用划分为:

表现层(VIEW)、业务逻辑层(BIZ)、数据访问层(DAO)。

区分层次的目的即为了“高内聚,低耦合”的思想。

  1、表现层(VIEW):

通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。

  2、业务逻辑层(BIZ):

针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。

  3、数据访问层(DAO):

该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等。

4.登陆管理模块详细设计

4.1表现层(VIEW)

4.1.1管理员登陆页面

输入(input)

WebRoot/jsp/user/index3.jsp

导向(Forword)

登陆成功WebRoot/jsp/adminis/index2.jsp;登陆失败的话留在原页面

输出

ResultData

SessionData

session.setAttribute("admin",admin);,将管理员存储在Session中.

功能说明

进行管理员登陆

4.1.2用户登录页面

输入(input)

WebRoot/jsp/user/index3.jsp

导向(Forword)

登陆成功WebRoot/jsp/index/index1.jsp;登陆失败的话留在原页面

输出

ResultData

SessionData

session.setAttribute("user",user);,将用户存储在Session中.

功能说明

进行用户登陆

4.2业务逻辑层(biz)

4.2.1管理员登陆页面

JavaBean

com.taren.jwap.biz.impl.AdminServiceImpl.java

方法名称

publicAdminlogin(StringadminName,Stringpassword)

方法说明

判断登录的用户是否是管理员

输入参数

用户名adminName类型(String)

密码password类型(String)

输出参数

Admin

事务管理

处理流程

根据用户名和密码查询是否存在这个管理员

主要算法说明

引用的其他Class

出错处理

UserNotFoundException,PasswordNotCorrectException

4.2.2用户登陆页面

JavaBean

com.taren.jwap.biz.impl.UserServiceImpl.java

方法名称

publicUserlogin(StringuserName,Stringpassword)

方法说明

判断登录的用户是否存在

输入参数

用户名userName类型(string)

密码password类型(string)

输出参数

Admin

事务管理

处理流程

根据用户名和密码查询是否存在这个用户

主要算法说明

引用的其他Class

出错处理

UserNotFoundException,PasswordNotCorrectException

4.3数据访问层(DAO)

4.3.1管理员登陆页面

方法

publicAdminquery(StringadminName,Stringpassword)

输入参数

用户名adminName

密码password

输出参数

管理员Admin

描述

根据传入的用户名和密码返回是否是管理员Admin的对象

SQL脚本

算法说明

4.3.2用户登陆页面

方法

publicUserquery(Stringusername,Stringpassword)

输入参数

用户名username

密码password

输出参数

用户User

描述

根据传入的用户名和密码返回是否是用户User的值

SQL脚本

算法说明

5.购物车管理模块详细设计

5.1表现层(view)

5.1.1添加

输入(input)

可以把商品加入到购物车的多个jsp页面

导向(Forword)

添加后回到购物车页面WebRoot/jsp/shoopcar/index4.jsp

输出

ResultData

SessionData

功能说明

进行购物车条目添加

备注:

购物车条目包括商品、商品数量。

商品是一个实体类,包括许多属性。

购物车抽取几个属性显示。

5.1.2删除

输入(input)

WebRoot/jsp/shoopcar/index4.jsp

导向(Forword)

删除后回到购物车页面WebRoot/jsp/shoopcar/index4.jsp

输出

ResultData

SessionData

功能说明

进行购物车条目删除

5.1.3修改

输入(input)

WebRoot/jsp/shoopcar/index4.jsp

导向(Forword)

修改后回到购物车页面WebRoot/jsp/shoopcar/index4.jsp

输出

ResultData

SessionData

功能说明

进行购物车条目修改(修改商品数量)

5.1.4下单

输入(input)

WebRoot/jsp/shoopcar/index4.jsp

导向(Forword)

如果用户已登录,则跳转到WebRoot/jsp/shoopcar/order_info.jsp

否则跳转到登录界面WebRoot/jsp/user/index3.jsp

输出

ResultData

SessionData

功能说明

确认所要购买的商品然后提交购买信息

5.2业务逻辑层(BIZ)

5.2.1添加

JavaBean

com.tarena.jwap.biz.impl.ShopCartServiceImpl.java

方法名称

publicvoidaddOrderLine(OrderLineorderline)

方法说明

进行购物车条目添加

输入参数

购物车条目orderline(OrderLine类型)

输出参数

事务管理

处理流程

将购物车条条目添加到购物车中

主要算法说明

引用的其他Class

出错处理

5.2.2删除

5.2.2.1删除所有

JavaBean

com.tarena.jwap.biz.impl.ShopCartServiceImpl.java

方法名称

publicvoiddeleteAllOrderLine()

方法说明

进行购物车条目删除

输入参数

输出参数

事务管理

处理流程

将购物车所有条目从购物车中清除

主要算法说明

引用的其他Class

出错处理

5.2.2.2删除指定的订单项

JavaBean

com.tarena.jwap.biz.impl.ShopCartServiceImpl.java

方法名称

publicvoiddeleteOrderLineById(LongproductId)

方法说明

进行购物车条目删除

输入参数

商品id(Long类型)

输出参数

事务管理

处理流程

将购物车条条目从购物车中删除

主要算法说明

引用的其他Class

出错处理

5.2.3修改

5.2.3.1修改

JavaBean

com.tarena.jwap.biz.impl.ShopCartServiceImpl.java

方法名称

publicvoidsetCount(LongproductId,intcount)

方法说明

修改购物车条目中商品的数量

输入参数

商品数量count(int类型)

商品id

输出参数

事务管理

处理流程

将购物车条条目中商品的数量赋新值

主要算法说明

引用的其他Class

出错处理

5.2.3.2修改

JavaBean

com.tarena.jwap.ShopCartServiceImpl.java

方法名称

publicdoublesetSumPrice(LongproductId,intcount)

方法说明

修改购物车条目中商品钱数的小计

输入参数

商品数量count(int类型)

商品id

输出参数

Double购买此商品数为count时的总价格

事务管理

处理流程

将购物车条条目中商品的钱数合计赋新值

主要算法说明

引用的其他Class

出错处理

5.2.4下单

JavaBean

com.tarena.jwap.ShopCartServiceImpl.java

方法名称

publicintbuy(Orderorder)

方法说明

下商品订单

输入参数

order(Order类型)

输出参数

订单号(int类型)

事务管理

处理流程

将购物车中商品添加到数据库

主要算法说明

引用的其他Class

出错处理

5.3数据访问层(DAO)

5.3.1添加

5.3.2删除

5.3.3修改

5.3.4下单

方法

OrderDaoImpl类中的publicintadd(Orderorder)

输入参数

订单类

输出参数

订单号

描述

根据用户将订单类和订单项添加到数据库中使得用户和订单进行关联

SQL脚本

"insertintot_orderordervalues(null,?

?

?

?

)";

"insertintosalesitemvalues(null,?

?

?

?

)";

算法说明

6.订单管理模块详细设计

6.1表现层(view)

6.1.1订单明细

输入(input)

WebRoot/jsp/order/index5.jsp

导向(Forword)

点击“订单明细”链接进入WebRoot//jsp/order/pro_order.jsp页面

输出

ResultData

SessionData

功能说明

查看订单的详细信息

6.1.2订单处理

输入(input)

WebRoot//jsp/order/pro_order.jsp

导向(Forword)

点击“付款方式”链接进入WebRoot/admin/OrderModify.jsp页面

输出

ResultData

SessionData

功能说明

修改订单的状态

6.2业务逻辑层(BIZ)

6.2.1订单明细

JavaBean

com.tarena.jwap.biz.impl.OrderServiceImpl.java

方法名称

publicOrderfinfOrderById(Longorderid)

方法说明

显示订单明细

输入参数

订单号(Long类型)

输出参数

订单类Order

事务管理

处理流程

根据订单号列出订单的详细信息

主要算法说明

引用的其他Class

出错处理

6.2.2订单处理

6.2.2.1订单处理

JavaBean

com.tarena.jwap.biz.impl.OrderServiceImpl.java

方法名称

publicvoidupdateStatus(Orderorder)

方法说明

修改订单的状态

输入参数

订单类order(Order类型)

输出参数

事务管理

处理流程

输入订单类修改订单的状态

主要算法说明

引用的其他Class

出错处理

6.2.2.2订单处理

JavaBean

com.tarena.jwap.biz.impl.OrderServiceImpl.java

方法名称

publicvoidupdatePayWay(Orderorder)

方法说明

修改订单的付款方式

输入参数

订单类order(Order类型)

输出参数

事务管理

处理流程

主要算法说明

引用的其他Class

出错处理

6.3数据访问层(DAO)

6.3.1订单明细

方法

publicOrderquery(Longid)

输入参数

订单号id

输出参数

订单类SalesOrder

描述

根据订单id查找订单类的详细信息

SQL脚本

算法说明

6.3.2订单处理

方法

publicvoidupdateStatus(Orderorder)

输入参数

订单类order

输出参数

描述

输入类修改订单的状态

SQL脚本

算法说明

7.商品管理模块详细设计

7.1表现层(view)

7.1.1添加类别

输入(input)

WebRoot/jsp/adminis/pro_manage.jsp

导向(Forword)

点击“添加类别”链接进入WebRoot/jsp/adminis/add_cat.jsp页面

输出

ResultData

SessionData

功能说明

增加商城的产品种类

7.1.2修改类别

输入(input)

WebRoot/jsp/adminis/pro_manage.jsp

导向(Forword)

点击“修改”链接进入WebRoot/jsp/adminis/modify_cat.jsp页面

输出

ResultData

SessionData

功能说明

对选定的类别进行修改

7.1.3删除类别

输入(input)

WebRoot/jsp/adminis/pro_manage.jsp

导向(Forword)

点击“删除”链接进入WebRoot/jsp/adminis/pro_manage.jsp页面

输出

ResultData

SessionData

功能说明

把选定的类别从数据库中删除

7.1.4添加商品

输入(input)

WebRoot/jsp/adminis/info.jsp

导向(Forword)

点击“添加产品”链接进入WebRootjsp/adminis/add_pro.jsp页面

输出

ResultData

SessionData

功能说明

增加商城中的产品

7.1.5修改商品信息

输入(input)

WebRoot/jsp/adminis/info.jsp

导向(Forword)

点击“修改”链接进入WebRoot//jsp/adminis/modify_pro.jsp页面

输出

ResultData

SessionData

功能说明

修改商品信息

7.1.6删除商品

输入(input)

WebRoot/jsp/adminis/pro_manage.jsp

导向(Forword)

点击“删除”链接进入WebRoot/jsp/adminis/pro_manage.jsp页面

输出

ResultData

SessionData

功能说明

删除商品从数据库中

7.1.7查询商品

输入(input)

WebRoot/jsp/adminis/pro_manage.jsp

导向(Forword)

点击“查询”链接进入WebRoot/jsp/adminis/pro_manage.jsp页面

输出

ResultData

SessionData

功能说明

查询商品

7.2业务逻辑层(BIZ)

7.2.1添加类别

JavaBean

com.tarena.jwap.biz.impl.ChildCategoryServiceImpl.java

方法名称

PublicvoidaddChildCategory(ChildCategorychildcategory)

方法说明

输入参数

商品的最底层类别(ChildCategry类型)

输出参数

事务管理

处理流程

主要算法说明

引用的其他Class

出错处理

7.2.2修改类别

JavaBean

com.tarena.jwap.biz.impl.ChildCategoryServiceImpl.java

方法名称

PublicvoidupdateChildCategory(Longchildcategoryid)

方法说明

对产品的类别进行修改

输入参数

商品的最底层类别id(Long类型)

输出参数

事务管理

处理流程

主要算法说明

7.2.3删除类别

JavaBean

com.tarena.jwap.biz.impl.ChildCategoryServiceImpl.java

方法名称

PublicvoiddeleteChildCategory(Longchildcategoryid)

方法说明

对产品的类别删除

输入参数

商品的最底层类别id(Long类型)

输出参数

事务管理

处理流程

主要算法说明

7.2.4增加商品

JavaBean

com.tarena.jwap.biz.impl.ProductServiceImpl.java

方法名称

PublicvoidaddProduct(Product)

方法说明

增加商品

输入参数

商品类(Long类型)

输出参数

事务管理

处理流程

主要算法说明

7.2.5修改商品

JavaBean

com.tarena.jwap.biz.impl.ProductServiceImpl.java

方法名称

PublicvoidupdateProduct(Longproductid)

方法说明

对产品进行修改

输入参数

商品id(Long类型)

输出参数

事务管理

处理流程

主要算法说明

7.2.6删除商品

JavaBean

com.tarena.jwap.biz.impl.ProductServiceImpl.java

方法名称

PublicvoiddeleteProductById(Longproductid)

方法说明

对产品进行删除操作

输入参数

商品的id(Long类型)

输出参数

事务管理

处理流程

主要算法说明

7.2.7查询商品

JavaBean

com.tarena.jwap.biz.impl.ProductServiceImpl.java

方法名称

PublicvoidfindProductByCategoryId(Longcategoryid)

方法说明

查询商品

输入参数

商品种类的categoryid(Long类型)

输出参数

事务管理

处理流程

主要算法说明

8过滤器的设计

此过滤器实现了对字符编码方式的过滤

可以有效的解决数据库中出现乱码的问题

9监听器的设计

此监听器主要负责当用户访问购物网站时即开启会话时要为访问者创建购物车也就是把购物车保存到会话中

9Dao层的设计

通过这个工厂获取对应的DAO,然后使用DAO进行数据库操作

10业务层的设计

通过这个工厂获取对应的业务方法,然后和表现层进行交互

数据库设计的E-R图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1