1.JSP使用<%@include file="*.html"%>引入HTML页面时,会出现中文乱码问题
解决方案一:
在HTML页面上添加
<%page language="Java" import="java.util.*" pageEncoding="utf-8"%>
添加<%page pageEncoding="utf-8"%>同样有效,但是不规范
jsp的编码格式为:<%@ page language="java" import="java.util.*" contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
解决方案二:
在web.xml里统一配置pageEncoding的编码,在web-app标签里添加如下配置:
<jsp-config>
<jsp-property-group>
<description>html encoding</description>
<display-name>JSPConfiguration</display-name>
<url-pattern>*.html</url-pattern>
<el-ignored>true</el-ignored>
<page-encoding>UTF-8</page-encoding>
<scripting-invalid>false</scripting-invalid>
<include-prelude></include-prelude>
<include-coda></include-coda>
</jsp-property-group>
</jsp-config>
总结:方法一和方法二原理是一样的,都是通过设置pageEncoding编码来指定jsp将html文件include时使用的编码。方法一和方法二任选一种即可,如果同时使用需要注意两个地方设置的pageEncoding编码必须一致,否则将会报如下编码不一致的错误:
org.apache.jasper.JasperException: /in.html (line: 1, column: 2) Page-encoding specified in jsp-property-group (UTF-8) is different from that specified in page directive (GBK)
2.将html页面转为jsp页面出现乱码问题解决方案:
假设原html编码为utf-8
在html顶部加入
<%@ page pageEncoding="utf-8"%>
然后再修改后缀为.jsp即可,即先修改编码格式再转换为jsp文件
相关文章
- 【问题解决】HttpClient解析服务器返回的response出现乱码
- 关于android源码中的APP编译时引用隐藏的API出现的问题
- SSH中JSP页面传值到action出现中文乱码的情况
- 安装Mysql最新版本mysql-5.7.10-winx64出现的几个问题解决
- 关于使用jsp时出现中文乱码的解决方案总结
- c#:未将对象引用设置到对象的实例--可能出现的问题总结(转)
- eclipse导入java web项目,项目出现红叉而其他地方没有红叉的问题解决方法
- Eclipse中经常出现的问题解决方案
- Nuget自己打包引用的时候出现错误:Package is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package 1.0.1 supports: net (.NETFramework,Version=v0.0)
- 为什么在连接这个Qt 5.0应用程序时,会出现“未定义的vtable引用…”错误?