`
tianjun309
  • 浏览: 368376 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

filter_setEncoding_note

阅读更多

(1)通过struts内部的RequestProcessor来设置编码。

EncodingHandler.java

package com.test.util;

import java.io.UnsupportedEncodingException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.RequestProcessor;

public class EncodingHandler extends RequestProcessor
{

	@Override
	protected boolean processPreprocess(HttpServletRequest request,
			HttpServletResponse response)
	{
		try
		{
			//当struts-config.xml中设置了此类的controller,所有请求会先经过这边做处理。
			// <controller processorClass="com.test.util.EncodingHandler"></controller>
			request.setCharacterEncoding("utf-8");
		}
		catch (UnsupportedEncodingException e)
		{
			e.printStackTrace();
		}
		return true;
	}
	
}

 

(2)通过servlet 的filter来设置编码,更通用。

EncodingServlet.java

package com.test.filter;

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;
import javax.servlet.http.HttpServlet;

public class EncodingServlet extends HttpServlet implements Filter
{
	private static final long serialVersionUID = 1L;

	@Override
	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain filterChain) throws IOException, ServletException
	{
		try
		{
			request.setCharacterEncoding("utf-8");
			filterChain.doFilter(request, response);
		}
		catch (Exception ex)
		{
		}

	}

	@Override
	public void init(FilterConfig arg0) throws ServletException
	{

	}

}

 

 

web.xml

 <filter>
  	<filter-name>encodingFilter</filter-name>
	<filter-class>com.test.filter.EncodingServlet</filter-class>
  </filter>
  
  <filter-mapping>
  	<filter-name>encodingFilter</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping>

 

分享到:
评论

相关推荐

    PHP编码转换函数mb_convert_encoding与iconv用法__1.docx

    string mb_convert_encoding ( string $str , string $to_encoding [, mixed $from_encoding = mb_internal_encoding() ] ) ``` - `$str`:要转换的字符串。 - `$to_encoding`:目标编码格式,例如"UTF-8"、"GBK"等...

    mod_encoding(apache支持中文路径工具)

    LoadModule encoding_module modules/mod_encoding.so ``` 然后,可以使用`AddDefaultCharset`指令来设置服务器默认的字符集,例如: ```apacheconf AddDefaultCharset UTF-8 ``` 这将告诉Apache所有未指定编码的...

    C#例子代码 A0103_FileEncoding

    C#例子代码 A0103_FileEncodingC#例子...A0103_FileEncodingC#例子代码 A0103_FileEncodingC#例子代码 A0103_FileEncodingC#例子代码 A0103_FileEncodingC#例子代码 A0103_FileEncodingC#例子代码 A0103_FileEncoding

    64位环境的mod_encoding模块

    通常,这会涉及到在配置文件中添加类似`LoadModule encoding_module modules/mod_encoding.so`的指令,确保Apache在启动时加载这个模块。 `mod_encoding-64位linux安装方法.txt`文件应该包含了详细的安装和配置步骤...

    mod_encoding_2010.zip

    "mod_encoding_2010.zip"这个压缩包文件,显然与Apache服务器的一个特定模块——mod_encoding有关,该模块主要解决的是Apache在处理包含非ASCII字符(如中文)的URL路径时的问题。 Apache默认情况下,可能会对包含...

    mod_encoding-

    4. 配置Apache服务器,将 `mod_encoding` 加入到加载模块的配置中,如在 `httpd.conf` 文件中添加 `LoadModule encoding_module modules/mod_encoding.so`。 5. 重启Apache服务器使更改生效,可以使用 `sudo service...

    php编码转换,不需要iconv,mb_convert_encoding

    本文将深入探讨如何在不使用`iconv`和`mb_convert_encoding`函数的情况下进行PHP编码转换。 首先,理解编码的概念是至关重要的。编码是将字符集中的字符映射为数字或二进制表示的过程,常见的字符集有ASCII、ISO-...

    PDUdecoding.rar_7bit_AT pdu_pdu_pdu encoding sms

    本文将详细解析标题“PDUdecoding.rar_7bit_AT pdu_pdu_pdu encoding sms”所涵盖的知识点,包括7位编码、AT命令、PDU模式以及SMS短信的处理。 首先,7位编码是短信传输中最基础的数据编码方式。由于GSM系统对短信...

    mod_jk_chunked_encoding_dos.nasl

    mod_jk_chunked_encoding_dos

    mod_encoding-2.2.0-1.i386.tar.gz

    LoadModule encoding_module modules/mod_encoding.so &lt;IfModule mod_headers.c&gt; Header add MS-Author-Via "DAV" &lt;IfModule mod_encoding.c&gt; EncodingEngine on NormalizeUsername on SetServerEncoding ...

    对Servlet 中 request.setEncoding("utf-8")的分析

    当调用`request.setEncoding("utf-8")`时,实际上是调用了`Request`类的`setCharacterEncoding`方法。这个方法首先检查一个布尔变量`usingReader`。如果`usingReader`为`true`,则意味着已经调用了`getReader()`...

    php使用mb_check_encoding检查字符串在指定的编码里是否有效

    bool mb_check_encoding ([ string $var = NULL [, string $encoding = mb_internal_encoding() ]] ) ``` 参数说明: 1. `var`:这是可选参数,用于指定要检查的字符串。如果不提供,函数将检查整个请求中的所有输入...

    mod_encoding_64.tar.gz

    在IT行业中,尤其是在Web服务器和应用服务器的配置中,经常...如果你已经解压了`mod_encoding_64`文件,那么其中的文档、示例配置或脚本可能包含更具体的解决指南。记得在修改任何配置之前先备份原有设置,以防万一。

    mywork.rar_HUFFMAN ENCODING_Huffman Encoder_huffman matlab

    描述中的"arithmetic encoding"指的是算术编码,这是另一种数据压缩技术,与Huffman编码类似,也是一种变长编码方式。与Huffman编码不同的是,算术编码不直接为每个字符分配码字,而是通过在[0, 1)区间内连续划分...

    matlab-LDPC.rar_LDPC_ldpc matlab_ldpc decoding_ldpc encoding_ma

    ldpc material about ldpc techniques,like encoding and decoding

    Set Character Encoding_0.51.zip

    标题中的“Set Character Encoding_0.51.zip”指的是一个版本为0.51的名为“Set Character Encoding”的软件插件的压缩包文件。这个插件是专为谷歌浏览器(Google Chrome)设计的,其主要功能是允许用户手动调整...

    PHP编码转换函数mb_convert_encoding与iconv用法_.docx

    首先,`mb_convert_encoding`函数用于将字符串`str`的字符编码从`from_encoding`转换到`to_encoding`。这个函数需要安装`mbstring`扩展,如果在PHP环境中未安装,可以通过以下步骤安装: 1. 进入PHP的`ext/mbstring...

    t_urbo.rar_siso decoding turbo_turbo_turbo SISO_turbo encoding_

    介绍了turbo码的编码和通用siso译码模块

    Manchester-Encoding-Verilog.rar_manchester encoding_manchester v

    THIS DESIGN IS PROVIDED TO YOU “AS IS”. XILINX MAKES AND YOU RECEIVE NO WARRANTIES OR CONDITIONS, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, AND XILINX SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES ...

    1553B_enc_dec.rar_1553_1553B_1553B 编码_bus encoding_曼彻斯特编码

    155B航空总线中曼彻斯特编码和译码模块,亲测可以使用,而且很好用,但是对锁相环的描述不是很仔细

Global site tag (gtag.js) - Google Analytics