gpt4 book ai didi

java - Spring 3 MVC + MySQL : cannot store € character

转载 作者:行者123 更新时间:2023-11-30 23:40:46 27 4
gpt4 key购买 nike

我使用 Hibernate 和 MySQL 5 设置了 Spring 3 MVC。在 Web 表单中,我在一个字段中输入一个字符,€(即只有一个字符)。然后,当我尝试保存数据时,出现以下异常:

java.sql.BatchUpdateException: Data truncation: Data truncated for column 'name' at row 1

'name' 是我的模型对象上的一个字符串。 'name' 列在 MySQL 中的数据类型为 VARCHAR(80)。我还尝试在 TEXT 列中输入 €,结果相同。

我已经为我的 webapp 配置了一个 CharacterEncodingFilter,我的数据库连接字符串如下所示:

jdbc:mysql://localhost/baseApp?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf8

知道问题出在哪里吗?

更新:

我认为 MySQL 与此问题无关。在设置我的模型对象的属性并且将 € 正确编码为 %80 之前,我已经拦截了 HTTP POST。然而,当我查询我的模型对象的属性时,€'s 就是 ?'s。

有什么想法吗?

最佳答案

您确定 MySQL 数据库支持 UTF-8 编码吗?我认为默认安装设置使用 latin1。您还需要确保 my.ini 配置文件中 [mysql] 和 [mysqld] 的“默认字符集”设置为“utf8”。此外,确保该表是使用 UTF-8 设置构建的。

关于java - Spring 3 MVC + MySQL : cannot store € character,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3230561/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com