introducefilter.java

来自「java web网络编程示例,原代码资源」· Java 代码 · 共 49 行

JAVA
49
字号
package edu.liusong.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.HttpServletRequest;
import edu.liusong.dao.BoardDAO;
import edu.liusong.dao.IntroduceDAO;
import edu.liusong.dao.NewsDAO;
import edu.liusong.mo.Introduce;

public class IntroduceFilter implements Filter {
	protected FilterConfig config = null;

	public void destroy() {
		config = null;
	}

	public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) throws IOException,
			ServletException {
		HttpServletRequest request = (HttpServletRequest) arg0;
		Introduce introduce = (Introduce) request.getAttribute("introduce");

		if (introduce == null) {
			// 初始化介绍
			request.setAttribute("introduce", new IntroduceDAO().get(request.getParameter("id")));
		}
		if (request.getAttribute("boardList") == null) {
			// 左边导航栏的信息未初始化
			request.setAttribute("boardList", new BoardDAO().getBoards());
		}
		if(request.getAttribute("newsList")==null){
			//右侧通知初始化
			request.setAttribute("newsList", new NewsDAO().getTopNews());
		}
		arg2.doFilter(arg0, arg1);

	}

	public void init(FilterConfig arg0) throws ServletException {
		config = arg0;
	}
}

⌨️ 快捷键说明

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