当前位置: 首页 > news >正文

LocalDate 数据库不兼容问题,因为LocalDate 是 long 类型的

我今天遇到一报错:

SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@316f9272] was not registered for synchronization because synchronization is not active JDBC Connection [HikariProxyConnection@2127597288 wrapping com.mysql.cj.jdbc.ConnectionImpl@7cc9b176] will not be managed by Spring ==> Preparing: SELECT cel FROM XXXX WHERE (time >= ? AND time <= ?) ==> Parameters: 1714406400000(Long), 1715011200000(Long) <== Total: 0 Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@316f9272] 查不出数据来

但是数据库能正常查出数据来

原因就是 LocalDate 数据库不兼容问题  也就是时间戳的问题

原来代码处理方式:

public List<MechanicalSystem> getElectricityForLastSevenDays() { LocalDate now = LocalDate.now(); LocalDate sevenDaysAgo = now.minusDays(7);LambdaQueryWrapper<MechanicalSystem> queryWrapper = Wrappers.lambdaQuery();queryWrapper.ge(MechanicalSystem::getTime, sevenDaysAgo.atStartOfDay(ZoneId.systemDefault()).toInstant().toEpochMilli());queryWrapper.le(MechanicalSystem::getTime, now.atStartOfDay(ZoneId.systemDefault()).toInstant().toEpochMilli());queryWrapper.select(MechanicalSystem::getCel); // 只查询cel字段,优化查询性能return energyAllEvaluateMapper.selectList(queryWrapper);
}   这段代码用LocalDate 的方式查不到数据库的数据  

后来改用Hutool 的方式

public List<MechanicalSystem> getElectricityForLastSevenDays() {// 使用Hutool获取当前日期和七天前的日期Date nowDate = DateUtil.date();Date sevenDaysAgoDate = DateUtil.offsetDay(nowDate, -7);// 将日期转换为字符串格式,假设数据库字段期望的格式为"yyyy-MM-dd HH:mm:ss" (避免时间戳错误)String sevenDaysAgoStr = DateUtil.format(sevenDaysAgoDate, "yyyy-MM-dd HH:mm:ss");String nowStr = DateUtil.format(nowDate, "yyyy-MM-dd HH:mm:ss");LambdaQueryWrapper<MechanicalSystem> queryWrapper = Wrappers.lambdaQuery();// 将字符串作为查询条件queryWrapper.ge(MechanicalSystem::getTime, sevenDaysAgoStr);queryWrapper.le(MechanicalSystem::getTime, nowStr);queryWrapper.select(MechanicalSystem::getCel); // 只查询cel字段,优化查询性能return energyAllEvaluateMapper.selectList(queryWrapper);}

http://www.lryc.cn/news/342491.html

相关文章:

  • RVM(相关向量机)、CNN_RVM(卷积神经网络结合相关向量机)、RVM-Adaboost(相关向量机结合Adaboost)
  • Java--方法的使用
  • linux - 主次设备号自动申请
  • 我写了一套几乎无敌的参数校验组件!基于 SpEL 的参数校验组件「SpEL Validator」
  • 输入序列太长 gan CGAN
  • uni-app scroll-view隐藏滚动条的小细节 兼容主流浏览器
  • Java常用API之LinkedList类解读
  • 移动端自适应
  • 自动化运维工具-Ansible
  • 力扣:62. 不同路径
  • store内路由跳转router.push
  • ChatGPT Web Midjourney一键集成最新版
  • springboot mongodb分片集群事务
  • node报错——解决Error: error:0308010C:digital envelope routines::unsupported——亲测可用
  • golang系统内置函数整理
  • 武汉星起航:五对一服务体系,助力创业者成功进军跨境电商市场
  • C++常用库函数——strcmp、strchr
  • vue3怎么使用vant的IndexBar 索引栏
  • VMware常见问题(技巧)总结
  • VS Code 保存+格式化代码
  • word启动缓慢之Baidu Netdisk Word Addin
  • 获取波形极值与间距并显示
  • 视频素材哪个app好?8个视频素材库免费使用
  • 002 validation自定义校验器
  • SQL-Server数据库--视图
  • Flink 部署模式
  • 第十三节:Vben Admin实战-系统管理之菜单管理
  • 2024------MySQL数据库基础知识点总结
  • 机器学习之基于Jupyter中国环境治理投资数据分析及可视化
  • 【Word】写论文,参考文献涉及的上标、尾注、脚注 怎么用