Mybatis-plus + PostgreSQL json格式类型转换异常

前言

Mybatis Plus中自带很多Json类型处理器,在MySQL中直接使用没有任何问题,但在PostgreSQL中却报错:
Caused by: org.postgresql.util.PSQLException: 错误: 字段 "xxx" 的类型为 json, 但表达式的类型为 character varying

解决方案

用法上没有变化,仅在PostgreSQL 的url后追加参数stringtype=unspecified

yml 复制代码
spring:
  datasource:
    driver-class-name: org.postgresql.Driver
    url: jdbc:postgresql://localhost:5432/xxx?stringtype=unspecified

PostgreSQL 的 JDBC 驱动默认会把所有参数都当作varchar 类型发送。对于 JSON 字段,必须告诉驱动不要预设类型,让 MyBatis-PlusTypeHandler 接管处理。

相关推荐
原来是猿6 小时前
网络计算器:理解序列化与反序列化(下)
linux·开发语言·网络·网络协议·json·php
SelectDB技术团队6 小时前
强行拍平?全表扫描? AI Agent 动态 JSON 的观测分析
数据库·人工智能·json·apache doris
环流_8 小时前
Redis:epoll和IO多路复用
java·redis·mybatis
欢璃8 小时前
表白墙案例
java·开发语言·jvm·spring boot·spring·maven·mybatis
贫民窟的勇敢爷们9 小时前
SpringBoot整合MyBatis-Plus极致实战,高效实现数据库CRUD与分页条件查询
数据库·spring boot·mybatis
承渊政道10 小时前
从ROWNUM到LIMIT:KES、Oracle与PostgreSQL的执行顺序差异解析
数据库·数据仓库·sql·mysql·安全·postgresql·oracle
码农学院10 小时前
JSON 里是一个空字符串 ““,Newtonsoft.Json 无法直接把字符串转成列表
json
weipt11 小时前
国产数据库私有化部署实战:PolarDB for PostgreSQL 免费容器版踩坑记
数据库·postgresql
暗暗别做白日梦11 小时前
MyBatis-Plus 分页查询@Param 注解
mybatis
无证驾驶梁嗖嗖11 小时前
ubuntu18-cursor-remote-ssh-tutorial
数据库·postgresql·ssh