Java学习Day51:紫云山金丹培育基地(移动端开发之多表联查,发送短信验证码)

server/2024/10/24 6:44:19/

移动端开发主要有三种方式:

1、基于手机API开发(原生APP)

2、基于手机浏览器开发(移动web)

3、混合开发(混合APP)

1.发送短信验证码

java"><dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-core</artifactId><version>3.3.1</version>
</dependency>
<dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-dysmsapi</artifactId><version>1.0.0</version>
</dependency>

在health_common工程中导入如下通用组件

1.ValidateCodeUtils工具类:用来生成随机验证码

2.SMSUtils工具类:用来发送验证码

3.RedisMessageConstant常量类:

java">package com.easthome.constant;public class RedisMessageConstant {public static final String SENDTYPE_ORDER = "001";//用于缓存体检预约时发送的验证码public static final String SENDTYPE_LOGIN = "002";//用于缓存手机号快速登录时发送的验证码public static final String SENDTYPE_GETPWD = "003";//用于缓存找回密码时发送的验证码
}

2.多表联查

多表联查还是基于前端数据结构,前端如下:

   <!-- 页面内容 --><div class="contentBox"><div class="card"><!--套餐详情--><div class="project-img"><img :src="imgUrl" width="100%" height="100%" /></div><div class="project-text"><!--套餐名字--><h4 class="tit">{{setmeal.name}}</h4><!--套餐备注--><p class="subtit">{{setmeal.remark}}</p><p class="keywords"><!--套餐性别和年龄--><span>{{setmeal.sex == '0' ? '性别不限' : setmeal.sex == '1' ? '男':'女'}}</span><span>{{setmeal.age}}</span></p></div><!--<div class="project-know"><a href="orderNotice.html" class="link-page"><i class="icon-ask-circle"><span class="path1"></span><span class="path2"></span></i><span class="word">预约须知</span><span class="arrow"><i class="icon-rit-arrow"></i></span></a></div>--></div><div class="table-listbox"><div class="box-title"><i class="icon-zhen"><span class="path1"></span><span class="path2"></span></i><span>套餐详情</span></div><div class="box-table"><div class="table-title"><div class="tit-item flex2">项目名称</div><div class="tit-item  flex3">项目内容</div><div class="tit-item  flex3">项目解读</div></div><div class="table-content"><ul class="table-list"><!--套餐对应的检查组遍历当前套餐对象中的检查组--><li class="table-item" v-for="checkgroup in setmeal.checkGroups"><div class="item flex2">{{checkgroup.name}}</div><div class="item flex3"><!--套餐的检查组对应的检查项--><label v-for="checkitem in checkgroup.checkItems">{{checkitem.name}}</label></div><div class="item flex3">&nbsp;&nbsp; {{checkgroup.remark}}</div></li></ul></div><div class="box-button"><a @click="toOrderInfo()" class="order-btn">立即预约</a></div></div></div></div>

前端代码中,使用遍历获取数据,得到steMeal,setMeal中的checkGroup以及checkGroup中的checkItem,因为三者都是后端javaBean,所以可以在前两者中设置后者的List<JavaBean>,

再使用循环赋值,得到一条套餐数据对应多条查询组再对应多条查询项!

java">@Overridepublic SetMeal querySetMealById(Integer id) {//先查询套餐SetMeal setMeal = setMealMapper.querySetMealById(id);//根据套餐的id,查询对应的检查组List<CheckGroup> checkGroupList = checkGroupMapper.queryCheckGroupBySetMealId(id);//检查组集合,存储到套餐对象中setMeal.setCheckGroups(checkGroupList);//循环遍历检查组的集合for (CheckGroup checkGroup :checkGroupList) {//checkGroup.getId();//获取检查组的ID//查询检查组对应的检查项List<CheckItem> checkItemList = checkItemMapper.queryCheckItemByCheckGroupId(checkGroup.getId());//检查项集合,存储到检查组对象checkGroup.setCheckItems(checkItemList);}return setMeal;}


http://www.ppmy.cn/server/134371.html

相关文章

阿里云项目启动OOM问题解决

#1024程序员节&#xff5c;征文# 问题描述 随着项目业务的增长&#xff0c;系统启动时内存紧张&#xff0c;每次第一次启动的时候就会出现oom第二次或者第n的时候&#xff0c;就启动成功了。 带着这个疑问&#xff0c;我就在阿里云上提交了工单&#xff0c;咨询为什么第一次…

文通车牌识别相机在工地称重应用中的卓越表现

在现代工地管理中&#xff0c;高效、准确的称重系统是确保工程顺利进行的关键之一。而文通车牌识别相机的出现&#xff0c;为工地称重应用带来了全新的解决方案。 一、工地称重面临的挑战 传统的工地称重方式往往存在着一些问题。人工记录车牌和重量信息容易出现错误&#xff0…

STM32实现毫秒级时间同步

提起“时间同步”这个概念&#xff0c;大家可能很陌生。一时间搞不清楚是什么意思。 我理解“时间同步”可以解决多个传感器采集数据不同时的问题&#xff0c;让多个传感器同时采集数据。 打个比方。两个人走路&#xff0c;都是100毫秒走一步&#xff08;频率相同是前提&…

如何保护服务器的系统日志

系统日志是服务器健康状况的重要指标&#xff0c;同时也是在发生安全事件时进行故障排查和攻击源分析的关键工具。然而&#xff0c;日志文件本身也是潜在的安全风险点&#xff0c;因为它们可能包含敏感信息&#xff0c;且容易成为篡改或删除的目标。本文将介绍几种保护服务器系…

什么是机器人流量?如何识别和预防有害机器人流量?

机器人流量是指由自动软件程序&#xff08;或机器人&#xff09;而非人类用户生成的互联网流量。机器人可以执行各种任务&#xff0c;包括有益的和恶意的&#xff0c;而且速度比人类快得多。 据估计&#xff0c;大约 30% 的互联网流量来自旨在窃取内容、破坏服务和开展其他恶意…

LLM - 使用 Neo4j 可视化 GraphRAG 构建的 知识图谱(KG) 教程

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/142938982 免责声明&#xff1a;本文来源于个人知识与公开资料&#xff0c;仅用于学术交流&#xff0c;欢迎讨论&#xff0c;不支持转载。 Neo4j …

JAVA开发环境:IntelliJ IDEA、Java JDK、Maven 安装配置

一、安装IntelliJ IDEA 准备安装包 通过百度网盘分享的文件&#xff1a;idea2023.2U**.zip 链接&#xff1a;https://pan.baidu.com/s/1NB04A-jMXhZKsewYshGt-Q 提取码&#xff1a;oeft 安装 IntelliJ IDEA &#xff08;1&#xff09;、解压&#xff0c;安装文件如下&#…

HarmonyOS鸿蒙分布式文件操作的时候权限问题

对于分布式文件跨设备操作的时候&#xff0c;一定记得设置文件等级权限&#xff0c;否则会出现各种不同的异常&#xff1a; setSecurityLabel 设置文件权限 代码&#xff1a; //设置文件权限securityLabel.setSecurityLabel(destUriPath, s1).then(() > {PhLog.info(Succee…