【问题标题】:java program with special characters and database带有特殊字符和数据库的java程序
【发布时间】:2012-07-26 15:39:09
【问题描述】:

首先我知道这个问题是已知的,并且有很多答案,但我的有点不同或不寻常。

所以,我正在使用Eclipse SDK Version: 3.7.1,并且我正在开发可与数据库一起使用的 java 应用程序 (JRE 1.7)。

由于应用程序使用 克罗地亚语,我遇到了特殊字符问题 - čćđ 和将它们插入 DB(mysql dbms,嵌入 xampp)。

但是,我对编码的东西知之甚少,我尝试将 DB 设置为 cp1250_croatian_ciUTF8_unicode_ciUTF8_general_cilatin2_croatian_ci,但遗憾的是我对每一个都有同样的问题。 (每次连接到 DB 后,SET NAMES utf8(或类似的东西)是强制性的吗?)

另外,我想指出,在 phpMyAdmin 中插入 (č,ć,đ) 可以正常工作。

所以如果我想插入 DB 字符 č,ć,đ 它们表示为 ? .所以基本上这意味着编码或字符集或其他东西是问题。

我也在使用 JDBC 驱动程序:mysql-connector-java-5.1.18-bin 来自:docs

我想提一下,我没有遇到问题,而 DB 托管在 godaddy.com 服务器上

此外,项目文本编码(在 Eclipse 中)设置为“继承自容器 (CP1250)”,我也尝试使用 UTF-8,但这对我没有帮助。

【问题讨论】:

    标签: java mysql database phpmyadmin character


    【解决方案1】:

    我认为您可以执行以下操作 1 首先你应该将mysql编码设置为utf-8; 连接数据库时需要 2 秒,您应该按如下方式设置连接属性 你可以试试这个
    jdbc:mysql://ip:3306/yourDBName?useUnicode=true&characterEncode=UTF-8

    我认为当您使用 jdbc 连接时,您可能丢失了useUnicode=true&characterEncode=UTF-8

    【讨论】:

    • @chunxiao 但这对我不起作用,我已经在我的应用程序中通过调试对源进行了三次检查,但斯洛文尼亚字母 Č 仍然转换为 当我插入/更改记录时。您还有其他想法吗?
    猜你喜欢
    • 2021-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-17
    相关资源
    最近更新 更多