在IE中输入..../myservlet?fro=中国人
用如下方式取值
String from = req.getParameter("fro");
结果println出来是乱码
用如下方式取值
String from = req.getParameter("fro");
结果println出来是乱码
解决方案 »
- 怎么更改默认的JRE版本
- 调用方法改变对象的值问题,String,Integer经过调用方法不改变值
- 一道java面试题
- DatasetProducer的 hasExpired(Map params, Date since)方法
- JAVA的图形界面还有用武之地么(探讨)??
- 连数据库的程序,打成Jar包后的提示连接数据库失败
- 在非阻塞套接字中实现序列化
- byte/char/short在运算过程中遇到的问题
- 当setLayout(null)的时候,组建应该怎么定位?
- jdk8的安装问题,我是win8系统
- 求MS-access 的JDBC驱动
- 怎么在netbeans中创建applet文件还有html文件?
String from = new String(req.getParameter("fro").getBytes("iso8859_1"),"GB2312");
一般都是通过加个过滤器来解决的,然后把request的编码设为GBK
过滤器:public class CharSetFilter extends HttpServlet implements Filter
{
public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain)
{
request.setCharacterEncoding("GBK");
filterChain.doFilter(request, response);
}}
WEB.XML中的配置
<filter>
<filter-name>charSetFilter</filter-name>
<filter-class>过滤器类路径</filter-class>
</filter> <filter-mapping>
<filter-name>charSetFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>