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

Java PreparedStatement UTF-8字符问题

卢杰
2023-03-14
问题内容

我有一个准备好的声明:

PreparedStatement st;

在我的代码中,我尝试使用st.setString方法。

st.setString(1, userName);

userName的值为şakça。setString方法将’şakça’更改为’?akça’。它不能识别UTF-8字符。我怎么解决这个问题?

谢谢。


问题答案:

实际上,解决这些问题的方法数量非常可观。如果您使用的是MySQL,请尝试characterEncoding=UTF-8在JDBC连接URL的末尾添加一个参数:

jdbc:mysql://server/database?characterEncoding=UTF-8

您还应该检查表/列字符集是否为UTF-8。



 类似资料:
  • 本文向大家介绍php中隐形字符65279(utf-8的BOM头)问题,包括了php中隐形字符65279(utf-8的BOM头)问题的使用技巧和注意事项,需要的朋友参考一下 今天在CSDN看到一个php输出空白隐形字符65279的问题,在网上找了下,发下这个65279字符是php用来标记文件是utf-8编码的,输出的时候会一起输出到客户端,导致客户端如果使用ajax得到返回值时,无法匹配字符串。 p

  • 问题内容: 如何使用Android解码utf-8字符串?我尝试使用此命令,但输出与输入相同: 问题答案: 字符串不需要编码。它只是一个Unicode字符序列。 要将字符串转换为字节序列时需要进行 编码 。您选择的字符集(UTF-8,cp1255等)确定了Character-> Byte映射。请注意,字符不必转换为单个字节。在大多数字符集中,大多数Unicode字符都转换为至少两个字节。 字符串的编

  • 问题内容: 我正在从外部服务器加载HTML。HTML标记具有UTF-8编码,并包含ľ,š,č,ť,ž等字符。当我使用file_get_contents()加载HTML时,如下所示: 它弄乱了UTF-8字符并加载了Å,¾,¤和类似的废话,而不是正确的UTF-8字符。 我该如何解决? 更新: 我尝试将HTML保存到文件中并以UTF-8编码输出。两者都不起作用,所以这意味着file_get_conten

  • 问题内容: 因此,我有一个字符串数组,所有字符串都使用系统默认的 ANSI 编码,并从SQL数据库中提取。因此,存在256个不同的可能字符字节值(单字节编码)。 有没有一种方法可以使我工作并显示这些字符,而不必在我的所有字符串上使用并最终得到类似的东西? 还是这是JSON的标准? 问题答案: 有没有一种方法可以使json_encode()工作并显示这些字符,而不必在所有字符串上都使用utf8_en

  • 像其它大多数的Java应用程序一样,FreeMarker使用 "UNICODE 文本"(UTF-16)来工作。 不过,也有必须处理 字符集 的情况, 因为它不得不和外界交换数据,这就会使用到很多字符集。 输入的字符集 当 FreeMarker 要加载模板文件(或没有解析的文本文件)时, 那就必须要知道文件使用的字符集,因为文件的存储是原生的字节序列。 可以使用 encoding 配置 来确定字符集

  • 而不是亚洲字符。即使是欧洲文本,我也用表示 奇怪的胡言乱语(mojibake?)如或的