8个回答
展开全部
如果在JSP页面以GET方式向Servlet发送请求时,这里在doGet()方法中用 request.getParameter()方法取得参数值是乱码,如果你在调用 request.getParameter()方法之前使用response.setCharacterEncoding("utf-8");这种方式只是对页面发送POST请求有效,哪么如何对发送GET请求有效果呢,这时就需要在Tomcat的server.xml中配置
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="utf-8"/> <!-- 指定URI编码格式-->
所以只有指定URI编码格式后页面向Servlet发送GET请求时不会出现中文乱码问题
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="utf-8"/> <!-- 指定URI编码格式-->
所以只有指定URI编码格式后页面向Servlet发送GET请求时不会出现中文乱码问题
2013-04-02
展开全部
加个过滤器,过滤全部看看 过滤器代码import java.io.IOException;import javax.servlet.*;
import javax.servlet.http.*;public class FontFilter extends HttpServlet implements Filter {
private FilterConfig filterConfig;
//Handle the passed-in FilterConfig
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig;
} //Process the request/response pair
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) {
try {
((HttpServletRequest)request).setCharacterEncoding("GBK");
filterChain.doFilter(request, response);
} catch (ServletException sx) {
filterConfig.getServletContext().log(sx.getMessage());
} catch (IOException iox) {
filterConfig.getServletContext().log(iox.getMessage());
}
} //Clean up resources
@Override
public void destroy() {
}
} web.xml中的配置<!-- 中文转换过滤器 -->
<filter>
<filter-name>fontfilter</filter-name>
<filter-class>FontFilter</filter-class>
</filter> <filter-mapping>
<filter-name>fontfilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
import javax.servlet.http.*;public class FontFilter extends HttpServlet implements Filter {
private FilterConfig filterConfig;
//Handle the passed-in FilterConfig
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig;
} //Process the request/response pair
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) {
try {
((HttpServletRequest)request).setCharacterEncoding("GBK");
filterChain.doFilter(request, response);
} catch (ServletException sx) {
filterConfig.getServletContext().log(sx.getMessage());
} catch (IOException iox) {
filterConfig.getServletContext().log(iox.getMessage());
}
} //Clean up resources
@Override
public void destroy() {
}
} web.xml中的配置<!-- 中文转换过滤器 -->
<filter>
<filter-name>fontfilter</filter-name>
<filter-class>FontFilter</filter-class>
</filter> <filter-mapping>
<filter-name>fontfilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
get方法对吧。首先必须编码。。编码以后再发送。。一般都是iso-8859-1的编码。。获取的时候如果是乱码可以用字符串转码.转为utf-8
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-04-02
展开全部
网上搜下字符乱码过滤Jar包,放入lib包下,然后在xml中配置一下就OK了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-04-02
展开全部
String str=String.getByte("ISO-8859-1","UTF-8"); 这个utf改为你前台页面的那个编码就是那个jsp的页面编码
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询