毕业设计(论文)-基于微信平台的校园微快递系统.doc_第1页
毕业设计(论文)-基于微信平台的校园微快递系统.doc_第2页
毕业设计(论文)-基于微信平台的校园微快递系统.doc_第3页
毕业设计(论文)-基于微信平台的校园微快递系统.doc_第4页
毕业设计(论文)-基于微信平台的校园微快递系统.doc_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于微信平台的校园微快递系统基于微信平台的校园微快递系统 学院名称: 计算机工程学院 专 业: 软件工程 班 级: 11 软件 2Z 学 号: 姓 名: 指导教师姓名: 指导教师职称: 讲 师 二一五 年 六 月 本 科 毕 业 设 计 ( 论 文 ) 江苏理工学院毕业设计说明书(论文) 1 基于微信平台的校园微快递系统 摘 要:近年来,随着微信的普及,越来越多的人开始使用微信。校园 商品、服务交易仍采用面对面线下交易方式,这种方式不但不灵活,而且不符 合当前这个信息化的时代。为了让同学们更加快速,便捷的得到想要的商品、 服务及快递。设计并实现了“基于微信平台的校园微快递系统”,学生们可以 通过微信订购自己需要的商品、服务及微快递,使得大学生活质量有了一定的 提高,让大学校园迈入了一个新的台阶。 本设计说明书根据校园商品、服务及微快递订购的实际情况,详细介绍了 校园微快递系统的设计和实现流程。系统运用软件工程原理和开发方法,通过 可行性研究、需求分析、概要设计、详细设计等步骤进行分析和设计,并采用 Spring 框架、JQuery 以及 MySQL 5.0 等技术设计与实现。同时,采用 Eclipse 作为开发工具进行开发。系统能够满足商品、服务交易的基本要求,包括用户 管理、商店管理、商品、服务及快递 O2O 交易的快捷化和信息化管理等模块。 关键词:微信开发,Spring,AJAX,MySQL,HTML5 全套设计加扣 3012250582 江苏理工学院毕业设计说明书(论文) 2 The campus micro express delivery system based on wechat platform Abstract: In recent years, with the popularity of wechat, more and more people began to use the wechat. Campus goods, services trade is still used at face line transactions, this approach is not only inflexible, but also does not meet the current era of information technology. To make students more quickly and easily obtain goods, services and courier want. Design and realization of the wechat platform based on campus micro express delivery system, students can order goods, service and micro express delivery they need through the wechat. The quality of university life has definitely improved, so that the campus entered a new level. The design specification based on the campus of goods, services and micro express delivery order, detailing the campus micro express delivery system design and implementation process.System uses software engineering principles,development methods, through feasibility studies, requirements analysis, preliminary design, detailed design, analysis and design steps and use Spring framework, technical design, implementation of JQuery, MySQL 5.0 and so on. At the same time, the use of Eclipse as a development tool for development. The system can meet the commodity, the basic requirements of service transactions,including user management, store management,product, service, express delivery O2O transaction and information management modules. Key words: Wechat Development,Spring,AJAX,MySQL,HTML5 江苏理工学院毕业设计说明书(论文) I 目录 引 言.1 第 1 章概 述.2 1.1 系统开发背景 .2 1.2 系统研究目标和内容 .2 第 2 章 可行性研究.3 2.1 技术可行性 .3 2.1.1 开发技术 .3 2.1.2 开发环境 .5 2.2 操作可行性 .5 第 3 章 需求分析.6 3.1 功能概况描述 .6 3.2 功能用例图及活动图 .7 第 4 章 概要设计.15 4.1 系统类图与顺序图 .15 4.2 数据结构与数据库设计 .20 4.2.1 基本实体表 .20 4.2.2 数据库表设计 .20 第 5 章 详细设计.22 5.1 开发准备 .22 5.2 用户管理 .22 5.2.1 商家注册 .22 5.2.2 普通用户注册 .24 5.2.3 管理员,商家登录 .25 5.2.4 普通用户登录 .26 江苏理工学院毕业设计说明书(论文) II 5.2.5 用户管理 .28 5.2.6 商家个人信息 .29 5.2.7 普通用户个人信息 .30 5.3 商店信息管理 .32 5.3.1 商店管理 .32 5.3.2 商店列表 .35 5.4 商品信息管理 .36 5.4.1 商品管理 .36 5.4.2 商品列表 .38 5.5 订单信息管理 .39 5.5.1 用户订单管理 .39 5.6 校园微快递管理 .42 5.6.1 快递跑腿下单 .42 5.6.2 快递跑单查询 .43 5.6.3 快递跑单签收 .44 第 6 章 系统测试与运行.46 6.1 系统测试描述 .46 6.2 用户注册测试 .46 6.2.1 测试目的 .46 6.2.2 测试过程及结果 .46 6.3 用户登录测试 .47 6.3.1 测试目的 .47 6.3.2 测试过程及结果 .47 6.4 创建商店测试 .48 6.4.1 测试目的 .48 6.4.2 测试过程及结果 .48 6.5 微快递跑单签收测试 .48 6.5.1 测试目的 .48 6.5.2 测试过程及结果 .48 江苏理工学院毕业设计说明书(论文) III 结束语.50 参考文献.51 致 谢.52 江苏理工学院毕业设计说明书(论文) 第 1 页 共 52 页 引 言 使用微信进行商品、服务及微快递交易,使得大学生活质量提高,商家与 用户也能够查询最新商品信息及服务等。使得整个服务流程更加系统、规范, 在提高大学生活质量的同时,也让大学校园迈入了一个新的台阶。 因此,开发一套结合线下商品、服务交易的校园微快递系统是绝对必要的。 本系统可以改变传统的校园商品、服务及微快递的交易方式,减少大量的交易 成本,并可以更加方便的管理订单。本系统设计开发使用 B/S 结构,利用 Eclipse 以及 MySQL 数据库完成设计开发,部分页面利用 AJAX 技术完成数据交 互,利用 SHA1 加密技术保证用户数据的安全。 至此,本设计说明书着重介绍了校园微快递系统的分析与设计过程,共分 为 6 章。第 1 章概述,主要介绍了校园微快递系统的开发背景、研究目标和内 容;第 2 章可行性研究,主要介绍了系统技术和操作可行性;第 3 章需求分析, 主要介绍了通过分析校园微快递系统的功能用例图、活动图等面向对象模型; 第 4 章概要设计,包括系统的类图、顺序图以及 MySQL 数据库设计等内容;第 5 章详细设计,主要介绍开发前的准备以及各个功能的详细设计过程;第 6 章 系统测试运行,主要介绍通过对本系统的运行进行测试,查看是否存在系统漏 洞。 江苏理工学院毕业设计说明书(论文) 第 2 页 共 52 页 第 1 章 概 述 1.1 系统开发背景 目前校园商品、服务交易仍采用面对面线下交易方式,这种方式不但不灵 活,而且不符合当前这个信息化的时代。唯有结合线上的交易,采用 O2O 模式 进行交易,才能变得更加便捷可靠安全,同时也提高了同学们的生活质量,因 此开发校园微快递系统显得尤为重要。 1.2 系统研究目标和内容 面对当前校园商品、服务交易的现状,迫切需要一个信息化的校园微快递 系统来为大学生提供方便的服务。所以,开发该校园微快递系统是满足市场需 求的。本系统建立完善的业务流程和管理流程,用户可以通过本系统方便的进 行交易,从而实现交易的便捷化。 本系统采用 B/S 结构,基于其可管理性、易于部署、便于维护以及扩展性 等众多优点,并且充分发挥该结构的跨平台能力,多层结构的升级和扩展的优 势。因此,能够很好地完成系统所要求的全部功能基本的要求。包括:用户管 理、商店管理、商品管理、下单、签收订单等功能。 江苏理工学院毕业设计说明书(论文) 第 3 页 共 52 页 第 2 章 可行性研究 2.1 技术可行性 .1 开发开发技术技术 1 1微信开发微信开发 微信1提供给开发者强大的 API,使得微信开发者能够通过微信公众平台 很好的开发出优秀订阅号的公众号及企业号,微信提供给开发者以下开发接口: 接收和发送消息(包含文本消息、图片消息、语音消息、视频消息、 小视频消息、地理位置消息、链接消息、图文消息) 用户管理 自定义菜单管理 数据统计接口 微信 JS-SDK 微信小店接口 微信卡劵接口 微信智能接口等 微信开发支持多种语言,包含 Java、PHP、ASP.NET、Ruby、Python、Note.js 等,本系统采用的 Java 语言进 行开发。 2 2AJAXAJAX AJAX2(Asynchronous JavaScript And XML)是异步 JavaScript 和 XML。AJAX 是通过 XmlHttpRequest 对象完成对服务器端的异步请求,页面在 不用重新加载的情况下,实现动态刷新,进而实现网页的动态化。在设计很多 的动态网页时,常使用 AJAX 来完成。 3 3MVCMVC 模式模式 江苏理工学院毕业设计说明书(论文) 第 4 页 共 52 页 MVC3即 Model-View-Controller 的缩写,MVC 是目前常用的软件设计模 式。MVC 是将应用程序关键功能和数据显示分离开来,最后使用控制器确保前 两部分的同步。使得数据操作和用户界面可以单独开发,增强了程序的可维护 性,减少开发周期。 4 4HTML5HTML5 HTML 54增强了 Web 网页的表现能力。并添加本地数据库等 Web 应用的 功能。HTML5 通常是指 HTML、CSS 和 JavaScript 的整合。Firefox(火狐浏览 器),IE9+版本,Chrome(谷歌浏览器),Safari,Opera 等浏览器都能够对 HTML5 有很好的支持。 5 5CSSCSS 级联样式表5(Cascading Style Sheet)简称“CSS”,通常又称为“风格 样式表(Style Sheet)”,它是用来进行网页风格设计的。通过设立样式表,可 以统一地控制 HTML 中各标志的显示属性。级联样式表可以使人更能有效地控 制网页外观。 6 6JavaScriptJavaScript JavaScript6是一种很强大的网络脚本语言,它具有相对的安全性。HTML 网页上添加动态功能一般都使用它来实现。JavaScript 被数百万计的网页用来 改进设计、验证数据、动态效果等功能。JavaScript 同时也是一种常用于客户端 Web 开发的脚本语言,各大浏览器对它都有较好的支持。 7 7JSONJSON JSON7一是种比较轻量的数据交换格式,因为它常用于传递相对较少的数 据。JSON 与 XML 类似,对于 AJAX 应用程序来说,JSON 比 XML 更快更 易使用,一般常用 eval()处理 JSON 字符串。JSON 可以将 JavaScript 中一组 数据转换为字符串,进而在函数之间进行快递的传递数据。 江苏理工学院毕业设计说明书(论文) 第 5 页 共 52 页 8 8JQueryJQuery JQuery8是一个优秀的轻量级 JavaScript 库。它不仅兼容 CSS3,还在各种 浏览器中运行稳定。通过使用 JQuery,可以方便的实现动画效果和 AJAX 数据 交互等功能,JQuery 在许多应用中被广泛的使用,网上有许多的案例和文档资 料,其学习门槛较低,很容易入门,系统开发者可以使用 JQuery 提供的大量开 发接口来完成自己的系统设计。 .2 开发环境开发环境 本系统是在 Windows 7 操作系统下,使用微信对话框和内置浏览器完成前 台显示,后台使用 Firefox 浏览器完成前台显示,系统运行在 Tomcat 7.0 服务器 上,使用 MySQL 作为数据库搭建环境。本系统使用 MVC 开发模式,控制,视 图和逻辑层相互关联,但又相互独立。 2.2 操作可行性 本系统严格按照校园商品、服务交易的正常流程开发。管理人员能够快速 上手,并通过统计直观查看系统情况。在投入使用前,会由开发并能熟练操作 本系统的工程人员对用户群进行专业系统的培训。在开发设计程序的过程中, 使用直观的界面和控件的文字,使得用户充分理解系统功能,所以本系统的操 作是完全可行的。 江苏理工学院毕业设计说明书(论文) 第 6 页 共 52 页 第 3 章 需求分析 3.1 功能概况描述 校园微快递系统的主要任务是:使用权限来划分和管理各个人员的功能, 主要完成的是系统的规划与功能、性能分析与实现、的划分以及各个实现的功 能等。校园微快递系统主要功能需求: 一、用户信息管理 主要包括四个子功能: 1 1用户信息添加:管理员通过添加用户功能,填写新用户的姓名、密码 等完成新用户的添加。 2 2用户信息查询:管理员通过输入关键字对用户信息进行查询。 3 3用户信息修改:管理员通过修改功能对某个用户的基本信息进行修改。 4 4用户信息删除:管理员通过删除功能对已经注册的用户进行删除。 二商店管理 主要包括五个子功能: 1 1商店信息添加:管理员或商家通过添加功能,输入商店基本信息,即 可完成商店的添加。 2 2商店信息查询:管理员或商家通过查询功能,输入关键字对商店信息 进行查询。 3.3. 商店信息修改:管理员或商家通过修改功能,输入商店信息进行修改。 4 4商店信息审核:管理员通过审核功能,查看商店信息后,进行审核。 5 5商店信息删除:管理员或商家通过删除功能对已经添加的商店进行删 除。 江苏理工学院毕业设计说明书(论文) 第 7 页 共 52 页 3商品管理 主要包括五个子功能: 1 1商品信息添加:管理员或商家通过添加功能,输入商品基本信息,完 成商品的添加。 2 2商品信息查询:管理员或商家通过查询功能,输入关键字对商品信息 进行查询。 3.3. 商品信息修改:管理员或商家通过修改功能,输入商品信息进行修改。 4 4商品信息审核:管理员通过审核功能,查看商品信息后,进行审核。 5 5商品信息删除:管理员或商家通过删除功能对已经添加的商品进行删 除。 四、订单管理 主要包括四个子功能: 1 1订单创建:用户根据自己的需求,选择自己喜欢的商店、服务等,通过 订单创建功能进行下单。 2 2订单查询:用户根据自己的 ID 查询自己已下订单的状态信息。 3 3订单取消:用户根据自己的需要,可在下单后对自己不想订购的商品、 服务或微快递进行取消。 4.4. 订单签收:用户根据自己是否收到商品,或,可以对订单进行签收操作。 3.2 功能用例图及活动图 1 1总用例图总用例图 根据需求分析可以得出以下总的系统用例图。 江苏理工学院毕业设计说明书(论文) 第 8 页 共 52 页 信信信 信信信信 信信信信 信信信信 信信信信 信信信信 信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 图 3-1 系统总用例图 江苏理工学院毕业设计说明书(论文) 第 9 页 共 52 页 2 2子用例图子用例图 用例名称:用户管理 执行者:管理员 用例图: 信信信 信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信信信 包含用例:用户信息添加,用户信息查询,用户信息修改,用户信息删除 图 3-2 用户管理用例图 对应用户管理活动图如 3-3 所示。在用户管理功能中,管理员可以选择执 行四种操作,分别是:用户添加,用户查询,用户修改,用户删除。用户注册 或绑定之后,管理员可以对用户进行查询,修改,及删除操作。同时,用户本 身也可以对自已的个人信息进行查看与修改操作。 显示注册用户信息界面 下下下下下下 下下下下下下下下下下 下下下下 下下下下 下下下下 下下 下下 图 3-3 用户管理活动图 江苏理工学院毕业设计说明书(论文) 第 10 页 共 52 页 用例名称:商店管理 执行者:商家 用例图: 信信信信 信信 信信信信信信 信信信信信信 信信信信信信 包含用例:商店信息创建,商店信息查看,商店信息修改,商店信息删除 图 3-4 商店管理用例图 对应商店管理活动图如 3-5 所示。在商店创建功能中,商家可以执行创建 商店。在创建商店之后,商家可以对商店进行查看,修改,及删除操作。在完 成创建之后,商店需要通过管理员的审核方可显示在微信端“校园微商城”页 面中。 下下下下下下下下下下 下下下下下下下下下下 下下下下 下下下下 下下下下 下下下下 下下 下下 图 3-5 商店管理活动图 江苏理工学院毕业设计说明书(论文) 第 11 页 共 52 页 用例名称:商店审核 执行者:管理员 用例图: 信信信信 信信信信信信 信信信 信信信信信信 信信信信信信 包含用例:商店信息查询,商店信息审核 图 3-6 商店审核用例图 对应商店审核活动图如 3-7 所示。在商店审核功能中,商家在完成商店创 建后,管理员便可以查询到该商店的信息,判定商店符合要求后,管理员就可 以对商店进行审核,商店一旦审核之后,就会显示在“校园微商城”的页面当 中了。若该商店不符合要求,则不进行审核,当然管理员也可以对商店信息进 行删除操作。 下下下下下下下下下下下下下下 下下下下 下下下下 下下下下 下下 下下 图 3-7 商店审核活动图 江苏理工学院毕业设计说明书(论文) 第 12 页 共 52 页 用例名称:商品管理 执行者:商家 用例图: 信信信信 信信 信信信信信信 信信信信信信 信信信信信信 包含用例:商品信息创建,商品信息修改,商品信息删除 图 3-8 商品创建用例图 对应商品创建活动图如 3-9 所示。在商品创建功能中,商家可以执行商品 创建。在创建商品之后,商家可以对商品进行修改与删除操作。在完成创建之 后,商品需要通过管理员的审核方可显示在“校园微商城”页面中。 下下下下下下下下下下 下下下下下下下下下下 下下下下 下下下下 下下下下 下下下下 下下 下下 图 3-9 商品管理活动图 江苏理工学院毕业设计说明书(论文) 第 13 页 共 52 页 用例名称:商品审核 执行者:管理员 用例图: 信信信信 信信信信信信 信信信 信信信信信信 信信信信信信 包含用例:商品信息查询,商品信息审核,商品信息删除 图 3-10 商品审核用例图 对应商品审核活动图如 3-11 所示。在商品审核功能中,商家在完成商品创 建后,管理员便可以查询到该商品,判定符合要求后,管理员就可以对商品进 行审核,商品一旦审核之后,就会显示在“校园微商城”的页面当中了。若该 商品不符合要求,则不进行审核,当然管理员也可以对商品信息进行删除操作。 下下下下下下下下下下下下下下下下下下下下 下下下下下下下下 下下下下 下下下下 下下 下下 江苏理工学院毕业设计说明书(论文) 第 14 页 共 52 页 图 3-11 商品管理活动图 用例名称:订单管理 执行者:普通用户 用例图: 信信信信 信信信信信信 信信信信信信 信信信信信信 信信信信 信信信信信信 包含用例:订单信息创建,订单信息查询,订单信息取消,订单信息签收 图 3-12 订单管理用例图 对应订单创建活动图如 3-13 所示。在订单管理功能中,用户可以选择执行 四种操作,分别是:创建订单,查询订单,取消订单,签收订单。在创建订单 之后,用户可以对订单进行查询,取消,及签收操作。 下下下下下下下下下下下下下下下下下下 下下下下 下下下下 下下下下 下下下下 下下 下下下下 下下下下下下下下下下 下下下下 下下下下 图 3-13 订单管理活动图 江苏理工学院毕业设计说明书(论文) 第 15 页 共 52 页 第 4 章 概要设计 4.1 系统类图与顺序图 1系统登陆 LoginController +login(): String +fail(): String User +openid: String +loginName: String +password: String +credit: int +phoneNum: String 图 4-1 系统登陆类图 由 4-1 静态类图可以发现,登陆过程中有两个类进行交互,分别是 LoginController 类和 AccountService 类, 进一步可以得到顺序图,明确类 与类之间的交互。如图 4-2 所示。 下下LoginControllerUser 1 : 下下下下下下() 2 : 下下下下下下() 3 : 下下下下() 4 : 下下下下() 图 4-2 登陆顺序图 江苏理工学院毕业设计说明书(论文) 第 16 页 共 52 页 2用户信息管理 UserController +create(): String +update(): String +check(): String +delete(): String User +openid: String +loginName: String +password: String +credit: int +phoneNum: String 图 4-3 用户信息管理功能类图 由 4-3 静态类图可以发现,用户管理过程中有两个类进行交互,分别是 UserController,User 类, 进一步可以得到顺序图,明确类与类之间的交互。 如图 4-4 所示。 下下下UserControllerUser 1 : 下下下下下下() 2 : 下下下下下下() 3 : 下下下下() 4 : 下下下下下下下下() 图 4-4 用户信息管理顺序图 江苏理工学院毕业设计说明书(论文) 第 17 页 共 52 页 3.商店管理功能 BussinessController +create(): String +update(): String +check(): String +delete(): String Bussiness +name: String +property: String +protocol: String +user: User User +openid: String +loginName: String +password: String +credit: int +phoneNum: String 图 4-5 商店管理类图 由 4-5 静态类图可以发现,商店管理过程中有三个类进行交互,分别是 BussinessController 类,User 类,Bussiness 类,进一步可以得到顺序图,明 确类与类之间的交互。如图 4-6 所示。 BussinessController下下User Bussiness 1 : 下下下下() 2 : 下下下下下下() 3 : 下下下下() 4 : 下下下下() 5 : 下下下下下下() 图 4-6 商店管理顺序图 江苏理工学院毕业设计说明书(论文) 第 18 页 共 52 页 4商品管理功能 User +openid: String +loginName: String +password: String +credit: int +phoneNum: String ProductController +create(): String +update(): String +check(): String +delete(): String Product +name: String +description: String +price: Long +image: String 图 4-7 商品管理类图 由 4-7 静态类图可以发现,商品管理过程中有两个类进行交互,分别是 ProductController 类,User 类和 Product 类, 进一步可以得到顺序图,明确 类与类之间的交互。如图 4-8 所示。 下下ProductControllerProduct 1 : 下下下下() 2 : 下下下下() 3 : 下下下下() 4 : 下下下下下下() 5 : 下下下下() 6 : 下下下下() 7 : 下下下下() 8 : 下下下下下下() 图 4-8 商品管理顺序图 江苏理工学院毕业设计说明书(论文) 第 19 页 共 52 页 5订单管理功能 XorderController +create(): String +update(): String +check(): String +delete(): String Xorder +id: Long +userId: Long +productId: Long +downTime: String +revTime: String 图 4-9 订单管理类图 由 4-9 静态类图可以发现,订单管理过程中有两个类进行交互,分别是 XorderController 类,Xorder 类,进一步可以得到顺序图,明确类与类之间的 交互。如图 4-10 所示。 XorderController下下下下ProductXorder 1 : 下下下下() 2 : 下下下下下下() 3 : 下下下下() 4 : 下下下下() 5 : 下下下下下下() 图 4-10 订单管理顺序图 江苏理工学院毕业设计说明书(论文) 第 20 页 共 52 页 4.2 数据结构与数据库设计 .1 基本实体表基本实体表9 9 序号序号表名表名说明说明 1user用户表,用于存放用户信息 2bussiness商家表,用于存放商家特有信息 3producct商品表,用于存放具体商品信息 4xorder订单表,用于存放订单信息 .2 数据库表设计数据库表设计10 10 表 4-1 用户表主要字段 字段名字段名说说 明明类类 型型是否为空是否为空主键主键 id 用户 ID bigint 否是 openid 微信 ID varchar 否否 login_name 用户帐号 varchar 否否 password 用户密码 varchar 否否 phone_num 联系方式 varchar 否否 表 4-2 商店表主要字段 字段名字段名说说 明明类类 型型是否为空是否为空主键主键 id 商店 ID bigint 否是 user_id 用户 ID bigint 否否 name 商店名称 varchar 否否 property 商店类别 varchar 否否 protocol 商店协议 varchar 否否 stat 审核状态 varchar 否否 江苏理工学院毕业设计说明书(论文) 第 21 页 共 52 页 表 4-3 商品表主要字段 字段名字段名说说 明明类类 型型是否为空是否为空主键主键 id 商品 ID bigint 否是 bussiness_id 商店 ID bigint 否否 name 商品名称 varchar 否否 price 商品价格 varchar 否否 description 商品描述 varchar 否否 image 商品图片 varchar 否否 stat 审核状态 varchar 否否 表 4-4 订单表主要字段 字段名字段名说说 明明类类 型型是否为空是否为空主键主键 id 订单 ID bigint 否是 user_id 用户 ID bigint 否否 product_id 商品 ID bigint 否否 down_time 下单时间 varchar 否否 rev_time 签收时间 varchar 否否 江苏理工学院毕业设计说明书(论文) 第 22 页 共 52 页 第 5 章 详细设计 5.1 开发准备 本系统采用了 Spring11框架开发了校园微快递系统。本系统采用的是 B/S 模式,即浏览器/服务器模式。在对 MySQL 数据库连接方面,会在 perties 配置文件中进行配置相关的连接信息,当系统发生改 动的时候,只需要简单的修改 perties 配置文件的连接信息即 可,增强了系统的可移植性。系统中会通过实体类来操作和数据库相关的数据, 在代码的耦合性方面有了很好的提高。另外,由于本系统采用了 MVC 模式12, 利用 Controller 将 Model 与 View 分离,能够很好地提高系统的开发效率,增强 程序的可维护性和拓展性。 将 perties 文件部分配置,用于连接数据库文件: #mysql database setting jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql:/localhost:3306/xet?useUnicode=true / 添加用户名至前台页面 redirectAttributes.addFlashAttribute(username, user.getLoginName(); / 返回至登录页面 return redirect:/login; /* 设定安全的密码,生成随机的salt并经过1024次 sha-1 hash */ private void entryptPassword(User user) / 产生一个8位的随机盐 byte salt = Digests.generateSalt(SALT_SIZE); / 对随机盐简单进行编码方式的加密后存入实体类中 user.setSalt(Encodes.encodeHex(salt); / 调用安全哈希算法,使用随机盐组合加密密码 byte hashPassword = Digests.sha1(user.getPlainPassword().getBytes(), salt, HASH_INTERATIONS); 江苏理工学院毕业设计说明书(论文) 第 24 页 共 52 页 user.setPassword(Encodes.encodeHex(hashPassword); 代码 5-1 后台商家注册 .2 普通用户注册普通用户注册 1.1.界面设计界面设计 普通用户可使用手机微信关注“校园微快递”公众号(微信号:xywkd520) 后,根据提示信息,输入个人信息完成注册。当然,普通用户也可以通过商家 注册方式完成注册。 图 5-2 用户注册界面 2.2.后台处理与实现后台处理与实现 用户注册通过控制器 WechatController 的 register()方法对用户完成注 册,微信对话框端注册主要是通过对用户的 text 请求进行解析并处理,最终返 回 XML 的消息。 后台校验处理代码: /* * 普通用户注册. */ public void register() if(con.startsWith(绑定+) User user = new User(); 江苏理工学院毕业设计说明书(论文) 第 25 页 共 52 页 / 设定学校名称 user.setSchoolName(江苏理工学院); con = con.substring(con.indexOf(+)+1); try if(accountService.findUserByOpenid(FromName)!= null) content = 您好,您已成功绑定,请解绑原先信息再绑定,谢谢使用!n 解绑格式:解绑; return getBackXMLTypeText(toName, FromName, content); catch(Exception e) e.printStackTrace(); int flag=con.indexOf(+); user.setName(bs); flag=con.indexOf(+); user.setLoginName(user.getStuNum(); accountService.registerUser(user); ontent = 恭喜您绑定成功!; 代码 5-2 用户注册 .3 管理员,商家登录管理员,商家登录 1.1.界面设计界面设计 管理员,或商家可以在浏览器输入 ,填写用户名及密码, 点击登录按钮,即可登录到系统管理界面。 图 5-3 管理员,或商家登录界面 2.2.后台处理与实现后台处理与实现 江苏理工学院毕业设计说明书(论文) 第 26 页 共 52 页 管理员,商家的登录,系统会通过 shiro13的 FormAuthenticationFilter 对用户填写的用户名及密码进行判断,如果成功则进入系统管理页面。 后台部分处理代码: /login = authc /wechat = anon /mbhome/* = anon /mblogin/* = anon /mbuser/* = anon /mbproduct/* = anon /mbxorder/* = anon /register/* = anon 代码 5-3 后台管理员,商家登录 .4 普通用户登录普通用户登录 1.1.界面设计界面设计 普通用户可使用用户名(默认用户名为:学号)与密码进行登录,登录成 功后即可进行相关的操作。 江苏理工学院毕业设计说明书(论文) 第 27 页 共 52 页 图 5-4 普通用户登录界面 2.2.后台处理与实现后台处理与实现 首先,后台通过控制器 MbLoginController 的 login()方法返回登录页面, 用户点击“登录”按钮后,后台通过控制器中的 myLogin()方法来处理用户登录, 对用户的用户名及密码进行判断后,正确则返回个人管理页面。 后台处理代码: /* 用户登录,并记录登录标记至sessionStorage */ public void myLogin(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException PrintWriter out = response.getWriter(); User user = new User(); / 获取用户的用户名 String loginName = request.getParameter(loginName); / 获取用户的密码 String password = request.getParameter(password); user = accountService.findUserByLoginName(loginName); / 判断用户是否存在及用户名和密码是否匹配 if(user != null person.put(userId, Encodes.encodeHe

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论