当前位置: 首页 > 面试题库 >

JPA映射MySQL json类型,字符串出现乱码

何琨
2023-03-14
问题内容

我正在使用AttributeConverter将MySQL
JSON列转换为Object,如https://stackoverflow.com/a/31547965/1633272所述

将数据存储到MySQL中时,它工作正常,我可以在WorkBench中看到正确的值。

但是,当将该列返回给Java应用程序时,一个Unicode字符映射为3个字符。

这是一个示例,JSON字符串 “中” 只有1个用引号引起来的Unicode字符。在评估表达式窗口中,我可以看到它被映射为

0 = '"' 34
1 = 'ä' 228
2 = '¸' 184
3 = '\u00AD' 173
4 = '"' 34

我正在使用的库:

'mysql:mysql-connector-java:5.1.39',
'org.springframework.data:spring-data-jpa:1.9.0.RELEASE',
'org.hibernate:hibernate-entitymanager:5.0.6.Final',

似乎这是MySQL的已知问题:https :
//bugs.mysql.com/bug.php?id=80631


问题答案:

此错误已在mysql-connector-java:5.1.40中修复。



 类似资料:
  • 这是显示类型列表动态不是类型映射字符串动态的子类型“现在当我运行模拟器时,显示”类型列表动态不是类型映射字符串动态的子类型“在我的模拟器上,我如何修复它? 现在我想创建关于查找api id的程序,从我的模拟器中使用文本字段和按钮,当我把一些数字和单击按钮时,会显示该ID的数据或标题,但我只是初学者,所以如果有人认为我的代码是正确的或不正确的或者你有推荐请告诉我 My JSON JSON代码 应用程

  • 问题内容: 我想创建一个地图,可以将其转换为json对象,例如 但是golang指定使用类型声明地图,因此我可以使用map [string] string或map [string] int。我如何创建上述的json对象? 注意:直到运行时或需要创建json对象时,我才知道需要哪些数据和/或类型。因此,我不能只创建像 问题答案: 您可以随时使用存储任何类型。如包装袋中的文件所述: 若要将JSON解组

  • 我正在编写一个小型2D游戏,目前正在为其添加脚本功能(使用Lua或Python),而我在这个问题上磕磕绊绊(我认为这将导致我为我的游戏实现某种反射系统): 我使用的是Entity Component System模式,实体的定义是由脚本(Lua表或Python dict)提供的,因此每当我想构造实体时,我都会运行该脚本: 等等。在EntityFactory中,我有一个EntityFactoryFu

  • 我有这个json字符串: 当我用Jackson将其转换为映射[字符串,对象]时,开始日期的类型是字符串,我如何告诉Jackson将其转换为日期时间类型?

  • 在映射上分配一些默认值 我知道我需要在地图中添加值 问题是我的循环不起作用。我需要从地图中添加value2,基于从那里的位置或从地图中添加value2

  • 问题内容: 我想做这样的事情: 并让Foos保持在这样的表中: 更新: 我知道如何绘制其他实体的图,但是在许多情况下,这太过分了。似乎我所建议的是在没有创建另一个实体或以某个blob列中的所有内容结束的情况下是不可能的。 问题答案: 在Hibernate术语中,这是“值的集合”或“元素”。有一个(特定于Hibernate的)注释。JPA还不支持此功能。 简而言之,像这样注释您的收藏集: 这将创建带