uploadfilter.java

来自「JavaWeb高级特性书中源代码」· Java 代码 · 共 52 行

JAVA
52
字号
package org.it315.filters;

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.HttpServletRequest;
import org.it315.MultipartRequest;

public class UploadFilter implements Filter 
{
	long sizeMax=0;
	int sizeThreshold=0;
	String repositoryPath=null;
	String headerEncoding=null;
	public void init(FilterConfig config) throws ServletException
	{
	}

	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException 
	{
		HttpServletRequest req = (HttpServletRequest) request;
		String type = req.getHeader("Content-Type");

		//对非"multipart/form-data"类型的请求消息不进行过滤处理
		if (type == null || !type.startsWith("multipart/form-data"))
		{
			chain.doFilter(request, response);
		}
		else
		{
			MultipartRequest mreq = null;
			try
			{
				mreq = new MultipartRequest(req);
			}
			catch(Exception e)
			{
				throw new ServletException(e);
			}
			chain.doFilter(mreq, response);
		}
	}

	public void destroy()
	{
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?