JSP request页面乱码

JSP 页面乱码

解决中文乱码问题,主要是解决编码统一的问题,JSP页面默认为ISO-8859-1编码,每个项目或者每个文件里都可以独立的设置text file encoding 编码方式。

我的默认 JSP 文件

都设置为了 UTF-8

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
</body>
</html>

JSP页面的处理

不同的提交方式,下面的语句不同的效果,对于 POST 方式,下面的语句有效,对GET方式无效

<%request.setCharacterEncoding("utf-8"); %>

GET 方式获取数据,可以解决中文乱码问题

String name = new String(request.getParameter("name").getBytes("iso-8859-1"), "utf-8")

网上的方法都是在 Tomcat 安装目录里的 server.xml的 <Connector..../> 节点,添加下面的语句

URIEncoding="UTF-8"

或者

useBodyEncodingForURI="true" URIEncoding="UTF-8"

但是我的 JSP 页面就是乱码。

后来我在eclipse 里看到一个 Server 项目,是 Tomcat服务器的配置,里面有 server.xml 文件,我去改了改,好像有效。

这里写图片描述

Tomcat server.xml 里的配置

 <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" useBodyEncodingForURI="true" URIEncoding="UTF-8"/>

GET 和 POST 提交方式

JSP 表单处理:http://www.runoob.com/jsp/jsp-form-processing.html
GET 方法

请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的:
明文方式

/test/demo_form.asp?name1=value1&name2=value2

有关 GET 请求的其他一些注释:

GET 请求可被缓存
GET 请求保留在浏览器历史记录中
GET 请求可被收藏为书签
GET 请求不应在处理敏感数据时使用
GET 请求有长度限制
GET 请求只应当用于取回数据

POST 方法

请注意,查询字符串(名称/值对)是在 POST 请求的 HTTP 消息主体中发送的:

POST /test/demo_form.asp HTTP/1.1
Host: w3schools.com
name1=value1&name2=value2

有关 POST 请求的其他一些注释:

POST 请求不会被缓存
POST 请求不会保留在浏览器历史记录中
POST 不能被收藏为书签
POST 请求对数据长度没有要求

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值