浏览 366 次
|
该帖已经被评为新手帖
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2008-04-07
<%@ page language="java" contentType="text/html; charset=gb2312"
pageEncoding="gb2312"%>
<!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=gb2312">
<title>Insert title here</title>
</head>
<body>
<form action="SayHelloServlet">
<input name="userPwd" id="userPwd" size="14" tabindex="2">
<input type=submit >
</form>
</body>
</html>
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class for Servlet: SayHelloServlet
*
*/
public class SayHelloServlet extends javax.servlet.http.HttpServlet implements
javax.servlet.Servlet {
static final long serialVersionUID = 1L;
/*
* (non-Java-doc)
*
* @see javax.servlet.http.HttpServlet#HttpServlet()
*/
public SayHelloServlet() {
super();
}
/*
* (non-Java-doc)
*
* @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request,
* HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String str = (String) request.getParameter("userPwd");
String str_new= new String(str.getBytes("ISO-8859-1"),"GB2312");
System.out.println("转换前: "+str);
System.out.println("转换后: "+str_new);
}
/*
* (non-Java-doc)
*
* @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request,
* HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
}
}
在tomcat的内部,都是以iso8859-1来编码的,这样在servlet里取出来再用utf8来解码,就会产生乱码,可以手动的用new string(getbytes)来解码,或者直接的在setEncoding里设置也可以。
权宜之计~ 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
最后更新时间:2008-04-07
tomcat在处理get方法参数时,采用ISO-8859-1字符集,不过,你可以改server.xml里面的设置。
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8"/> 如果你用post提交,应该一切正常。
|
|
| 返回顶楼 | |
|
最后更新时间:2008-04-07
全盘使用UTF-8,应该没有这类问题的
|
|
| 返回顶楼 | |
|
最后更新时间:2008-04-07
ok~thx~以前不知道还能在server.xml里改
|
|
| 返回顶楼 | |
|
最后更新时间:2008-04-07
网上太多这个东西了,随便找找都可以的:)
知道其中的原理之后,可能才会更了解. |
|
| 返回顶楼 | |
|
最后更新时间:2008-04-07
使用utf-8就没问题了啦。
|
|
| 返回顶楼 | |







