jsp request乱码

来源:互联网 发布:数据分析师月薪 编辑:程序博客网 时间:2024/06/06 11:39

<%@ pagelanguage="java"contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE htmlPUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<metahttp-equiv="Content-Type"content="text/html; charset=UTF-8">

<title>Insert title here</title>

</head>

<body>

<%--

下面是解决乱码:

1.修改tomcat配置文件server.xml

URIEncoding='UTF-8'

<Connector connectionTimeout="20000" port="8080"

protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8">

2.通过代码实现转换

1)get请求

jsp中用encodeURI

后台用java.net.URLDecoder或者

getBytes("ISO-8859-1",'UTF-8');


=》接收页面:

<%

String name=request.getParameter("name");

//get转码1:推荐

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

//get转码2

name=URLDecoder.decode(name,"utf-8");

但是要提交之前在js里执行:

<script>

function login(){

var loginForm=document.forms["loginForm"];

loginForm.name.value=encodeURI(loginForm.name.value)

loginForm.submit();

}

</script>

out.println(name);

%>

2)处理post请求

request.setCharacterEncoding("UTF-8")

 --%>

 <formaction="g.jsp"name="loginForm">

 <inputtype="text"name="name">

 <inputtype="submit">

 </form>

</body>

</html>

0 0
原创粉丝点击