网上购物系统子系统设计报告.docx
- 文档编号:5349449
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:25
- 大小:311.99KB
网上购物系统子系统设计报告.docx
《网上购物系统子系统设计报告.docx》由会员分享,可在线阅读,更多相关《网上购物系统子系统设计报告.docx(25页珍藏版)》请在冰豆网上搜索。
网上购物系统子系统设计报告
机构图标
{网上购物系统}
子系统设计报告
文件状态:
[√]草稿
[]正式发布
[]正在修改
文件标识:
子系统设计报告
当前版本:
1.0
作者:
谢飞
完成日期:
机构公开信息
版本历史
版本/状态
作者
参与者
起止日期
备注
1.0
谢飞
2008-7-29
1文档介绍
1.1文档目的
本文档描述各子系统的详细设计和实现过程。
1.2文档范围
功能描述,模块定义,实现流程
1.3读者对象
本文档适合开发人员、项目经理、营销人员、用户和测试人员。
1.4参考文献
1.5术语与缩写解释
缩写、术语
解释
1.6流程图图例解释
2.模块汇总
2.1模块汇总表
主界面子系统
模块名称
功能简述
main.jsp
系统的主页视图,其中包括显示当前用户的欢迎信息和权限信息,登录和注册链接,主菜单各链接和其他操作链接。
com.sol.service.in.IndexController
主页视图的映射控制器,执行html对jsp的映射,并且在其中包括有对用户身份的判断(当前用户是否已登录),设置导向视图。
com.sol.service.in.CancelCookieController
Cookie清除控制器,用来删除保存在Cookie中的用户信息。
org.acegisecurity.ui.logout.LogoutFilter
退出系统过滤器,在退出系统时执行一些附加操作,比如:
清除Session保存的信息,指定退出后返回的页面等等。
org.acegisecurity.concurrent.ConcurrentSessionFilter
Session并发控制器,限制用户的并发数,模式为后者有先。
org.acegisecurity.ui.rememberme.RememberMeProcessingFilter
Cookie用户信息过滤器,用于从Cookies中获取有限的用户信息,自动登录系统。
登录子系统
模块名称
功能简述
login/loing.jsp
用户登录视图,包括输入用户名,密码,验证码和Cookie保存时间等信息并进行相关的前台验证,设置其他链接。
com.sol.acegi.UserAuthenticationProcessing
登录认证过滤器,设置认证管理器和Session并发控制器,设置转入和转出页面。
com.sol.acegi.AcegiJdbcDaoImpl
注册用户信息类,认证过滤器从数据库获取的数据形成封装成,该类设置查询的Sql,数据库访问url等信息。
org.acegisecurity.providers.ProviderManager
认证管理器,设置认证提供者,用于对登录用户进行认证,判断当前用户的身份和权限,并保存用户信息到HttpSession中备用。
org.acegisecurity.providers.dao.DaoAuthenticationProvider
认证提供者,表明是有Dao类负责获取用户信息进行认证,由其设置注册用户信息,相关的加密信息。
com.sol.acegi.UserTokenBasedRememberMeServices
ReMemberMe控制器,用于保存用户信息到Cookie中,期限用户选择。
com.sol.service.login.ValidatCodeController
验证码控制器,生成验证码图片,并将验证码保存到session。
org.springframework.web.servlet.mvc.UrlFilenameViewController
文件名映射控制器,完成文件名从html到jsp直接映射。
注册子系统
模块名称
功能简述
login/register.jsp
用户注册视图,设置必填信息和选填信息并进行相关的前台验证,设置其他链接。
com.sol.service.login.UserRegisterController
注册控制处理器,设置表单验证器,执行验证前和验证后的附加方法,执行表单提交方法将注册信息入库,设置注册成功或失败的指向视图。
com.sol.service.login.ValidatCodeController
验证码控制器,生成验证码图片,并将验证码保存到session。
com.sol.service.login.validator.UserRegisterValidator
注册表单验证器,进行表单输入信息的业务逻辑验证。
系统管理子系统
模块名称
功能简述
administer/menuTree.jsp
系统管理菜单树,显示系统管理的分级菜单。
administer/addGoodsTypeInfo.jsp
添加商品种类视图,提供前台输入界面,完成客户端验证。
com.sol.service.admin.AddGoodsTypeInfoController
添加商品种类控制器,完成商品种类的数据封装,校验和引用持久化类保存数据,完成视图的映射。
com.sol.service.admin.AdminDataTransfersForDWR
系统管理类的dwr调用实现类,调用商品信息持久化类完成相关操作。
mon.DataAssembledForPojoClass
表单数据封装类,将视图提交的数据封装为pojo对象,提供给控制器调用。
queryGoodsTypeInfo.jsp
查询商品种类视图,提供前台输入界面,完成客户端验证。
com.sol.service.admin.QueryGoodsTypeInfoController
查询和修改商品种类控制器,完成商品种类的数据封装,校验和引用持久化类返回查询数据或保存修改数据,完成视图的映射。
3.主界面子系统的模块设计
3.1功能描述
显示主界面视图,包括商品主菜单、分类菜单、系统管理员菜单、用户登录、注册、退出和Cookies清除功能链接及其他常用链接,用户登录身份认证,session并发控制等功能。
3.2流程图
3.3模块定义
模块名称
com.sol.service.in.IndexController
功能描述
主页视图的映射控制器,执行html对jsp的映射,并且在其中包括有对用户身份的判断(当前用户是否已登录),设置导向视图
主要方法
获取主界面视图和模型对象方法
protectedModelAndViewhandleRequestInternal(HttpServletRequestrequest,HttpServletResponseresponse)
主要属性
补充说明
模块名称
com.sol.service.in.CancelCookieController
功能描述
Cookie清除控制器,用来删除保存在Cookie中的用户信息。
主要方法
删除cookie信息后,获取转向视图和模型对象方法
protectedModelAndViewhandleRequestInternal(HttpServletRequestrequest,HttpServletResponseresponse)
删除cookie业务方法
privateCookiemakeCaneclCookie(HttpServletRequestrequest)
主要属性
补充说明
模块名称
org.acegisecurity.ui.logout.LogoutFilter
功能描述
退出系统过滤器,用户在退出系统后,执行相关的附加操作,如删除保存在Session的用户信息等等。
主要方法
退出系统主业务方法
publicvoidlogout(HttpServletRequestrequest,HttpServletResponseresponse,Authenticationauthentication)
主要属性
退出系统功能的链接字符串
privateStringfilterProcessesUrl
完成业务方法后转向视图名称
privateStringlogoutSuccessUrl
补充说明
模块名称
org.acegisecurity.concurrent.ConcurrentSessionFilter
功能描述
Session并发过滤器,限制用户的并发数,模式为后者有先。
主要方法
主业务方法
publicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)
主要属性
该对象内保存对应用户的session数
privateSessionRegistrysessionRegistry
完成业务方法后转向视图名称
privateStringexpiredUrl
补充说明
模块名称
org.acegisecurity.ui.rememberme.RememberMeProcessingFilter
功能描述
Cookie用户信息过滤器,用于从Cookies中获取有限的用户信息,自动登录系统。
主要方法
主业务方法
publicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)
主要属性
remember管理器
privateRememberMeServicesrememberMeServices
认证管理器
privateAuthenticationManagerauthenticationManager
补充说明
4.登录子系统的模块设计
4.1功能描述
显示登录视图界面,完成前后台验证和用户登录功能。
4.2流程图
4.3模块定义
模块名称
com.sol.acegi.UserAuthenticationProcessing
功能描述
登录认证过滤器,设置认证管理器和Session并发控制器,设置转入和转出页面。
主要方法
主业务方法
publicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)
验证成功时执行的方法,重写该方法,加入对验证码的校验。
publicAuthenticationattemptAuthentication(HttpServletRequestrequest)
验证失败时执行的发放,重写该方法,加入对成功页面的参数传递。
protectedvoidsuccessfulAuthentication(HttpServletRequestrequest,
HttpServletResponseresponse,AuthenticationauthResult)
主要属性
过滤器拦截URL
privateStringfilterProcessesUrl
认证通过后转向的视图逻辑名
privateStringdefaultTargetUrl
认证失败转向的视图逻辑名
privateStringauthenticationFailureUrl
认证管理器
privateAuthenticationManagerauthenticationManager
补充说明
模块名称
org.acegisecurity.providers.ProviderManager
功能描述
认证管理器,设置认证提供者,用于对登录用户进行认证,判断当前用户的身份和权限,并保存用户信息到HttpSession中备用
主要方法
主业务方法
publicAuthenticationdoAuthentication(Authenticationauthentication)
主要属性
认证提供者列表
privateListproviders
并发session控制器
privateConcurrentSessionControllersessionController
补充说明
模块名称
org.acegisecurity.providers.dao.DaoAuthenticationProvider
功能描述
认证提供者,表明是有Dao类负责获取用户信息进行认证,由其设置注册用户信息,相关的加密信息。
主要方法
主业务方法
publicAuthenticationauthenticate(Authenticationauthentication)
属性
用户信息
privateUserDetailsServiceuserDetailsService
用户信息的加密方式
privatePasswordEncoderpasswordEncoder
加密盐
privateSaltSourcesaltSource
补充说明
模块名称
com.sol.acegi.AcegiJdbcDaoImpl
功能描述
注册用户信息类,认证过滤器从数据库获取的数据形成封装成,该类设置查询的Sql,数据库访问url等信息。
主要方法
从数据库中获取用户信息,重写该方法,以方便获取更多用户信息
publicIUserDetailsloadUserByUsername(Stringusername)
主要属性
数据源
privateDataSourcedataSource
用户信息查询Sql字符串
privateStringusersByUsernameQuery
权限信息查询sql字符串
privateStringauthoritiesByUsernameQuery
补充说明
模块名称
com.sol.acegi.UserTokenBasedRememberMeServices
功能描述
ReMemberMe控制器,用于保存用户信息到Cookie中,期限用户选择。
主要方法
publicvoidloginSuccess(HttpServletRequestrequest,
HttpServletResponseresponse,
AuthenticationsuccessfulAuthentication)
主要属性
Cookies中保存的键值
privateStringkey
Cookies中保存的有效期
protectedlongtokenValiditySeconds
用户信息
privateUserDetailsServiceuserDetailsService
补充说明
模块名称
com.sol.service.login.ValidatCodeController
功能描述
验证码控制器,生成验证码图片,并将验证码保存到session
主要方法
主业务方法
protectedModelAndViewhandleRequestInternal(HttpServletRequestrequest,HttpServletResponseresponse)
主要属性
图片高度
privateintheight
图片宽度
privateintwidth
字数
privateintcodeCount
补充说明
模块名称
org.springframework.web.servlet.mvc.UrlFilenameViewController
功能描述
文件名映射控制器,完成文件名从html到jsp直接映射。
主要方法
主业务方法
protectedModelAndViewhandleRequestInternal(HttpServletRequestrequest,HttpServletResponseresponse)
主要属性
补充说明
5.注册子系统的模块设计
5.1功能描述
显示注册视图界面,完成前后台验证和会员注册功能。
5.2流程图
5.3模块定义
模块名称
com.sol.service.login.UserRegisterController
功能描述
注册控制处理器,设置表单验证器,执行验证前和验证后的附加方法,执行表单提交方法将注册信息入库,设置注册成功或失败的指向视图。
主要方法
表单提交方法,将注册信息存入数据库
protectedModelAndViewonSubmit(Objectcommand)
该方法用来执行验证码的校验,在验证器工作之情执行
protectedvoidonBind(HttpServletRequestrequest,Objectcommand,
BindExceptionerrors)
该方法用来执行判断是否有重复用户名,在验证器工作之后执行
protectedvoidonBindAndValidate(HttpServletRequestrequest,
Objectcommand,BindExceptionerrors)
主要属性
注册请求发起页面
privateStringformView
成功注册后的转向页面
privateStringsuccessView
数据持久化类
privateUserInfoJdbcDaouserInfoJdbcDao
验证器类
privateValidatorvalidator
补充说明
模块名称
com.sol.service.login.ValidatCodeController
功能描述
验证码控制器,生成验证码图片,并将验证码保存到session。
主要方法
主业务方法
protectedModelAndViewhandleRequestInternal(HttpServletRequestrequest,HttpServletResponseresponse)
主要属性
图片高度
privateintheight
图片宽度
privateintwidth
字数
privateintcodeCount
补充说明
模块名称
com.sol.service.login.validator.UserRegisterValidator
功能描述
注册表单验证器,进行表单输入信息的业务逻辑验证。
主要方法
主业务方法
publicvoidvalidate(Objecttarget,Errorserrors)
验证Email(MSN)格式
privatevoidvalidateEmail(Stringemail,Errorserrors)
验证日期格式
privatevoidvalidateDate(Stringphone,Errorserrors)
验证电话号码格式
privatevoidvalidatePhone(Stringphone,Errorserrors)
验证QQ格式
privatevoidvalidateQQ(Stringphone,Errorserrors)
主要属性
合法的Email(MSN)正则表达式
privatestaticfinalPatternEMAIL_PATTERN=Pattern.compile("(?
:
\\w[-._\\w]*\\w@\\w[-._\\w]*\\w\\.\\w{2,3}$)")
合法的电话号码正则表达式
privatestaticfinalPatternPHONE_PATTERN=Pattern.compile("(^(\\d{2,4}[-]?
)?
\\d{3,8}([-]?
\\d{3,8})?
([-]?
\\d{1,7})?
$)|(^0?
1[35]\\d{9}$)")
合法的日期正则表达式
privatestaticfinalPatternDATE_PATTERN=Pattern.compile("(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|
[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|
((0[469]|11)-(0[1-9]|[12][0-9]|30))|
(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|
[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29)")
合法的QQ号正则表达式
privatestaticfinalPatternQQ_PATTERN=Pattern.compile("([0-9]{5,15})")
补充说明
6.系统管理子系统的模块设计
6.1添加商品类别信息
6.1.1功能描述
添加商品类别和类别属性。
6.1.2流程图
6.1.3模块定义
模块名称
com.sol.service.admin.AddGoodsTypeInfoController
功能描述
添加商品种类控制器,完成商品种类的数据封装,校验和引用持久化类,完成视图的映射。
主要方法
从数据库获取初始化数据,传递到视图页面中
protectedMapreferenceData(HttpServletRequestrequest)
主业务方法,引用持久化类保存数据,返回视图导向页面
protectedModelAndViewonSubmit(HttpServletRequestrequest,
HttpServletResponseresponse,Objectcommand,BindExceptionerrors)
主要属性
商品信息持久化类
privateGoodsInfoJdbcDaogoodsInfoJdbcDao
补充说明
模块名称
com.sol.service.admin.AdminDataTransfersForDWR
功能描述
系统管理类的dwr调用实现类,调用商品信息持久化类完成相关操作。
主要方法
类别重复名验证,根据父id和类别名称,判定是否存在相同的类别名称
publicbooleanquery(StringfatherId,StringtypeName)
主要属性
商品信
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网上 购物 系统 子系统 设计 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)