初学servlet获取从html表单提交的数据乱码问题

写了一个DemopublicclassDemoextendsHttpServlet{publicvoiddoGet(HttpServletRequestrequest,H... 写了一个Demo

public class Demo extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
String data = request.getParameter("aaa");
System.out.print(data);

}

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

doGet(request,response);
}

}

下面是html的
<!DOCTYPE html>
<html>
<head>
<title>Demo.html</title>

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">

</head>

<body>
<form action="/web3/servlet/Demo" method="post">
试验<input type="text" name="aaa">
<input type="submit" value="提交">
</form>
</body>
</html>

据说弄一个过滤器可以。但是还没学到那里。简单点的。求大神帮忙
展开
 我来答
千锋教育
2016-01-03 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
在代码中设置转码:
HttpServletRequest req
String pv = req.getParameter('参数名称');
byte[] temp = pv.getBytes("ISO-8859-1");
String str = new String(temp);
这个str就不是乱码了,这样就不需要去改tomcat的配置文件
firetiger1758
2014-06-03 · 超过18用户采纳过TA的回答
知道答主
回答量:39
采纳率:0%
帮助的人:38.4万
展开全部
String aaa= request.getParameter("aaa");

aaa= new String(aaa.getBytes("iso-8859-1"),"UTF-8");
追问
可以了谢谢。但是有个问题就是不是说这句  aaa= new String(aaa.getBytes("iso-8859-1"),"UTF-8");   是用于GET方式提交无乱码的么
追答
post方式和get方式都行,只不过地址传参(get方式)容易出现中文乱码。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式