拦截带.html的url
<filter>
<filter-name>logfilter</filter-name>
<filter-class>com.zjxx.jp.filter.MyFilter</filter-class> <!--一个 implements Filter 的实现类,-->
<init-param>
<param-name>excludedPages</param-name>
<param-value>/pub/admin/system/workFlow/listWorkflow.html,/pub/admin/htm/bottom.html,/pub/admin/htm/sidebar2.html,/pub/admin/htm/top.html,/pub/admin/htm/System.html</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>logfilter</filter-name>
<url-pattern>*.html</url-pattern>
</filter-mapping>
package com.zjxx.jp.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 javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.mybatis.spring.SqlSessionTemplate;
import org.springframework.beans.factory.annotation.Autowired;
/** * @author 张保国:
* @date 创建时间:2016年11月16日 下午7:37:52
* @version 1.0
* @parameter
* @since
* @return
*/
public class MyFilter implements Filter{
private String excludedPages;
@Autowired
SqlSessionTemplate sqlSessionTemplate;
// FilterConfig config;
// ServletContext servletContext = this.config.getServletContext();
private String[] excludedPageArray;
@Override
public void init(FilterConfig filterConfig) throws ServletException {
// TODO Auto-generated method stub
excludedPages = filterConfig.getInitParameter("excludedPages");
if (null != excludedPages && excludedPages.length() > 0) {
excludedPageArray = excludedPages.split(",");
}
// this.config = filterConfig;
return;
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletRequest request1 = ((HttpServletRequest) request); //得到request
boolean isExcludedPage = false;
String mString=request1.getRequestURI();//页面获得url
if (mString.contains("pub/admin")) {
isExcludedPage=true ;
}else {
// String filename="";
// String start=filename.substring(0, 1);
// String cacheTbname="zjxx_memory_"+start;
// String cacheInfoTbname="zjxx_memory_info_"+start;
// String sql="";
// //再根据缓存信息表和filename找到classid。
// sql="select classid,infoid from "+cacheTbname+" where filename='"+filename+"';";
// Map<String, Object > map = new HashMap<>();
// map.put("sql", sql);
// Map<String,Object> classidAndInfoidMap = zjxxInformationMapper.runSqlGetMap(map);
// String classid=classidAndInfoidMap.get("classid").toString();
// String infoid =classidAndInfoidMap.get("infoid ").toString();
}
if (isExcludedPage) { //假如是true, 不需要拦截,直接运行
chain.doFilter(request, response);
} else {
HttpSession session = ((HttpServletRequest) request).getSession();
if (session == null || session.getAttribute("") == null) {
((HttpServletResponse) response).sendRedirect("/JavaPlat/pub/admin/system/workFlow/listWorkflow.html");
} else {
chain.doFilter(request, response);
}
}
}
@Override
public void destroy() {
// TODO Auto-generated method stub
}
}