1.以POST方式提交的表单数据有中文字符。
我用个例子来说。比如就GBK来说吧~!
web容器的默认编码是ISO-8859-1. 在Servlet/JSP中,在提交表单数据之前,容器先调用request.setCharacterEncoding("GBK");来指定正文的字符编码方式为GBK,后在用response.setContentType("");来设置向浏览器输出内容的编码也为GBK。
而在JSP中呢,在请求参数之前:
<%request.setCharacterEncoding("GBK"); %>
在输出内容为:
<% page contentType=text/html; charset=GBK %>
2.以GET方式提交表单信息有中文字符。
提交的数据会作为查询字符串被加到URL末端,即不用调用request.setCharacterEncoding("GBK");若出现乱码的话,可以做以下转换操作:
String str =request.getParameter("str");
str = new String(str.getBytes("ISO-8859-1"),"GBK");
3.数据库在存储和读取中文数据
默认也是以ISO-8859-1,所有有的时候导出来的也是乱码,我们可以手动设置。