相关疑难解决方法(0)

如何让UTF-8在Java webapps中运行?

我需要在我的Java webapp(servlets + JSP,没有使用框架)中使用UTF-8来支持äöå常规芬兰语文本和???特殊情况下的西里尔字母.

我的设置如下:

  • 开发环境:Windows XP
  • 制作环境:Debian

使用的数据库:MySQL 5.x.

用户主要使用Firefox2,但Opera 9.x,FF3,IE7和谷歌Chrome也用于访问该网站.

怎么做到这一点?

java mysql encoding tomcat utf-8

363
推荐指数
3
解决办法
21万
查看次数

为什么UTF-8编码的字符仅在远程计算机上无法正确显示

当我查看这个物理编码为UTF-8并且在我的PC上使用UTF-8指定为charset(使用firefox)的网页时,它不会显示需要正确编码多个字节的字符,例如Björk中的ö ,请点击链接,然后打开B部分,看看我的意思

http://www.jthink.net/songkong/reports/FixSongsReport00084/FixSongsReport00084_index.html

(该页面使用jakarta-tomcat托管在linux服务器上)

但是,当我在硬盘上存储为文件时,原始文件在Firefox中显示完全正常.我甚至将文件从远程站点复制回我的本地PC以确保具有相同的文件,它仍然显示正常.

那怎么会在网站上显示不好,这可能是一个tomcat问题吗?

编辑 在第一个答案的评论中,它说我需要确保我需要正确设置响应编码,我该怎么做 - html页面不是由代码生成的tomcat只是提供的页面提供

注意我不要将uri参数解析为utf8,并且我不希望我创建的jsp页面编码为UTF8,这些都会像ISO-8859-1一样处于罚款状态,如果我更改它们可能会中断.我只想将.html页面显示为UTF8,并且仅针对此应用程序,我在webapps文件夹中有多个应用程序,我使用的是Tomcat 7

编辑

因此,正如下面的答案所示,我已添加到我的web.xml文件中

 <filter>
    <filter-name>CharacterEncoding</filter-name>
    <filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
</filter>
<mime-mapping>
  <extension>html</extension>
  <mime-type>text/html;charset=UTF-8</mime-type>
</mime-mapping>
Run Code Online (Sandbox Code Playgroud)

和那种工作,网址现在正确显示,但链接不起作用.

当我查看源它似乎使用正确的链接,但错误消息显示它是扩展表示法而不是UTF8.

她的整个报告,所以你可以点击左侧的链接,并在右侧看到结果

http://www.jthink.net/songkong/reports/FixSongsReport00084/FixSongsReport00084.html

即使我复制链接和粘贴它也不起作用,因为链接似乎被粘贴是错误的,虽然它然后纠正自己

html tomcat utf-8

5
推荐指数
1
解决办法
9784
查看次数

如何设置tomcat 8容器字符编码请求和响应ISO-8859-1的UTF-8 intead

我们需要设置tomcat 8容器字符编码的请求和响应ISO-8859-1的UTF-8 intead,设置是什么我们尝试设置如下所述, https://wiki.apache.org/tomcat/FAQ /#的characterEncoding Q1

但这需要创建过滤器等.有没有任何优雅的方式我们可以更改一些配置集,使其适用于容器级别

servlet-3.0 tomcat8

3
推荐指数
1
解决办法
7791
查看次数

标签 统计

tomcat ×2

utf-8 ×2

encoding ×1

html ×1

java ×1

mysql ×1

servlet-3.0 ×1

tomcat8 ×1