当前位置: 首页 > 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 进行对应。

相关文章:

  • 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 磁盘共享篇
  • web网站漏洞扫描/关键词排名优化网站
  • 成都网站建设招聘/20条优化措施
  • 东莞市专注网站建设服务机构/大作设计网站
  • 店铺推广渠道有哪些/合肥seo推广外包
  • 四川自助网站/长沙网站建设公司
  • 龙华网站建设销售员/网络推广费用