《gwap-design》由会员分享,可在线阅读,更多相关《gwap-design(26页珍藏版)》请在金锄头文库上搜索。
1、Tarena IT 集团 GWAP V1.1 项目系统分析设计项目系统分析设计 文档编号文档编号 Version 1.0.0 2008-10-22 达内达内 IT 集团集团 Tarena IT 集团 履历 版本 标题 内容 作者 时间 1.0.0 创建 创建 马东锋 10/22/2008 1.0.1 修订 修订 马东锋 01/04/2008 1.0.1 修订 评审后修订 马东锋 Tarena IT 集团 1 引言引言 1.1 编写目的编写目的 明确业务背景、业务范围、基本业务逻辑和业务框架,期望读者包括:项目发起人、最 终用户、项目投资方、项目管理团队、项目执行团队,以及其他项目干系人。 1.
2、2 项目背景项目背景 通用 WEB 应用平台(General WEB application platform 简称 GWAP)GWAP 包括:在线 销售系统、商铺管理系统、清算结算系统、后台管理系统。GWAP VER1.0 是一期项目,主要 面向电子商务领域,为公司在 B2B、B2C、C2C 领域的业务开展鉴定基础。 GWAP VER1.1 是在 V1.0 的基础上的二次开发,主要对系统架构进行升级(使用 STRUTS1.2+HIBERNATE3) ,对日志管理进行升级。 1.3 定义定义 GWAP:通用 WEB 应用平台(General WEB application platform)
3、B2B:Business to Business 商家对商家,电子商务的一种业务形式 B2C:Business to Consumer 商家对顾客,电子商务的一种业务形式 C2C:Consumer to Consumer 顾客对顾客,电子商务的一种业务形式 Tarena IT 集团 2 总体设计总体设计 2.1 系统架构系统架构 2.2 功能概述功能概述 Tarena IT 集团 GWAP V2 通用WEB应用 平台用户管理购物车管理订单管理产品展示用户删除用户注册用户信息修改取消一个商品数量修改清空购物车添加商品查询明细提交订单删除订单产品明细产品列表用户登陆用户查询管理模块Tarena I
4、T 集团 说明:说明: ? 在线销售系统:在本系统中主要阐述用户管理、商品管理、购物车管理、订单管理、产 品展示四个模块。 ? 购物车管理:实现添加商品、取消一个商品、数量修改、清空购物车功能。 ? 订单管理:实现提交订单、删除订单、查询订单功能。 ? 产品展示:实现产品列表、产品明细功能。 ? 用户管理:登陆/登出、用户注册、信息修改,管理功能(用户删除、用户查询) 。 2.3 系统用例系统用例 说明:说明: ? 用户管理、商品管理、购物车管理、订单管理、产品展示五个模块构成了在线销售系统 ? User 是指系统用户,包括注册用户和匿名用户两种,匿名用户只可以浏览商品,匿名 用户通过用户管理
5、模块注册后就可以使用购物车和下订单。 Tarena IT 集团 2.4 部署设计部署设计 数据库服务器WEB服务器防火墙说明:说明: ? Web 服务器:Tomcat6 服务器部属在这台服务器上。 ? 数据库服务器:安装运行数据应用程序,存放数据库文件。 3 界面设计界面设计 参考“GWAP-DEMO” 。 Tarena IT 集团 4 模块设计模块设计 4.1 主控制器主控制器 4.1.1控制器类设计 控制器类设计 4.1.2控制器流程设计 控制器流程设计 ? 用户管理 UserMappingDispatchAction 流程设计 ? Login Method(用户登录) Tarena IT
6、 集团 ? IsValid Method(判断是否注册用户) ? Modify Method(修改用户信息) Tarena IT 集团 ? Delete Method(用户删除) ? Query Method(用户信息查询) ? Logout Method(用户退出) Tarena IT 集团 ? 购物车管理 ShopCartMappingDispatchAction 流程设计 ? Add2Cart Method(添加商品到购物车) ? DeleteById Method(从购物车中删除商品) Tarena IT 集团 ? ClearShopCart Method(购物车清空商品) ? Mod
7、ifyNumber Method(修改购物车中订单数量) Tarena IT 集团 ? Checkout Method(提交一个订单) ? 商品管理 ProductDispatchAction 流程设计 ? ShowDetail Method(查看商品明细) ? 订单管理 OrderDispatchAction 流程设计 ? ListUserOrders Method(查看订单列表) Tarena IT 集团 ? DeleteOrder Method(删除对应订单) ? OrderDetail Method(查看订单明细) Tarena IT 集团 4.2 过滤器设计过滤器设计 4.2.1 编
8、码过滤器类设计 编码过滤器类设计 Tarena IT 集团 4.2.2 登陆安全过滤器类设计 登陆安全过滤器类设计 4.3 监听器设计监听器设计 “CartSessionListener”启动时把购物车信息初始化到内存中,提高系统性能。 “ProductContextListener”启动时把商品信息初始化到内存中,提高系统性能。 Tarena IT 集团 4.4 DAO 层设计DAO 层设计 4.4.1 DAO 类设计DAO 类设计 通过这个工厂获取对应的 DAO,然后使用 DAO 进行数据库操作。 4.4.2 POJO 类设计POJO 类设计 Tarena IT 集团 省略了部分 POJO
9、 类图。 5 配置文件设计配置文件设计 5.1 web.xml 配置文件设计配置文件设计 位置: $WebWEB-INFweb.xml 内容和说明: .tarena.gwap.web.listener.ProductContextListener .tarena.gwap.web.listener.CartSessionListener action org.apache.struts.action.ActionServletconfig /WEB-INF/struts-config.xml debug 3 Tarena IT 集团 detail 3 0 encodingFilter .tar
10、ena.gwap.web.filter.EncodingFilter encoding UTF-8 loginFilter .tarena.gwap.web.filter.LoginFilter encodingFilter *.do encodingFilter *.jsp loginFilter /user/add2cart.do loginFilter /user/tomodify.do loginFilter /shopcart/shopcart.jsp Tarena IT 集团 loginFilter /order/orderoperate.do action *.do 5.2 St
11、ruts-config.xml 配置文件设计配置文件设计 位置: $WebWEB-INFstruts-config.xml 内容和说明: Tarena IT 集团 Tarena IT 集团 Tarena IT 集团 5.3 hibernate.cfg.xml 配置文件设计配置文件设计 位置: $srchibernate.cfg.xml 内容和说明: root jdbc:mysql:/127.0.0.1:3306/GWAP?characterEncoding=utf8 org.hibernate.dialect.MySQLDialect com.mysql.jdbc.Driver true tr
12、ue Tarena IT 集团 5 20 5000 0 3 thread 6 LOG4J 设计 6.1 LOG4J 配置文件配置文件 位置: Tarena IT 集团 $srclog4j.properties 内容和说明: log4j.rootLogger=debug,console,info,warn,error,fatal log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.con
13、sole.layout.ConversionPattern=%-5p %dHH:mm:ss %c - %m%n log4j.logger.info=info log4j.appender.info=org.apache.log4j.DailyRollingFileAppender log4j.appender.info.layout=org.apache.log4j.PatternLayout log4j.appender.info.layout.ConversionPattern=%-5p %dHH:mm:ss %c - %m%n log4j.appender.info.datePatter
14、n=.yyyy-MM-dd log4j.appender.info.Threshold = INFO log4j.appender.info.append=true log4j.appender.info.File=./log/gwap_info_logs.log log4j.logger.debug=debug log4j.appender.debug=org.apache.log4j.DailyRollingFileAppender log4j.appender.debug.layout=org.apache.log4j.PatternLayout log4j.appender.debug
15、.layout.ConversionPattern=%-5p %dHH:mm:ss %c- %m%n log4j.appender.debug.datePattern=.yyyy-MM-dd log4j.appender.debug.Threshold = DEBUG log4j.appender.debug.append=true log4j.appender.debug.File=./log/gwap_debug_logs.log log4j.logger.warn=warn log4j.appender.warn=org.apache.log4j.DailyRollingFileAppe
16、nder log4j.appender.warn.layout=org.apache.log4j.PatternLayout log4j.appender.warn.layout.ConversionPattern=%-5p %dHH:mm:ss %c - %m%n log4j.appender.warn.datePattern=.yyyy-MM-dd log4j.appender.warn.Threshold = WARN log4j.appender.warn.append=true log4j.appender.warn.File=./log/gwap_warn_logs.log log4j.logger.error=error log4j.appender.error=org.apache.log4j.DailyRollingFileAppender log4j.appender.error.la