JSP页面的Page指令指定编码和Meta标签编码
JSP代码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
</html>
在这里面跟编码类型有关的地方有3处:
1、jsp的page指令中contentType属性(与pageEncoding是一样的,如果MIME类型不是text/html,需用该属性设置MIME类型及编码),这个编码指定了输出html页面的编码。也就是由Servlet输出返回给浏览器的显示页面
2、jsp的page指令中pageEncoding属性(用户在浏览器中右击查看编码所看到的编码格式,默认MIME类型是text/html)
在生成的.java文件中为response.setContentType("text/html;charset=UTF-8");
这个编码指定了JSP页面的编码类型,也就是保存成.jsp的字符文件的编码类型,这个文件保存后会经过容器转换,先转换为.java也就是对应的java源文件(继承相应的servlet)这个过程就是按照pageEncoding指定的编码来读取的。转换成的.java文件以及后边编译后的.class文件的编码都是规定的UTF-8编码。
注意,如果这里的编码格式不指定,就可能不被正确转换为.java文件,这里jsp有区别于java文件,jsp文件到java文件没有默认编码转换方式,没有指定就没法正确解析,而java文件到class文件的转换有默认的编码格式,即本地编码格式,也就是说javac编译工具默认会根据电脑系统的编码格式进行解析java文件,这也是为什么记事本等系统自带编辑器写的代码能被正确编译的原因。
3、html中的<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
这里的编码charset=UTF-8就是告诉浏览器,我返回给你的HTML页面编码格式是什么,这样浏览器就可以按照正确的编码格式来解析HTML页面了。
总结:
1中的编码类型一定要和3中的一致,而2中的类型无所谓,可根据自己页面中包含的字符类型选择合适的编码格式。
另外,在java源码中也可以设置编码格式,可以做转码操作。
JSP页面的Page指令指定编码和Meta标签编码的更多相关文章
- JSP基本语法--Page指令 <%@page 属性=”内容“%>
page指令语法:<%@page 属性=”内容“%> 常用:contentType,import,pageEncoding 例子,设置MIME属性,如果使用一些高版本的tomcat,可能自 ...
- javascript 如何访问 action或者controller 传给 jsp 页面的值
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding= ...
- 今天做一个项目的时候,要在一个编辑的jsp页面的textarea标签设置value属性,结果发现他没有value属性,但是是编辑页面又必须要回显要修改的内容,所以在参考了w3cschool之后很轻松的解决了这个问题。
今天做一个项目的时候,要在一个编辑的jsp页面的textarea标签设置value属性,结果发现他没有value属性,但是是编辑页面又必须要回显要修改的内容,所以在参考了w3cschool之后很轻松的 ...
- jsp页面的html代码显示不出来,提示Uncaught SyntaxError: Unexpected token <
jsp页面的html代码显示不出来,提示Uncaught SyntaxError: Unexpected token < <input type="hidden" na ...
- 在jsp中,page指令的()属性用来引入需要的包或类。
在jsp中,page指令的()属性用来引入需要的包或类. A.extends B.import C.language D.contentType 解答:B
- 如何将jsp页面的table报表转换到excel报表导出
假设这就是你的jsp页面: 我们会添加一个“导出到excel”的超链接,它会把页面内容导出到excel文件中.那么这个页面会变成这个样子 在此,强调一下搜索时关键词的重要性,这样一下子可以定位到文章, ...
- OneHotEncoder独热编码和 LabelEncoder标签编码
学习sklearn和kagggle时遇到的问题,什么是独热编码?为什么要用独热编码?什么情况下可以用独热编码?以及和其他几种编码方式的区别. 首先了解机器学习中的特征类别:连续型特征和离散型特征 拿到 ...
- 在jsp页面的js中使用Cookie的原理介绍以及相应方法的代码
1. 设置cookie 1.1 每个cookie都是一个名/值对,可以把下面这样一个字符串赋值给document.cookie: document.cookie="user_Id=828&q ...
- 描述各自页面的 page
一个小程序页面由四个文件组成(注意:为了方便开发者减少配置项,描述页面的四个文件必须具有相同的路径与文件名).分别是: 页面 Page(JS文件) Page(Object) 函数用来注册一个页面.接受 ...
随机推荐
- 小记--------spark的Master的Application注册机制源码分析及Master的注册机制原理分析
原理图解: Master类位置所在:spark-core_2.11-2.1.0.jar的org.apache.spark.deploy.master下的Master类 //截取了部分代码 //处理 ...
- SQLite进阶-11.Join
目录 JOIN 交叉连接 - CROSS JOIN 内连接 - INNER JOIN 外连接 - OUTER JOIN JOIN JOIN 子句用于结合两个或者多个数据表的数据,基于这些表之间的共同字 ...
- hdu 6601 区间条件极值 - 区间 最大 三角形周长
题目传送门//res tp hdu 目的 对长度为n的区间,给定q个子区间,求其元素能构成三角形的最大周长.有多组测试. n 1e5 q 1e5 ai [1,1e9] (i∈[1,n]); 数据结构 ...
- Ruby Rails学习中:注册表单,注册失败,注册成功
接上篇 一. 注册表单 用户资料页面已经可以访问了, 但内容还不完整.下面我们要为网站创建一个注册表单. 1.使用 form_for 注册页面的核心是一个表单, 用于提交注册相关的信息(名字.电子邮件 ...
- IntelliJ IDEA 2017.3.2 热加载(Hot Swap)
一.IntelliJ IDEA 自带热加载,修改代码后点击Ctrl + F9即可 缺点:1.Ctrl + F9只对当前类重新编译加载 2.只支持构造代码块的CRUD.方法体内代码修改.资源文件内容的修 ...
- CSS——font使用方法
<style> p{ /*font-style: italic;/*设置字体为斜体*/ font-variant: small-caps; font-weight: bolder;/*设置 ...
- windows上pip安装及使用详解
windows上pip安装及使用详解 2018-11-21 19:49:58 十二笔 阅读数 8229更多 分类专栏: Python学习 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA ...
- 【原创】大叔问题定位分享(35)spring中session失效时间
spring项目中将sessionid对应的cookie过期时间设置很长,但是实际session还是在半个小时后失效,跟了一下代码,spring中session实现接口为 org.springfram ...
- 你不知道的css各类布局(四)之响应式布局
响应式布局 概念 响应式布局指的是同一页面在不同屏幕尺寸下有不同的布局 布局特点 响应式设计的目标是确保一个页面在所有终端上(各种尺寸的PC.手机.手表.冰箱的Web浏览器等等)都能显示出令人满意的效 ...
- 使用docker搭建OpenResty开发环境
Dockerfile文件: FROM centos:latest RUN yum install -y pcre-devel openssl-devel gcc curl wget perl make ...