易截截图软件、单文件、免安装、纯绿色、仅160KB

当jsp和servlet出现乱码问题后的解决方案

上网看了好多,就这一篇解决了我的问题,现转,我的项目用的是MVC架构,有统一的控制器,转向不同的Action,上网看了好多,大部分是说加入request.setCharacterEncoding("utf-8");但是经过我的试验,这只有在利用JSP处理表单传输数据时才可用,在我的东西中无法解决,后来发现还是用FilterChain好,呵呵,重点还是在request.setCharacterEncoding("")中;希望对大家有点帮助
转自(http://www.itwis.com/html/java/jsp/20080814/2158.html)
当jsp和servlet出现乱码问题后的解决方案
来源: 发布时间:2008-08-14 发布人: 浏览:162 人次   字体: [大 中 小]   
     在进行jsp和servlet的开发时,很有可能遇到出现了中文乱码问题,现在我们来看看笔者是如何解决的,他也是用了许多方法,发现还是解决不了。最后用了过滤器,才算终结。
   此方法总结如下:在jsp页面中使用<%@ page pageEncoding="GB2312"%> ,这里的pageEncoding是GB2312,那么我们在过滤器web.xml中所使用的<param-value>GB2312</param-value>也为GB2312。总之一条:就是上述两者一致即可,比如同为UTF-8
将过滤器的java代码和web.xml的配置写
//--------java代码部分:CharsetFilter .java
package com;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class CharsetFilter implements Filter {
private String charset = "GB2312";
public void destroy() {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain arg2) throws IOException, ServletException {
request.setCharacterEncoding(charset);
arg2.doFilter(request, response);
}
public void init(FilterConfig arg0) throws ServletException {
charset = arg0.getInitParameter("charset");
System.out.println("字符过滤器开启,当前状态:"+charset);
}
}
//--------web.xml部分(以下部分可以直接复制粘贴到WEB.XML下)
<filter>
<filter-name>CharsetFilter</filter-name>
<filter-class>com.CharsetFilter</fi


相关文档:

JSP中的COOKIE操作


JSP中的COOKIE操作
Cookie概念:
    Cookie的格式实际上是一段纯文本信息, 由服务器随着网页一起发送到客户端, 并保存在客户端硬盘中指定的目录的. 大家都传说Cookie会造成严重的安全威胁什么的, 其实不是这么回事情. 服务器读取Cookie的时候, 只能够读取到这个服务 ......

JSP中与路径相关的常用的几个方法


http:/localhost/123/jsp/test.jsp:
<%@ page language="java" pageEncoding="UTF-8"%>

<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<%@ taglib uri="http://struts.apache.org/tags-logi ......

JSP与Sevlet的相互通信方式(二)

Servlet:
在Servlet中,跳转在doGet或者doPost方法中实现。
<1>redirect实现页面跳转:
 response.sendRedirect("/login.jsp");
 方法的参数是相对路径,设定这个参数可以使页面跳转到任何页面,包括www.baidu.com等网络页面。
 跳转后你可以发现地址栏发生了变化。
 底层原理:使用redir ......

JSP中的参数传递方法

(1)利用<jsp:param name="paramName" value="paramValue"></jsp:param>其中name为与属性相关联的关键词,value为属性的值。
    示例:传常量字符串<param name="userName" value="shilei"/>
    示例:传变量 User user=new User("shilei");//User是一个类
 &n ......

jsp之session

     session就是一个全局变量,是浏览器线程在服务器端的代理。web服务程序只要打开,session就会存在,当你第一次访问时,session会自动为你分配一个session ID,所以session为新建立的,所以session.isNew()为true。当你刷新页面时,这个session ID一直存在(session.getId()不变),不会消失,所以se ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号