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

Mybatis踩坑之一天

background:

对接AML系统,日间实时需要送交易对手要素过去(目前主要是交易对手全名),夜间需要将历史交易送AML进行回溯,交互方式是文件。文件要素为日期、对手类型、对手名、交易流水之类。

设置对送AML的文件设计表机构,除了交易明细的机构,再设计了一个记录每日发送情况的表,主键为日期,记录对接的状态。

主键日期设置为整型(坑的开始),在POJO里设置为int类型,是MYSQL中的类型选用了int类型(smallint无法支持99991231),整型比较较快,比string好一些。

另外用了4个时间字段,记录文件的创建上传时间。

然后应用mybatis的 selectByPrimaryKey 传入主键(不论是string还是int)都会提示无法org.apache.ibatis.type.TypeException: Could not set parameters for mapping,报错误导严重:

org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property='crtStTime', mode=IN, javaType=class java.util.Date, jdbcType=null, numericScale=null, resultMapId='null', jdbcTypeName='null', expression='null'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #5 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.util.Date

另外一个date字段,尝试在xml中进行指定JdbcType类型是否不正确,无法支持null值的反向,一直在想是否另外一个字段有问题,AI问了好久,都无法定位问题。

最后发现是mybatis对int无法支持,需要用Integer 进行对应。

http://www.dtcms.com/a/256947.html

相关文章:

  • Kafka 原理与核心机制全解析
  • 【unitrix】 4.1 类型级加一操作(Add1.rs)
  • Vmware WorkStation 17.5 安装 Ubuntu 24.04-LTS Server 版本
  • Qt项目,记事本
  • windows桌面连接ubuntu, 设置VNC
  • BERT 模型准备与转换详细操作流程
  • 科学计算库 Numpy
  • 软件工程核心知识全景图:从需求到部署的系统化构建指南
  • 【AI智能体】Spring AI MCP 服务常用开发模式实战详解
  • 命令行中SSH本地端口转发和反向远程端口转发
  • 计算机网络课程设计--基于TCP协议的文件传输系统
  • linux VFS简介
  • 笔式胰岛素简单拆解
  • SAP金属行业解决方案:无锡哲讯科技助力企业数字化转型与高效运营
  • P99延迟:系统性能优化的关键指标
  • 408考研逐题详解:2010年第3题——后序线索二叉树
  • Docker容器自动更新利器:Watchtower
  • 自动化测试01
  • 如何用AI开发完整的小程序<9>—UI自适应与游戏页优化
  • oracle rac - starwind san 磁盘共享篇
  • SpringBoot+Vue服装商城系统 附带详细运行指导视频
  • 设计模式精讲 Day 10:外观模式(Facade Pattern)
  • 华为云Flexus+DeepSeek征文|Dify-LLM平台部署教程与Flexus X实例优势解析
  • CTE vs 子查询:深入拆解PostgreSQL复杂SQL的隐藏性能差异
  • JavaScript 的 “==” 存在的坑
  • 大零售生态下开源链动2+1模式、AI智能名片与S2B2C商城小程序的协同创新研究
  • 深入理解Spring的ResponseBodyAdvice接口
  • Linux 服务器运维:磁盘管理与网络配置
  • Neo4j关系属性操作完全指南:修改与更新技巧
  • 【学习笔记】深入理解Java虚拟机学习笔记——第11章 后端编译与优化