1、2015-9-15至 2015-9-1821.文档介绍 .41文档目的与范围 .42读者对象 .42.系统概述 .53.开发、测试与运行环境 .54.软件系统结构图 .65.数据库设计概述 .105.1数据库环境说明 .105.2数据库命名规则 . 115.3安全性设计说明 . 115.4表清单 . 116.客户端 APP接口设计 .1231. 文档介绍1文档目的与范围此文的是为了说明描述 I水滴项目的服务端及管理后台的系统架构开发使用的技术及要点。2读者对象系统开发人员;系统维人员;系统二次开发人员;等。42.系统概述“i水”APP是面向于智能水表用户的一个移动应用,全面卡通家庭的形象设计贯
2、穿应用所有功能,通过实名用户与物联信息化的联接,为用户提供用水服务相关产品的垂直电商等服务。以智能水表为切入点,把与之绑定的“ i水”应用作为服务入口,核心功能的实用型用水服务来绑定用户,参与活动、游戏等获得免费用水来培养用户粘性,也可支持第三方账号登录如 QQ/微信/微博等,将虚拟水滴、虚拟理财、用水游戏、社区电商等运营型服务来丰富服务收益渠道,摸索并积累不同地区不同类型的用水用户消费习惯,并衍生更多服务方式。(1)以用水缴费管理为核心,电商消费等管理流程,对用水客户的业务进行全方位管理;(2)建立积分制度即水滴,可免费获得并用来消费,提高客户的忠诚度;(3)通过后台系统对已有的客户信息进行
3、归类管理,比如通过分析得到客户特征、购买行为、价值取向,从而定位出高价值客户,通过消费方式等与客户息息相关的角度进行数据梳理,改善服务模式,实现完善与创新。3. 开发、测试与运行环境类别标准配置最低配置开发环境CPU:I5内存: 8M硬盘: 1TI3内存: 4M硬盘: 500G测试环境运行环境I7内存:I7(双 CUP)内存: 32M硬盘:54. 软件系统结构图1.系统以 MVC模式进行开发 .Spring-MVC工作原理。Spring的 MVC框架主要由 DispatcherServlet、处理器映射 (HandlerMapping)、处理器(Controller)、视图解析器 (ViewR
4、esolver)、视图(View)组成。1.客户端请求提交到 DispatcherServlet2.由 DispatcherServlet控制器查询一个或多个 HandlerMapping,找到处理请求的 Controller.3. DispatcherServlet将请求提交到 Controller4. Controller调用业务逻辑处理后,返回 ModelAndView5. DispatcherServlet查询一个或多个 ViewResoler视图解析器,找到ModelAndView指定的视图6.视图负责将结果显示到客户端 DispatcherServlet是整个 Spring MVC
5、的核心。它负责接收 HTTP请求组织协调 Spring MVC的各个组成部分。其主要工作有以下三项:1.截获符合特定格式的 URL请求。2.初始化 DispatcherServlet上下文对应的 WebApplicationContext,并将其与业务层、持久化层的 WebApplicationContext建立关联。3.初始化 Spring MVC的各个组成组件,并装配到 DispatcherServlet中。Sping MVC核心接口:61.DispatcherServlet接口:Spring提供的前端控制器,所有的请求都有经过它来统一分发。在DispatcherServlet将请求分发给
6、 Spring Controller之前,需要借助于 Spring提供的 HandlerMapping定位到具体的 Controller。2.HandlerMapping接口:能够完成客户请求到 Controller映射。3. Controller接口:需要为并发用户处理上述请求,因此实现 Controller接口时,必须保证线程安全并且可重用。 Controller将处理用户请求,这和 Struts Action扮演的角色是一致的。一旦 Controller处理完用户请求,则返回 ModelAndView对象给DispatcherServlet前端控制器,ModelAndView中包含了模型
7、( Model)和视图(View)。从宏观角度考虑,DispatcherServlet是整个 Web应用的控制器;从微观考虑,Controller是单个 Http请求处理过程中的控制器,而 ModelAndView是 Http请求过程中返回的模型( Model)和视图( View)。4. ViewResolver接口:Spring提供的视图解析器( ViewResolver)在 Web应用中查找 View对象,从而将相应结果渲染给客户。表现层目前主要采用 jsp,html页面,以及 jquery等 UI框架作为展示数据及交互的媒介 .控制/业务逻辑层由 Spring mvc完成.利用 Spri
8、ng框架的依赖注入实现对 Service类和 DAO类的实例托管;在事务处理方面,利用 Spring提供的面向切面的事务处理功能,使对数据的事务控制脱离于数据访问接口实现;在对象关系映射方面,利用 Spring对数据库连接池的托管和对 myBatis框架的支持。开发人员需要完成对数据源的配置、对不同模块所对应的 application*.xml文件的配置,以及对特殊业务逻辑接口的定义和业务逻辑实现的编写。持久层利用 MyBatis提供的半自动化对象关系映射的实现,开发人员需要编写具体的 sql语句,为系统设计提供了更大的自由空间。另外,开发人员需要完成对 SqlMapConfig.xml和*S
9、qlMap.xml的配置2.项目管理采用 mavenApache Maven是一个软件项目管理和综合工具。基于项目对象模型( POM)的概念,Maven可以从一个中心资料片管理项目构建,报告和文件。本教程将介绍如何使用 Maven在 Java开发,或任何其他的编程语言的任何项目。Maven是什么?7Maven是一个项目管理和综合工具。 Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设, Maven使用标准的目录结构和默认构建生命周期。在多个开发团队环境时, Maven可以设置按标准在非常短的时间里完成配置工作。由于大部分项目的设置都很简单,并且可重复使
10、用, Maven让开发人员的工作更轻松,同时创建报表,检查,构建和测试自动化设置。Maven提供了开发人员的方式来管理: Builds Documentation Reporting Dependencies SCMs Releases Distribution mailing list概括地说,Maven简化和标准化项目建设过程。处理编译,分配,文档,团队协作和其他任务的无缝连接。 Maven增加可重用性并负责建立相关的任务。83.项目模块结构图:9APP:接口示例:5.数据库设计概述5.1数据库环境说明数据库系统: mysql 5.5设计工具: powerdesigner 15105.2数
11、据库命名规则表:模块名称 _功能名称如:Sys_Account(系统模块 _账户表)字段:表功能名称字段名称AccountLoginName(账户表登录名称)5.3安全性设计说明1、数据库以密文方式存储账户密码2、防止 SQL注入3、主外键关联防止垃圾数据4、主要业务表设计为逻辑标志位删除5、数据库定期备份等。5.4表清单名称优惠券表优惠券详情表商品信息表商品图片地区表代码Shop_ParentCouponShop_ChildCouponShop_ProductInfoShop_ProductPicSys_Area帖子分享表帖子表Bbs_PostShareBbs_Post广告表Sys_Ad收货
12、地址表水宝信息表水宝明细表水滴信息表水滴明细表水表信息表水表缴费记录表消息推送用户优惠券表用户信息表用户预注册表Mb_UserAddressTre_TreasureInfoTre_TreasureDetailsDro_DropInfoDro_DropDetailsMe_MeterInfoMe_MeterPaySys_MsgMb_UserGrouponMb_UserMb_UserPer11等级名称表签到表Sys_LevelMb_Sign系统模块表角色和模块关系表订单表Sys_ModuleSys_GroupModuleRelationShop_OrderBbs_CommentSys_Text评论表说明文本表账户主表账户细表账户角色表银行表Sys_AccountSys_AccountDetailSys_GroupSys_BankBbs_Att附件表6.客户端 APP接口设计详见“i水(爱水) APP”APP接口文档”12
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1