一.问题:前段需要根据日期查询出预约疫苗人员列表,并排序展示,如下图:

二.实现
在实现后端逻辑过程中,主要关注以下几点:
(1)由于预约人数在0~1000之间,所以排序时需要生成001、002...999类似的序列号,代码如下:
public class GenerateNum{
static AtomicInteger val = new AtomicInteger(4);
/**
* 生成001,002序列
* @param startValue
* @return
*/
public static String getNext(int startValue){
val = new AtomicInteger(startValue);
int nextVal= val.incrementAndGet();
return String.format("%03d",nextVal);
}
}
(2)使用空格进行拆分字符串
String[] split = "ssss".split("\\s+");
(3)sql语句的编写
由于数据库中日期字段为TIMESTAMP类型,形如“YYYY-mm-dd:HH:mm:ss”的形式,但前端上送为“YYYY-mm-dd”形式,所以查询时需求对日期格式进行截取查询,如下:
select
*
from
table
where
WHITE_ID = #{whiteId}
and
DATE_FORMAT(CREATE_TIME,'%Y-%m-%d') = #{dateTime}
order by
CREATE_TIME
asc
本文介绍了一种前后端交互的场景,即前端根据日期查询预约疫苗的人员列表并按序展示。在后端实现中,重点包括生成三位数序列号以排序,使用空格拆分字符串,以及处理日期格式的SQL查询。代码示例展示了如何生成序列号,如何对字符串进行拆分,以及如何编写SQL查询语句来匹配前端传入的日期格式。
6584

被折叠的 条评论
为什么被折叠?



