基于SpringBoot的仿饿了吗外卖APP设计与实现

本文档详述了一个集登录、商品浏览和购物车功能于一体的安卓App开发过程。采用SpringBoot作为后端框架,实现了数据流向,包括商品信息、用户信息和订单状态的管理。前端使用Kotlin语言,遵循MVVM架构,利用RecycleView、cardView等技术构建用户界面。项目遵循一定的编码风格,并运用Git进行协作,同时整合了腾讯云的消息推送和云短信服务。在技术选型上,后端结合了SpringBoot、阿里云服务和HTTPS,前端则运用了MVVM、Retrofit和Glide等库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、需求

本App主要实现了用户的登录,商品的浏览,购物车查询等功能,如下表所示

二、主体框架

2.1 整体框架

2.2 数据的流向

数据类型数据流向
交易商品信息数据库->客户
商品类别信息数据库->客户
订单状态及信息数据库->客户(仅保留于本机)
用户个人信息数据库->客户
购物车信息数据库->客户(仅保留于本机)
交易支付情况数据库->客户

三、数据库设计

3.1 整体设计图

  • 用户地址表

  • 订单详细表

  • 菜单标签表

3.2 数据库表

3.3 数据库表关系图

四、实现

4.1 代码的组成

4.1.1 后端代码组成说明

客户端使用了SpringBoot框架,主要可分为Mapper层,Service层,Controller层,Bean层,接下来以图片配文字的形式说明大致功能。

4.1.2 客户端代码组成说明

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XAe1Qc0c-1654654426418)(https://www.writebug.com/myres/static/uploads/2022/6/7/c6cd1667534e62bdd6dabdaf635a92d0.writebug)]

4.2 编码风格约定

本次项目我们使用的是Git远程协作,代码规范是参考书本的MVVM框架,具体编写风格也与书本上的类似,具体文件命名风格以及框架率先布局都是在正式编写代码前讨论好的。

接下来展示下在一个月左右时间我们在Gitee上更新的代码情况数据。

4.3 文件清单

五、使用说明

5.1 主界面

5.2 验证码登录界面

5.3 密码登录界面

5.4 商品界面

5.5 口袋(购物车)界面

5.6 我的页面

5.7 消息推送

六、使用到的技术

后端:

  • 运用SpringBoot

  • 阿里云Linux

  • Nginx

  • Https技术

  • 接口数据令牌传输

  • 私密数据MD5加密

前端:

  • 运用MVVM框架

  • 运用RecycleView实现页面滑动列表

  • 运用cardView卡片式布局

  • 运用SQLite实现用户部分信息的存储

  • 运用SharedPreferences文件存储功能

  • 运用库Retrofit发送网络请求解析数据

  • 运用MaterialDesign进行UI界面开发

  • 运用Glide库进行网络图片读取

  • 网络数据实现双向绑定

  • 运用腾讯云消息推送机制

  • 运用腾讯云云短信

  • Kotlin协程

  • Kotlin特殊函数

  • 协作工具:git

  • 平台:gitee

七、小结

安卓开发使用了新的语言Kotlin,相对Java,kotlin的资料是非常少的,案例也是很少,在这次课程设计中我也是花了很多时间找相关资料,《第一行代码》这本书前前后后也翻了好几遍,也渐渐明白了Kotlin语法糖的一些特性,编写代码的习惯也有了较好的规范。在后端方面,因为对SpringBoot有一定的实战经验,所以此次我包括了后端开发,后端功能我写的并不多,但现有的功能的逻辑性细节还是挺强挺多的,比如用户这一方面,除了个人信息之外,还添加了密码加盐加密,携带令牌Token等,后端增加了短信验证码功能。我比较喜欢探究新的东西,这次界面设计上,还运用了完全的卡片式布局,消息推送,启动页广告,夜间模式等功能,这些功能实现起来并不容易,但是也挺有趣的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值