一、该问题的重现步骤是什么?
按年月日时分秒这样可以查询时间区间,但是按年月日就样的日期格式查询后台就报错
2. 代码描述如下
前端vue如下
{
label: "消费日期",
prop: "createTime",
search: true,
type: "daterange",
format:"yyyy-MM-dd",
valueFormat:"yyyy-MM-dd",
searchSpan: 8,
searchRange: true,
searchOrder: 0,
addDisplay:false,
rules: [
{
required: true,
message: "请输入消费日期",
trigger: "blur",
},
],
},
后端如下
/**
* 消费日期
*/
@DateTimeFormat(pattern=DateUtil.PATTERN_DATE)
@JsonFormat(pattern=DateUtil.PATTERN_DATE)
@ApiModelProperty(value = "消费日期")
private LocalDateTime createTime;
这里的PATTERN_DATE是yyyy-MM-dd
3. 运行报错如下
Caused by: java.text.ParseException: Unparseable date: "2021-02-01"
at java.text.DateFormat.parse(DateFormat.java:366)
at org.springblade.core.tool.utils.ConcurrentDateFormat.parse(ConcurrentDateFormat.java:77)
at org.springblade.core.tool.utils.DateUtil.parse(DateUtil.java:403)
at org.springblade.core.mp.support.SqlKeyword.lambda$buildCondition$0(SqlKeyword.java:95)
at java.util.LinkedHashMap.forEach(LinkedHashMap.java:676)
at org.springblade.core.mp.support.SqlKeyword.buildCondition(SqlKeyword.java:64)
at org.springblade.core.mp.support.Condition.getQueryWrapper(Condition.java:95)
at org.springblade.core.mp.support.Condition.getQueryWrapper(Condition.java:79)
at org.business.lcyj.finance.controller.XjOrderInfoController.list(XjOrderInfoController.java:86)
at org.business.lcyj.finance.controller.XjOrderInfoController$$FastClassBySpringCGLIB$$639f252a.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:771)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749)
... 86 common frames omitted
二、你期待的结果是什么?实际看到的又是什么?
只按年月日这样的日期格式查询 不带时分秒,实际看到的是后台报错
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
bladex cloud版 版本号是2.7.0.RELEASE 全部运行在widows上面
哥们,我看你发了好几贴了。
mysql时间查询要用大于、小于、等于、大于等于、小于等于去查,不能用like查
比如你要查今天的创建数据2021-02-03
那就要
and create_tieme >= '2021-02-03'
and create_time < '2021-02-04'
其次你要注意,mybatis 的mapper是xml,大于小于符号要转义
再次如果你使用mybatis-plus的wrapper设置条件
就要
LocalDate tody = LocalDate.now();
......
lambdaWrapper.ge(XXX::getCreateTime, today)
.lt(XXX::getCreateTime, today.plusDay(1L));
讨论(1)
官方新品
- 热议问题
-
使用注解配置数据权限
1
-
服务注册上来了但是报403错误
2
-
有没有办法在blade-tsdb-influxdb2里也能打印日志?因为在blade-tsdb-influxdb2中加了些自己的业务代码
1
-
生成的后端代码,swagger调试直接报空指针 DataScopeModel.getResourceCode()
2
-
项目启动nacos报错,还需要配置什么东西吗
1
-
连接sqlserver数据库,主键自增长,批量保存失败
1
-
服务自定义包名,服务注册成功,但swagger中没有api接口
1
-
partial write: points beyond retention policy dropped=1
1
-
这个框架怎么修改数据库连接池数量
1
-
增加新的驱动类
1
扫一扫访问 Blade技术社区 移动端