方法很大略:调用request.getParameter(String s)方法。

办理中文乱码问题的方法是:

首先要设置response相应的格式:response.setContextType(\"大众text/html;charSet=GBK\公众);

html个别汉字乱码Servlet从上一个页面获取参数中文乱码解决办法 SQL

然后在加上request.setCharacterEncoding(\公众GBK\"大众)

须要把稳的是这是办理post办法提交的内容的中文乱码问题。

办理get办法提交内容的中文乱码问题的方法:

在Tomcat->conf文件夹->server.xml-->connecter标签里加上:

URIEncoding=\"大众GBK\"大众(把稳:在xml里面“=”两边不要有空格)

关于Post和Get之间的差异可以看我转载的另一篇博文:

HTTP POST GET 实质差异详解

例子:

1.threeparams.html

<html><body><form method=\"大众post\"大众 action=\"大众Threeparams\公众><table><tr><td>param1</td><td><input name=\公众p1\公众 type=\"大众text\"大众/></td></tr><tr><td>param2</td><td><input name=\"大众p2\公众 type=\公众text\"大众/></td></tr><tr><td>param3</td><td><input name=\公众p3\公众 type=\公众text\"大众/></td></tr><td><input type=\公众submit\"大众 value=\"大众submit\"大众></td></tr></table></form></body></html>

2.ThreeParams.java

import java.io.;import javax.servlet.ServletException;import javax.servlet.http.;public class ThreeParams extends HttpServlet{ @Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {doPost(req,resp);} @Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {resp.setContentType(\"大众text/html;charset=GBK\公众);//办理post办法提交内容的中文乱码//一定要卸载存取第一个参数之前//不要调用resp.setCharacterEncoding(\公众GBK\"大众);req.setCharacterEncoding(\公众GBK\"大众);//办理get办法乱码问题:修正server.xml中的connector标签-->URIEncoding=\公众GBK\"大众PrintWriter out = resp.getWriter();out.println(req.getParameter(\公众p1\"大众));out.println(\"大众</br>\公众);out.println(req.getParameter(\"大众p2\"大众));out.println(\"大众</br>\"大众);out.println(req.getParameter(\公众p3\"大众));out.println(\"大众</br>\"大众);}}

补充:

上面的这个例子.html中每个name都不一样,如果有多个一样的name时,可以按如下的方法来获取:

1)Enumeration paramNames = request.getParameterNames()

调用此方法得到所有参数的名字,返回一个Enumeration

2) while(paramNames.hasMoreElements()){

String paramName = (String)paramNames.nextElement();

String[] paramValues = request.getParameterValues(paramName);

...