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

kotlin使用mybatis plus lambdaQuery报错

记录一下学习kotlin中遇到的问题

报错

### Error querying database.  
Cause: org.apache.ibatis.builder.BuilderException: 
Error evaluating expression 
'ew.sqlSegment != null and ew.sqlSegment != '''. 
Cause: org.apache.ibatis.ognl.OgnlException: 
sqlSegment [org.apache.ibatis.reflection.ReflectionException: 
Error parsing property name 'querySingleAnnualIncomeBudget$lambda$2'.  Didn't start with 'is', 'get' or 'set'.]

先把我的实体类贴一下

data class AnnualIncomeBudget(@TableId(type = IdType.ASSIGN_ID)var id: Long? = null,@ApiModelProperty("年份")var year: @NotNull(message = "[年份]不能为空") Int? = null,@ApiModelProperty("年初总收入预算金额")var totalBudget: @NotNull(message = "[年初总收入预算金额]不能为空") BigDecimal? = null,@ApiModelProperty("剩余开票额度")var remainingBudget: @NotNull(message = "[剩余开票额度]不能为空") BigDecimal? = null,@ApiModelProperty("创建时间")var createTime: @NotNull(message = "[创建时间]不能为空") LocalDateTime? = null,@ApiModelProperty("更新时间")var updateTime: @NotNull(message = "[更新时间]不能为空") LocalDateTime? = null,
)

然后时查询, 很简单

override fun querySingleAnnualIncomeBudget(year: Int): AnnualIncomeBudget? {return getOne(Wrappers.lambdaQuery<AnnualIncomeBudget>().eq(AnnualIncomeBudget::year, year))
}

直接贴解决方案

override fun querySingleAnnualIncomeBudget(year: Int): AnnualIncomeBudget? {return getOne(Wrappers.query<AnnualIncomeBudget>().eq(AnnualIncomeBudget::year.name, year))
}

放弃lambdaQuery改用query, lambdaquery最终还是会转换成string类型
Kotlin这里AnnualIncomeBudget::year他解析成一个高阶函数了

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

相关文章:

  • XtestRunner一个比较好用好看的生成测试报告的工具
  • 系统间复制文档
  • 论文阅读--射频电源在半导体领域的应用
  • React--》实现 PDF 文件的预览操作
  • 配置daemon.json使得 Docker 容器能够使用服务器GPU【验证成功】
  • VitePress学习笔记
  • 彻底清理ArcGIS 10.2残留的步骤
  • Windows使用Powershell自动安装SqlServer2025服务器与SSMS管理工具
  • Vue.js 完全指南:从入门到精通
  • getgff.py脚本-python006
  • openbmc 阈值sensor分析
  • 计算机视觉(CV方向)算法基础
  • SketchUp纹理贴图插件Architextures安装使用图文教程
  • Linux sshfs 安全挂载远程文件系统 命令详解
  • Angular面试题目和答案大全
  • AR辅助前端设计:虚实融合场景下的设备维修指引界面开发实践
  • Mac m系列芯片安装node14版本使用nvm + Rosetta 2
  • YotoR模型:Transformer与YOLO新结合,打造“又快又准”的目标检测模型
  • VUE -- 基础知识讲解(一)
  • 【MySQL】数据库的简单介绍
  • Node.js 内置模块
  • 安卓模拟器 adb Frida hook 抓包
  • uniapp如何封装uni.request 全局使用
  • 自适应双门限的能量检测算法
  • 2025年中科院1区SCI-冬虫夏草优化算法Caterpillar Fungus Optimizer-附Matlab免费代码
  • 09 RK3568 Debian11 ES8388 模拟音频输出
  • 电磁兼容(EMC):整改案例(十三)屏蔽外壳开孔解决433MHz无线通信问题
  • vue3+vite 使用liveplayer加载视频
  • 【学习路线】游戏开发大师之路:从编程基础到独立游戏制作
  • BehaviorTree.Ros2 编译教程