Java Hibernate:有没有办法用拉丁1编码将utf-8字符的对象保存到表中?

Java Hibernate:有没有办法用拉丁1编码将utf-8字符的对象保存到表中?,java,mysql,hibernate,encoding,Java,Mysql,Hibernate,Encoding,目前,我的spring应用程序正在使用characterEncoding=UTF-8连接连接到mysql数据库,但有几个表使用拉丁语编码,实际上我不需要将UTF-8字符作为原始字符存储到dabase,对我来说,保存“??”而不是它们是可以接受的,但现在我遇到了以下错误: Caused by: java.sql.SQLException: Incorrect string value: '\xD1\x84\xD1\x8B\xD0\xB2...' for colum 有没有办法为给定的表保存问号而

目前,我的spring应用程序正在使用characterEncoding=UTF-8连接连接到mysql数据库,但有几个表使用拉丁语编码,实际上我不需要将UTF-8字符作为原始字符存储到dabase,对我来说,保存“??”而不是它们是可以接受的,但现在我遇到了以下错误:

Caused by: java.sql.SQLException: Incorrect string value: '\xD1\x84\xD1\x8B\xD0\xB2...' for colum

有没有办法为给定的表保存问号而不是抛出错误?(对于我的情况,将表格转换为utf-8是不可接受的方式)

您可以使用
将所有
非拉丁字符替换为
“?”

value.replaceAll("[^\x0-\x7f]", "?")

或者您可以简单地使用
标准字符集进行编码和重新解码。US_ASCII

您可以使用
将所有
非拉丁字符替换为
“?”

value.replaceAll("[^\x0-\x7f]", "?")

或者您可以简单地使用
标准字符集进行编码和重新解码。US_ASCII

现在应用程序中的所有连接都由spring数据管理,将其更改为手动管理不要找我一个简单的解决方案现在应用程序中的所有连接都由spring数据管理,将其更改为手动管理不要找我一个简单的解决方案现在应用程序中的所有连接都由spring数据管理,将其更改为手动管理不要找我一个简单的解决方案