




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于微信小程序的商城设计毕业论文摘要随着“互联网+”的大潮兴起,平台型应用再受热捧。其中,微信小程序凭借其强大的 用户基础及其应用时的便捷而深受欢迎。在此基础上,以小程序为载体的社群电商,将具 有相同兴趣的社群成员组织在一起,推广与之需求高度匹配的产品或服务,轻松实现流量 变现。因此,结合以上优势设计并实现基于JavaWeb的小程序商城,具有一定的研究意义 和商业价值,符合我国互联网精准化营销和个性化服务的趋势。本系统主要由微信小程序客户端、服务器、数据管理端构成,前端代码基于Layui,封 装工具类,使用的是H-ui Admin。客户端的页面实现通过网络与服务器REST API接口通信 获取
2、MySQL数据。本人重点参与网上购物系统客户端、服务器以及数据库的设计、开发、 测试工作。在系统的设计与实现过程中,对客户端的代码进行全局的MVC模式设计控制,采用 template模板增加代码的复用性,并创建客户端用户的token管理机制进行用户身份验证 与权限分级。本文重点阐述小程序商城客户端的商品信息展示、商品分类、购物车、下单 支付,个人信息管理及数据库设计六大模块的设计和实现过程。采用了 JavaWeb和 springboot框架作为后台开发,HTML+JS+CSS和微信web开发工具作为前端开发,遵守微 信的开发规范,完成了小程序商城的基本功能,系统运行流畅,可以正常使用。 关键词
3、:电商;JavaWeb;小程序商城;购物;ABSTRACTWith the rise of Internet ,platform-based applications are becoming more popular. Among them,WeChat Mini Program with its strong user base and its application when convenient and popular. On the basis of this,the community e-commerce with the small program as the carrier
4、,will have the same interest community members to organize together, promotes the product or the service which is highly matched with its demand,realizes the flow realization easily. Therefore,combining the above advantages to design and implement the Mini Programs Mall based on Java Web has certain
5、 research significance and commercial value, which is in line with the trend of precision marketing and personalized service of the Internet in China.The system is mainly composed of WeChat Mini Program client,server,data management,front-end code based on Layui,encapsulating tool class,using H-ui A
6、dmin. The clients page implementation acquires MySQL data by communicating with the server REST API interface through the network. I focus on the online shopping system client,server and database design,development,testing work.In the design and implementation of the system,the clients code is contr
7、olled by the global MVC pattern design,the template template is used to increase the reusability of the code,and the clients token management mechanism is created for user authentication and permission classification. This paper focuses on the design and implementation of the six modules of the smal
8、l program mall clients commodity information display,commodity classification,shopping cart,order payment,personal information management and database design. Using Java Web and SSM framework as background development,HTML JSCSS and WeChat web development tool as front-end development Send,abide by
9、the development specifications of WeChat,completed the basic functions of Mini Programs Mall, the system runs smoothly,can be used normally.Keywords: E-commerce;Java Web;Mini Programs Mall;Shopping;目录引 言错误!未定义书签。第一章系统的分析错误!未定义书签。可行性分析错误!未定义书签。需求分析错误!未定义书签。系统环境开发错误!未定义书签。第二章系统的总体设计错误!未定义书签。工具及关键技术的介绍
10、 错误!未定义书签。Vue技术介绍错误!未定义书签。pringbOOT介绍错误!未定义书签。系统流程错误!未定义书签。系统模块设计错误!未定义书签。有了系统流程描述和流程图 错误!未定义书签。第三章数据库的设计错误!未定义书签。数据库设计原则错误!未定义书签。数据库实体设计错误!未定义书签。数据库结构设计错误!未定义书签。第四章程序模块的界面设计错误!未定义书签。用户注册错误!未定义书签。输入的用户注册信息保存到数据库 错误!未定义书签。用户列表错误!未定义书签。购物车模块错误!未定义书签。下订单模块错误!未定义书签。第五章系统调试与测试错误!未定义书签。5.1测试分析错误!未定义书签。结 论
11、错误!未定义书签。参考文献 错误!未定义书签。致 谢错误!未定义书签。第一章 系统的分析可行性分析技术可行性:“外卖系统”是基于B/S架构,采用MVC的设计模式,VUE开发技 术,java编程语言,Springboot技术和MySql数据进行开发实现。在 B/S 架构下,实务处理逻辑模块从客户机分类出来,客户机通过浏览器可以对 服务器发出数据请求,由服务器与数据库打交道完成事务处理工作后将数据库传回客 户端进行显示。MVC 设计模式,应用程序的输入、处理和输出被强行分开,其三个核心部件:模 型、试图和控制器都各自处理自己的任务。由于视图层和业务层的分离,更改视图层 代码时不用重新编译模型和控制
12、器代码,使其可以移植和复用以及功能的扩展。MYSQL数据库:作为以重关联数据库,MySQL将数据保存在不同的表中,增加存 取的速度,提高操作的灵活性。并且 MYSQL 采用最最常用标准化进行数据库的访问, 简化开发流程。并且mysql是开源比较成熟的数据库,在数据的安全性方面技术已经 比较稳定。MyBatis它是一个代码开放式的框架,它比较好用,而且可以把Java对象持久化 于数据库当中,它把很多 JDBC 的那些复杂性代码抽离出来,然后经过自身内部的封 装和改造把原有的代码复杂性简单化了,还提供了一个让人很好使用而且很简单的 API借口给我们调用,这样我们就很容易的与数据库方面交互。需求分析
13、软件开发中,需求分析是必不可少的,它有助于了解客户需求,对软件的功能由初步 的构思。综合市场中已有的外卖软件,我对外卖系统进行了初步需求分析。系统的核心功能是 订单管理、物流信息管理、配送管理。系统描述本系统包括两个基本部分:一是前台用户的操作程序,用户在前端可以浏览网页, 查看相关信息。通过注册可以形成一个有密码与之匹配的账号,用户可以使用该账户登陆 系统。在登陆的情况下可以开始点餐。权限在记账系统中,权限的主体分为了用户和管理员,用户可以通过登陆操作记账操作。 而系统管理员可以用户进行管理,进行权限的分配,也可以修改用户的信息,如下图:管理员列表M新增ID 用户名邮箱手机号状态创建时间 H
14、YPERLINK mailto:rootren.ren rootren.ren. 1361234567admin正常io8新增角色名称备注用户授权 系统管理管理员列表查看新增修改删除角色管理 查看图管理员列表示意图用例识别在角色的基础上,可以识别出与权限相关的用例,从而得到系统的用例模型,如图;l ill管理联必找特敷道;IL空诵图系统的用例模型系统环境开发该系统采用B/S架构,使用vue作为前端框架,后台数据实现使用MYSQL软件环境windows7数据库 MYSQL-Navicat Premium 15编程软件IDEA系统的总体设计开发工具及关键技术的介绍记账系统基于B/S结构,采用MVC
15、设计模式,java编程语言,SPRINGBOOT、VUE和 mysql数据库。以idea IDE最为开发工具,内置Tomcat9.0为服务器进行开发实现的。B/S结构概述B/S结构概述B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet 技术的兴起,对C/S结构的一种变化或者改进的结构。在B/S结构下,用户工作界面是通 过浏览器来实现,极少部分事务逻辑在前端Browser实现,但是主要事务逻辑在服务器端 Server实现,形成所谓三层结构。相对于C/S结构属于“胖”客户端,需要在使用者电脑 上安装相应的操作软件来说,B/S结构是属于一种“瘦”客户端,大多数或
16、主要的业务逻 辑都存在在服务器端。因此B/S结构的系统只需要安装通用的浏览器即可对服务器进行访 问。系统升级或维护时也只需更新服务器端软件,这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量。与C/S结构比较B/S架构软件具有以下优势:1维护和升级方式简单。目前,软件系统的改进和升级越来越频繁B/S架构的产品明显体现着更为方便的特性。 对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑, 效率和工作量是可想而知的,而B/S架构的软件只需要管理服务器就行了,所有的客户端 只是浏览器根本不需要做任何的维护。无论用户的规模有多大,有多少,分支机构都不 会增
17、加任何维护升级的工作量所有的操作只需要针对服务器进行,如果是异地只需要把 服务器连接专网即可实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越 来“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起 来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的惊人的。因此维护和升级革命的方式是“瘦”客户机“胖”服务器。2应用服务器运行数据负荷较重。由于B/S架构管理软件只安装在服务器端Server上 网络管理人员只需要管理服 务器就行了,用户界面主要事务逻辑在服务器Server端完全通WWW浏览器实现,极少部 分事务逻辑在前端Browser实现所有的客户端
18、只有浏览器网络管理人员,只需要做硬件维 护。但是 应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设 想。因此,许多单位都备有数据库存储服务器,以防万一。Vue技术介绍Vue (读音/vju:/,类似于view)是一套用于构建用户界面的渐进式框架。与其它大型框 架不同的是,Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易 于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支 持类库结合使用时,Vue也完全能够为复杂的单页应用提供驱动。1、Vue.js可以说是MVVM架构的最佳实践,是一个JavaScriptMVVM库,是一套构建
19、 用户界面的渐进式框架。专注于MVVM中的ViewModel,不仅做至1了数据双向绑定,而且 也是一款相对比较轻量级的JS库,API简洁2、因为vue的双向数据绑定特性以及技术的成形,实现了项目的热加载,改完页面 代码能立即在浏览器方面显示效果,提高开发效率3、Vue.js是采用Object.defineProperty的getter和setter,并结合观察者模式来实现 数据绑定的。当把一个普通Javascript对象传给Vue实例来作为它的data选项时,Vue将 遍历它的属性,用Object.defineProperty将它们转为getter/setter。用户看不到getter/set
20、ter, 但是在内部它们让Vue追踪依赖,在属性被访问和修改时通知变化。pringboot 介绍SpringSpring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架,由 Rod Johnson 在其著作Expert One-On-One J2EE Development and Design。Spring 是为了 解决企业级应用开发的复杂性而创建的,使用Spring可以让简单的JavaBean实现之前只有 EJB才能完成的事情。但是Spring不仅仅局限于服务器端开发,任何Java应用都能在简单 性、可测试性和松耦合性等方面从Spring中获益。1、Spring
21、是如何简化Java开发的为了降低Java开发的复杂性,Spring采用了以下4种关键策略:1、基于POJO的轻量级和最小侵入性编程;2、通过依赖注入(口1)和面向接口实现松耦合;3、基于切面(AOP)和惯例进行声明式编程;4、通过切面和模版减少样式代码;2、SpringBoot四个主要特性1、SpringBoot Starter:他将常用的依赖分组进行了整合,将其合并到一个依赖中,这 样就可以一次性添加到项目的Maven或Gradle构建中;2、自动配置:SpringBoot的自动配置特性利用了 Spring4对条件化配置的支持,合理 地推测应用所需的bean并自动化配置他们;3、命令行接口
22、:(Command-line-interface, CLI): SpringBoot 的 CLI 发挥了 Groovy 编 程语言的优势,并结合自动配置进一步简化Spring应用的开发;4、Actuatir:它为SpringBoot应用的所有特性构建一个小型的应用程序。但首先,我 们快速了解每项特性,更好的体验他们如何简化Spring编程模型。系统流程在第一章的用例图中,已经定义了系统角色及用例模型。作为一个完整的记账软件, 有必要知道整个系统运行流程这有利于我们明确系统开发任务和功能模块。用户后登陆 网站,新建自己的账户和开支类别,然后开始记账,每个账户都能对账,这样保证的数据 的准确性和明
23、晰性 用户当然也可以修改自己的信息 包括密码,最后用户可以退出系统。系统模块设计有了系统流程描述和流程图根据流程图将系统划分为以下模块:表系统功能模块设计表a |系统功能镶块应计杼号功能模块类别功能模块L前台操作端注册、登录、个人心思管理2账户管理3开支类别管理4对账5记账及转账6后台笆理端用户管理7公告R默认F支管理后台管理模块它与前台用户的个人信息管理功能模块是不同的。这里管理的是所有的注册用户信息, 是真正意义上的用户管理模块表用户公里功能模块2-7用户管理功能模玳序 号功能列表功能明细1管理员登录杵理物人用户名和谓旧r系统进行验证2后台蛤证管理a进行功能模块笆理时,都要验证4杳者用户信
24、息杳看用户信息1删J除用户删除用户数据库的设计记账系统是以MSQL5.5建立起来的,在对本系统个子模块功能分析的基础上设计了数 据库的表及表之间的关系图,并根据关系图实现了数据库添加、查找、修改、删除、浏览 等基本操作。数据库设计原则.在完成数据存储的基础上,基本表的个数要尽量少。.确保各个表之间对应关系的同时,主键的个数要尽量少。键是表间连接的工具主键 越少,表间的连接就越简单。.字段个数越少越好。所有基本表的设计均应尽量符合第三范式,减少数据冗余,数 据库是在表的基础上创建完成的,所有对象的属性都以元组的形式在表中表示。程序员必须对数据库的数据进行必要的维护。在开发设计数据库时 应考虑数据
25、库的 使用过程中可能出现的问题,设计数据库有一定的数据恢复功能 使数据库在被使用过程中对用户的影响降到最低的程度,维护的花费降到最低。数据库系统要求具有以下方面的特点:.结构合理,所建立的数据冗余度小,独立性强。. 2.增加、修改、查询和统计快速而准确,保密性和可靠性好。.有一定的数据恢复功能,便于后期的维护。3.2数据库实体设计在对“外卖系统”各个功能分析的基础上,可以确定数据库应该包含以下实体管理员 信息实体(admin).通过账号和密码登录系统后台,可以修改自己信息,包括密码.可以对用户进行查看和删除操作.可以修改默认的收支类别。用户信息实体(user)1、通过注册成为网站会员2、登录后
26、可以修改自己信息3、可以开始进行记账。3.3数据库结构设计外卖系统采用MSQL数据库进行系统设计和开发,分类信息表、商品信息表,如下图。start.dlstrl enddistri shop_prke shop num hopjmg shop catemtint decimal int rchrint11117111502S5配送卸量商品世址 庙品英别宕长度不公null注1100中手号cate_namevarchar320克品存名类型1爨点不是null度拟腱江轻芦1 序号商品各商品洋鲂mtrchartestidshopiw 讣叩text字段宏引 外蜒 融及靠 选项 汪径 SQL HE程序模块的
27、界面设计程序注册及登录个人信息管理功能模块:任何系统功能的实现都离不开角色的参与, 为了便于系统的管理,需要对不同用户赋予不同的权限和功能,因此需要对用户进行管理, 设计了个人信息管理模块.。由于本系统采用了 MVC设计模式 下面将用MVC的三层结构 说明个人信息管理模块的功能。用户注册用户在进行注册的过程中,输入用户名移开鼠标,文本框失去焦点后会触发onblur方 法,此时系统会提取输入的用户名与数据库用户表中已存在的用户名进行比对,若数据库 用户表中已经存在输入的用户名,将提示不能注册若不存在输入的用户名“可以注册”的 提示。该操作主要的代码如下PostMapping(/sys/login
28、)public MapString, Object login(RequestBody SysLoginForm form)throws Exception /*boolean captcha = sysCaptchaService.validate(form.getUuid(), form.getCaptcha(); if(!captcha)return R.error(验证码不正确);*/用户信息SysUserEntity user = sysUserService.queryByUserName(form.getUsername();/账号不存在、密码错误if(user = null |
29、 !user.getPassword().equals(new Sha256Hash(form.getPassword(), user.getSalt().toHex() return R.error(账号或密码不正确);账号锁定/*if(user.getStatus() = 0)return R.error(账号已被锁定,请联系管理员”);*/ /生成token,并保存到数据库R r = sysUserTokenService.createToken(user.getUserId();return r;* WeChatV10:14会员中心立即资0Q积分我的汇接板登录优秀至资金用成为.谴断梗小
30、箱5登录-我们不会公布您的这些信后三请发票O图4.1.1管理员登录示意图输入的用户注册信息保存到数据库用户输入注册信息后,在第二层逻辑访问层将使用java语言使用的save()方法将输入的用户信息封装到对象user中,然后调用 包下 SysUserEntity .java 中的对象 SysUserEntity 的 add()方法,同时连接数据库,通过对象的方式添加到数据库中,代码如下:/* *保存用户*/SysLog(保存用户)PostMapping(/save)/*RequiresPermissions(sys:user:save)*/public R save(RequestBody Sy
31、sUserEntity user)/*ValidatorUtils.validateEntity(user, AddGroup.class);*/*user.setCreateUserId(getUserId();*/sysUserService.saveUser(user);return R.ok();用户列表将注册用户信息保存到管理账户中,可直接观察到目前注册的账户数目,主要代码如下/*用户列表*/RequestMapping(/list)/*RequiresPermissions(modules:datatotal:list)*/public R list(RequestParam Ma
32、p params)PageUtils page = dataTotalService.queryPage(params);return R.ok().put(page, page);购物车模块用户对菜单点击订购后就会添加到购物车中,在购物车中有删除某个已选菜单、继续采购、修改菜单数量、下订单功能。购物车界面设计4.5下订单模块下订单模块 选购菜单结束后,点击“去下订单”,就跳转到下订单界面,其中必须填写收货人信息、详细地址、联系电话、付款方式信息。爆效昔心O W*+* WeCh 旨 G10:51009 三),输入搜索关键同秒杀和一痹沿上装髓价区儿童事衣骂童短地独相启季动儿园园眼林版男女莹装春2
33、9&Q旧,加外+图诘I 491后却跖4怎百H的图案毛衣190毛衣耻4.5订单查询模块订单查询模块 用户成功提交订单后,在订单查询中可对菜单查 看,可以根据订单的处理状态查看,用户也可以将管理员未做过任 何处理的订单删除。第五章 系统调试与测试重点测试目标和测试计划,对项目测试用例,并分析测试结果是否达到系统预期,如 未达到提出改进措施。测试项目目标根据测试范围的不同,如吞吐率、访问时间等等,分 析项目模块,指标功能实现,边界条件是否实现等等,测试用例根据测试目标来进行设计(表 5.1)功馋溶试概述UBiASw 予GMO】功能描述用户在求功能VRL用例目的测试用户是否能登录峨功前提条件进入川户矍
34、求界面割试操作编号输2动作期望的结加响应实际情况1L不 Ml H正确错谩编号1叫人不存荏的用户名, 不填写密码系统捉小击网不能为 空系统根小密叫不 能为空正确5.1测试分析1、部分数据未能自动生成图表数据2、程序中反映出现字符乱码现象功能恻优测试编号GSOOL功能描述龈电统计功能LRL用例目的测试账收统计是否存在而糖条仲进入用户登录界面泅试操作编号榆A/动作期里的输畀响应嘿际情况是否正确错误褊号1输入住的月份展示H体触据展示具体霰据正确2输入不存在的月份系统提小谓眄错误系统提小该月份没有敷理正确3程人春倒足饰展示具体数据展示具悻数据正确4输入不存在的年阶系统提示密码铺说蔡统提示该年份 没有效锹正确结论在经过几个月努力后,在老师指导下,我对web开发有了系统的深入的理解,同时对 开发技术有了进一步的经验,本系统用例比较成熟的web开发框架设计,实现B/S结构, 具有相当的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 10.2 二倍角的三角函数 原卷版
- 2025年度风险投资退出机制协议书
- 二零二五年度房屋租赁合同中乙方安全事故处理细则
- 2025年度租赁房屋合同转让与租户紧急事件处理及应急预案合同
- 扎实基础土木工程师试题
- 二零二五年度劳动解除协议书:建筑行业工人退工补偿及社会保障协议
- 二零二五年度二手车贷款购车风险评估委托协议
- 二零二五年度情人协议书:情侣情感保障与生活责任承担合同
- 二零二五年度幼儿园课后托管免责事项及责任界定协议
- 二零二五年度文化创意产业个人股权转让合同
- 《渡槽安全评价导则》
- 有效沟通技巧课件
- 中建二测考试题库及答案
- 沙特阿拉伯2030年愿景
- 《现代汉语》课件-词类(下)
- 肿瘤发生的分子机制课件
- 2024小学语文新教材培训:一年级语文教材的修订思路和主要变化
- 2024-2030年中国五星级酒店产业未来发展趋势及投资策略分析报告
- 2024-2030年白酒零售产业规划专项研究报告
- 浙江宁波人才发展集团有限公司招聘笔试题库2024
- 《国土空间规划》-实验教学大纲
评论
0/150
提交评论