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>
<%
request.setCharacterEncoding("utf-8"); 
String s=request.getParameter("name");
out.print(s);

%>

在没有红色行的时候,可以看到已经统一使用utf-8进行编码,但是提交的中文依然是乱码.

原因是,tomcat默认使用iso-8859-1进行提交的数据解码,而提交的数据是使用utf-8编码的,编解码对不上自然会出现乱码.解决办法就是指定解码方式.