当前位置: 首页 > 知识库问答 >
问题:

GlassFish 4.0中UTF-8的问题

吴单鹗
2023-03-14

我有一个JSP页面,用户可以在其中输入unicode字符,服务器必须将这些unicode字符正确存储到SQL服务器数据库中。

在我的代码中,我在JSP中设置了页面编码,在Apache Geronimo中使用的过滤器中设置了字符编码。然而,当我在GlassFish 4.0中部署相同的代码时,它开始存储“?”在数据库中。

我按照这篇博文中给出的说明,在glassfish web中添加了参数编码标签。xml,并在web中添加了jsp配置。xml

在我的Servlet中,我将输入转换为UTF,作为新字符串([参数].getBytes(“ISO-8859-1”),“UTF-8”),这里它给了我什么?

我不知道我做错了什么。请建议解决方法。

共有1个答案

司寇琨
2023-03-14

@Developerwjk感谢您的提示。JDBC连接池的附加属性中有一个属性SendStringParametersAsUnicode。这我们必须设置为true。

事实上,在这样做之后,它正在web.xml和glassfish-web.xml.中使用上述条目

 类似资料:
  • 嗨,我试图使我在UTF-8兼容的应用程序之一。我的环境如下:linux操作系统,apahce网络服务器作为超文本传输协议监听器,tomcat作为servlet引擎 配置了mod_jk和tomcat的apache s使用ajp连接器。 我已经从少数网站上阅读了UTF-8的基本指南,并根据建议尝试了以下方法 为服务器中的连接器设置和。xml 设置语言bashrc/. file使用 将apache服务器

  • 我不能让UTF-8在Tomcat中工作。我已经完成了以下配置: 在我的server.xml上设置URIEncode="UTF-8" 导出CATALINA_OPTS=$CATALINA_OPTS-Dfile.encoding=UTF-8catalina.bat 配置Spring特性EncodingFilter 在所有html文件中设置UTF-8 Maven来源编码构建UTF-8 当我在浏览器或邮递员

  • 问题内容: 我一直使用ISO-8859-1编码,但是现在要转到UTF-8。 不幸的是我无法正常工作。 我的MySQL数据库是UTF-8,我的PHP文档是用UTF-8编码的,我设置了UTF-8字符集,但仍然无法使用。 (像æ/ø/å这样的特殊字符不起作用) 希望你们能提供帮助! 问题答案: 确保与数据库的连接也使用此字符集: 根据php.net 的文档: 另请参见:http : //nl3.php.

  • 问题内容: 我从网页上获取的JSON数组出现奇怪的字符编码问题。服务器正在发回此标头: 内容类型文字/ javascript;字符集= UTF-8 另外,我可以查看Firefox或任何浏览器中的JSON输出,并且Unicode字符正确显示。响应有时会包含来自其他语言的带有重音符号等的单词。但是,当我将其下拉并放在Java中的字符串中时,我得到了那些奇怪的问号。这是我的代码: 如您所见,我在Inpu

  • 问题内容: 我目前正在开发一个Android应用程序,该应用程序从提供JSON数据的API中获取其数据。我将JSON数据的项目存储为字符串,这导致出现一些奇怪的字符(例如’Â’)。我知道这与字符集有关,因此我将InputStreamReader设置为“ UTF-8”,但它似乎没有解决问题。 Log.d“行”给出 有任何想法吗? 问题答案: 尝试以下代码片段代码,当我遇到类似问题时该代码对我有帮助:

  • 问题内容: 我有一个具有UTF-8字符集的MySQL表,并尝试通过PHP表单插入该表时,数据库显示以下错误: PDOStatement :: execute():SQLSTATE [HY000]:常规错误:1366错误的字符串值:’\ xE8’为列… 有问题的字符是“cat”,但考虑到数据库和表设置为UTF-8,我不明白为什么这应该是一个问题。 编辑 我已经直接从mysql终端尝试过,并且遇到了同