【问题标题】:Value changed while saving in mysql db using JdbcBatchItemWriter使用 JdbcBatchItemWriter 在 mysql db 中保存时值更改
【发布时间】:2020-04-21 14:12:30
【问题描述】:

我正在尝试使用 JdbcBatchItemWriter.write(records) 将我的记录保存到 MySql DB 中。变量 records 包含一个对象,该对象将字符串保存为 вврвовлввв,就像在俄语中一样。在内存中它持有正确的字符串值。但在数据库中保存后,字符串值更改为 ??????。每当我试图从数据库中检索这个字符串时,它总是以 ?????? 的形式出现。我希望将确切的字符串值保存在数据库中。

谁能解决这个问题?

我使用的是spring批处理框架版本:4.1.2

【问题讨论】:

  • 您是否在您的数据库连接字符串中正确设置了字符编码?即jdbc:mysql://localhost:3306/mydatabase?useUnicode=true&characterEncoding=utf8
  • 我已经通过更改 my.ini 文件中的值解决了这个问题。起初只有一个像 character-set-server=latin1 ... 这样的条目。现在我添加了下面的字符集,如下所示,它解决了我的问题 character-set-server=utf8mb4

标签: java mysql spring spring-batch


【解决方案1】:

我已通过更改 MySql 文件夹中 my.ini 文件中的值来解决此问题。起初只有一个像character-set-server=latin1 这样的条目......现在我已经添加了下面的字符集,就像下面一样,它解决了我的问题。

character-set-server=utf8mb4

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-22
    • 2013-03-10
    • 2018-11-23
    • 1970-01-01
    • 2023-03-18
    • 2015-06-30
    • 2019-09-10
    • 1970-01-01
    相关资源
    最近更新 更多