Java 为什么显示jsp页面?对于不能编码为ISO-8859-1(如中文)的文本

Java 为什么显示jsp页面?对于不能编码为ISO-8859-1(如中文)的文本,java,jsp,utf-8,character-encoding,Java,Jsp,Utf 8,Character Encoding,为什么显示jsp页面?for或text than不能编码为ISO-8859-1,即使我的jsp有: <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> jsp页面是,您可以通过在艺术家名称字段中输入并按submit来查看问题 奇怪的是,如果你点击其中一个问号链接,它会将你带到该艺术家的页面,并正确地呈现汉字。因此,服务器(tomcat 8)似乎已正确设置为呈现UTF8,区别在于艺术家页面由se

为什么显示jsp页面?for或text than不能编码为ISO-8859-1,即使我的jsp有:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>

jsp页面是,您可以通过在艺术家名称字段中输入并按submit来查看问题

奇怪的是,如果你点击其中一个问号链接,它会将你带到该艺术家的页面,并正确地呈现汉字。因此,服务器(tomcat 8)似乎已正确设置为呈现UTF8,区别在于艺术家页面由servlet呈现,而搜索页面是jsp,因此这似乎是jsp特有的问题

无论我是在自己的机器上本地运行还是部署到AWS(如上链接所示),我都有同样的问题

更新1 修复的问题是jsp页面实际上没有编码为utf8(因为静态内容中没有字符,编辑器认为除了默认编码之外不需要使用其他任何东西),强制保存所有jsp文件以使用UTF-8,现在它可以工作了

更新2 嗯,问题再次出现了,我已经将JSP和Include重新保存到UTF-8,但这次没有任何区别

更新3 通过改变来修正

<%@ page contentType="text/html"%>
<%@ page contentType="text/html"%>



不清楚为什么我现在必须这样做,尽管

修复了确保文件实际编码为UTF-8并通过更改

<%@ page contentType="text/html"%>
<%@ page contentType="text/html"%>