`
thecloud
  • 浏览: 901832 次
文章分类
社区版块
存档分类
最新评论

DRP中用到的几个filter

 
阅读更多

1、利用filter对一些不变的数据进行简单缓存,例如图片

	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException {
		HttpServletRequest req = (HttpServletRequest)request;
		HttpServletResponse res = (HttpServletResponse)response;
                //时间可以也可以配到初始化参数中
		res.setHeader("Cache-control", "max-age=5000");
		
		chain.doFilter(request, response);
	}
配置文件

<filter> <filter-name>WebCacheFilter</filter-name> <filter-class>com.jialin.drp.util.WebCacheFilter</filter-class> </filter>

<filter-mapping> <filter-name>WebCacheFilter</filter-name> <url-pattern>*.gif</url-pattern> </filter-mapping>

<filter-mapping> <filter-name>WebCacheFilter</filter-name> <url-pattern>*.jpg</url-pattern> </filter-mapping>

<filter-mapping> <filter-name>WebCacheFilter</filter-name> <url-pattern>*.js</url-pattern> </filter-mapping>

<filter-mapping> <filter-name>WebCacheFilter</filter-name> <url-pattern>*.css</url-pattern> </filter-mapping>



2、判断用户是否已登录(除去登录界面和登录界面验证码的servlet)

public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException {
		HttpServletRequest req = (HttpServletRequest)request;
		HttpServletResponse res = (HttpServletResponse)response;
	
		//获取登录URI
		String requestURI = req.getRequestURI().substring(req.getRequestURI().indexOf("/", 1), req.getRequestURI().length());
		//登录界面和登录界面用到的验证码servlet不验证
		if (!"/login.jsp".equals(requestURI) && !"/servlet/AuthImageServlet".equals(requestURI)) {
			HttpSession session = req.getSession(false);
			if (session == null || session.getAttribute("user_info") == null) {
				res.sendRedirect(req.getContextPath() + "/login.jsp");
				return;
			}
		}
		//继续访问其他资源
		chain.doFilter(req, res);
	}


配置文件

<filter>
		<filter-name>AuthFilter</filter-name>
		<filter-class>com.jialin.drp.util.AuthFilter</filter-class>
	</filter>

	<filter-mapping>
		<filter-name>AuthFilter</filter-name>
		<url-pattern>*.jsp</url-pattern>
	</filter-mapping>

	<filter-mapping>
		<filter-name>AuthFilter</filter-name>
		<url-pattern>/servlet/*</url-pattern>
	</filter-mapping>


3、控制编码的filter

@Override
	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException {
		//设置编码
		request.setCharacterEncoding(encoding);
		chain.doFilter(request, response);
		
	}

	@Override
	public void init(FilterConfig filterConfig) throws ServletException {
		//获取filter初始化参数信息
		this.encoding=filterConfig.getInitParameter("encoding");

	}


配置文件

<filter>
		<filter-name>CharsetEncodingFilter</filter-name>
		<filter-class>com.jialin.drp.util.filter.CharsetEncodingFilter</filter-class>
		<init-param>
			<param-name>encoding</param-name>
			<param-value>GBK</param-value>
		</init-param>
	</filter>

	<filter-mapping>
		<filter-name>CharsetEncodingFilter</filter-name>
		<url-pattern>*.jsp</url-pattern>
	</filter-mapping>

	<filter-mapping>
		<filter-name>CharsetEncodingFilter</filter-name>
		<url-pattern>/servlet/*</url-pattern>
	</filter-mapping>


分享到:
评论

相关推荐

    一个很不错的 drp 系统

    DRP系统通常包含以下几个关键模块: 1. 订单管理:系统应能接收和处理来自不同渠道的订单,包括线上线下订单,并进行整合与验证。 2. 库存控制:实时跟踪库存状态,预测未来需求,以确保供需平衡,避免过度库存或...

    DRP完整版_资料_DRP培训日志

    在《动力节点_王勇_Java项目视频_DRP完整版_资料_DRP培训日志.pdf》这个文件中,你将可以深入学习到如何利用Java技术实现DRP系统,包括可能涉及到的数据库设计、接口开发、算法应用等内容。这将帮助IT专业人士了解...

    drp项目

    描述中的"drp项目"没有提供具体细节,但我们可以推测它可能涉及到以下几个关键知识点: 1. **需求分析**:这是项目开始的首要步骤,包括理解业务流程、识别问题、定义目标和收集用户需求。这一步需要与各部门进行...

    医疗drp管理系统

    系统设计上,DRP管理系统通常包含以下几个关键模块:药品信息管理、库存管理、采购管理、销售管理以及报表分析。药品信息管理模块用于记录药品的基本信息,如名称、规格、厂家、有效期等;库存管理模块实时跟踪药品...

    DRP完整版_资料_DRP_HTML演示版本

    2. **工作流程**:通过互动演示,让用户了解DRP如何处理从需求预测到生产计划的全过程。 3. **案例研究**:可能包含真实或模拟的业务场景,解释DRP如何解决特定问题。 4. **教程和指南**:帮助用户理解和学习如何...

    drp尚学堂培训日志

    日志中涵盖了从项目开发流程、技术选型到具体业务流程的多个方面。 首先,Web项目开发的一般流程包括需求确定、需求分析(包括架构分析和设计、业务逻辑分析和设计、界面设计)、开发环境搭建、开发和测试以及文档...

    drp项目 提供页面

    DRP项目通常涉及多个方面,包括需求预测、库存控制、物流规划以及销售与运营计划等。在这个“drp项目 提供页面”中,我们可以通过提供的文件深入理解DRP的核心概念和技术应用。 首先,"DRP项目资料_drp.ppt"可能是...

    DRP分销资源计划

    DRP系统通常包括以下几个关键模块: 1. 需求预测:基于历史销售数据、市场趋势和季节性因素,DRP系统能预测未来的销售需求。这有助于企业提前准备库存,避免过度库存或缺货的情况。 2. 库存管理:DRP能够实时监控...

    DRP(资源分销管理)

    在IT领域,尤其是Web开发中,DRP项目通常是一个挑战性的实践任务,适合初级到中级的开发者进行技能提升。 首先,DRP系统的核心目标是优化供应链管理,确保产品和服务能够有效地从生产者流向消费者。这涉及库存管理...

    drp系统详细文档

    在设计DRP系统时,需重点关注以下几个方面: 1. **安全性**:确保用户数据的安全,通过密码强度要求、敏感信息加密等方式提升系统防护能力。 2. **用户体验**:优化用户界面设计,简化操作流程,提供直观的交互体验...

    drp-webserver

    "drp-webserver"是一个可能代表分布式资源平台(DRP,Distributed Resource Platform)的Web服务器组件。在IT行业中,Web服务器是用于处理HTTP请求并返回网页内容的软件。DRP通常涉及到系统间的资源管理和协调,它...

    drp.rar_DRP_drp sql

    在本项目“drp.rar_DRP_drp sql”中,我们看到的是一个与营销相关的DRP系统,尽管功能尚未完全开发完毕,但已经足够让我们探讨DRP系统和SQL在实际应用中的关键作用。 首先,让我们深入了解DRP系统。DRP系统是基于...

    完善的分销资源计划(DRP)管理系统模板

    在DRP系统中,以下几个核心模块是必不可少的: 1. **需求预测**:DRP系统需要具备根据历史销售数据和市场趋势进行精确预测的能力。这有助于企业提前规划生产或采购,避免过度库存或缺货的情况。 2. **库存管理**:...

    drp(管理分销系统)

    在这个场景中,我们讨论的是一个名为"drp"的管理分销系统项目,它是由Java编写的。 首先,我们要理解Java在构建DRP系统中的作用。Java是一种广泛使用的面向对象的编程语言,因其跨平台的特性(Write Once, Run ...

    王勇drp项目源码及文档

    【王勇DRP项目源码及文档】是一个包含有完整源代码和相关文档的资源集合,专注于企业资源规划(DRP,Distribution Resource Planning)系统。DRP是一种管理软件,用于帮助企业在分销和供应链管理中优化资源分配,...

    王勇 drp 最新版本

    王勇老师(动力节点),最新的drp项目是shoping项目的代替品

    王勇老师讲解DRP系统源码

    DRP系统的核心功能可能包括以下几个方面: 1. **销售管理**:跟踪销售订单,预测需求,生成销售预测报告。 2. **库存管理**:监控库存水平,自动触发补货请求,避免过度库存或缺货。 3. **采购管理**:根据需求制定...

    drp.rar_DRP

    在这个名为"DRP"的项目中,我们可以看到STRUTS框架如何被巧妙地应用到实际的业务场景中。 首先,让我们了解一下DRP(Distribution Resource Planning),它是分销资源计划的缩写,通常用于企业的供应链管理,帮助...

    drp分销管理系统

    - **多线程**:Java对多线程的良好支持,使得DRP系统能并发处理多个任务,提高系统性能。 3. **drp5.1版本可能包含的内容**: - **源代码**:Java源文件(.java)组成的核心业务逻辑和组件。 - **编译后的类文件...

    DRP.zip_DRP_interleaver_交织器 drp

    DRP交织器的具体工作原理可能涉及以下几个方面: 1. **数据重排**:原始数据流被分割成多个小段,然后按照预定的模式重新排序。这种重排方式可以打乱原本连续的错误模式,使它们在经过解交织后变得分散。 2. **...

Global site tag (gtag.js) - Google Analytics