servlet 中文编码设置
Tomcat服务器默认采用的ISO8859-1编码
产生的原因:
不同数据来源的编(解)码格式不同:
| 数据来源 | 默认编码格式 |
|---|---|
| 浏览器页面 | GBK (可在浏览器页面右键切换) |
| request(get) | ISO-8859-1 |
| request(post) | GBK(同浏览器),但是如果是服务器来的页面一般已经设置了UTF-8(例如JSP提交的页面) |
| Servlet(response) | ISO-8859-1 |
1.请求中文的处理:
get:
String code=new String(request.getParameter("code").getBytes("ISO8859-1"),"UTF-8");
post:
request.setCharacterEncoding("UTF-8");
2.响应中的中文处理:
response.setContentType(“text/html;charset=UTF-8”);
3.注意
1,一般情况下,JSP页面的默认编码字符集要设置成UTF-8。否则无法完成中文显示和数据传输。这里不考虑GBK的情况
2,在服务器端的程序之间,数据传输都是以UTF-8格式传输的。所有不用考虑中文乱码问题
3,setCharacterEncoding(“UTF-8”)是设置字符集,request调用是设置解码方式(因为是从页面过来的),而response调用时设置编码方式(因为要想页面输出内容,先在Servlet中编码)
4,getBytes(“UTF-8”);方法通过字符串调用,是按照指定字符集编码。
5,new String(string.getBytes(“ISO-8859-1”),”UTF-8”);方法将string字符串先以原始(ISO-8859-1)进行解码转成字节数组,在以(UTF-8)编码封装成新字符串。
servlet 中文编码设置的更多相关文章
- MySQL中文编码设置为utf-8
MySQL中文编码设置为utf-8 原文地址:http://blog.csdn.net/wangnan537/article/details/47819167 1. 查看MySQL数据库的默认编码有如 ...
- Servlet 环境设置
开发环境是您可以开发.测试.运行 Servlet 的地方. 就像任何其他的 Java 程序,您需要通过使用 Java 编译器 javac 编译 Servlet,在编译 Servlet 应用程序后,将它 ...
- 第二章 编写与设置Servlet
2.1 第一个Servlet package cc.openhome; import javax.servlet.ServletException; import javax.servlet.http ...
- JSP Servlet 路径解析 路径设置
转自:http://ethen.iteye.com/blog/800415 在用JSP和Servlet编写Web应用时,经常遇到的问题就是找不到.do路径,或者.do路径不能解析,其实归根到底就是Se ...
- Tomcat设置开启时自动访问某个servlet类存在的问题
<servlet> <servlet-name>****</servlet-name> <servlet-class>****</servlet- ...
- ubuntu下设置数据库字符集
就linux环境下出现的数据库乱码的问题,以ubuntu为例进行的总结 ubuntu环境设置的字符集utf8,windows默认字符集是GBK,Ubuntu的默认字符集为utf-8,这使 得在用tel ...
- 08 Servlet
Servlet技术 * Servlet开发动态的Web资源的技术. * Servlet技术 * 在javax. ...
- servlet学习笔记_4
一.response.1.response.characterEncoding和response.setContentType("text/html;charset=UTF-8") ...
- JSP数据交互(二)和Servlet基础
01.Application原理与应用 01.application对象的作用域范围是整个应用服务,而它在应用中所承担的责任就类似于一个全局变量.只要服务启动,则application对象就会存在. ...
随机推荐
- kendo Grid的toolbar自定义
由于这个toolbar官方进增加了create,save还有一个是_____ 所以想要自定义话就需要使用 下面的代码(这个是MVVM模式) data-toolbar='[{ template: Ken ...
- EasyUI 在textbox里面输入数据敲回车后查询和普通在textbox输入数据敲回车的区别
EasyUI实现回车键触发事件 $('#id').textbox('textbox').keydown(function (e) { if (e.keyCode == 13) { alert('ent ...
- [Cypress] Create True end-to-end Tests with Cypress (Smoke test)
Integration tests let us keep our tests fast and reliable. They also allow us to test scenarios that ...
- jQuery Validation让验证变得如此easy(三)
下面代码进行对jQuery Validation的简单演示包含必填项.字符长度,格式验证 一.引入文件 <script src="js/jquery-1.8.0.min.js" ...
- c++中cin的基本使用方法
一.最主要的使用方法cin>> 接收一个数字.字符.字符串.遇"空格"."TAB"."回车"都结束 比如: <span s ...
- Python内置的字符串处理函数
生成字符串变量 str='python String function' 字符串长度获取:len(str) 例:print '%s length=%d' % (str,len(str)) 连接字符 ...
- oc30--id
// // Person.h #import <Foundation/Foundation.h> @interface Person : NSObject - (void)sleep; @ ...
- Android+Jquery Mobile学习系列(4)-页面转场及参数传递
关于页面转场,这个必须得专门列出来说明一下,因为Jquery Mobile与普通的Web发开有一些区别,这个对于新手如果不了解的话,就会钻到死胡同.撸主前段时间就是很急躁地上手开发程序,结果在页面转场 ...
- svn for vs
现在官方下载需要注册一堆的东西,为方便群众使用在这里提供一个新版的下载. http://files.cnblogs.com/wfcfan/AnkhSvn-2.5.12266.rar
- class--类③
类的构造函数 类的构造函数是类的一种特殊的成员函数,它会在每次创建类的新对象时执行. 构造函数的名称与类的名称是完全相同的,并且不会返回任何类型,也不会返回 void.构造函数可用于为某些成员变量设置 ...