jetty作为服务jsp中文乱码,tomcat作为服务jsp中文正常

当用Eclipse做编辑器开发jsp页面时,jetty启动服务会发生中文乱码现象,但用tomcat中文则正常。

一开始我以为是我后台代码没有做编码的转码设置,经过网上的一系列文档的检查调整后,中文还有乱码。

但后来我发现当我直接访问jsp,不经过后台代码跳转时,现象一样。这是我确认是我的jsp页面本身的问题。

当我选中jsp页面右击属性后,查看编码类型为ISO8859-1,经过修改后改为UTF-8,再次访问jsp页面,还是乱码。

这时我又修改Eclipse的window-》property中的web中jsp页面的设置和contranter的jsp页面的编码设置,改为UTF-8,测试后还是乱码。

我的jsp页面用到了include标签,我有一个公用的头文件页面,页面中已经写了pageEncoding=”UTF-8″,如下

<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

但我的这个乱码页面没有写这句。最后我将每个jsp页面都加上这句话后,再次测试,中文正常,乱码不见了。

总结:

jsp页面应在第一句话写上编码的设置,无论是页面有没有引用其他的页面。

当然可能是tomcat对中文的兼容好,所以用tomcat作为服务器后jsp页面则不需要每个页面都要加编码设置的设置。

    原文作者:hellowoody
    原文地址: https://segmentfault.com/a/1190000008252708
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞