package cn.itcast.web.tag;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.SkipPageException;
import javax.servlet.jsp.tagext.SimpleTagSupport;
public class RefererTag extends SimpleTagSupport {
private String site;
private String page;
public void setSite(String site) {
this.site = site;
}
public void setPage(String page) {
this.page = page;
}
@Override
public void doTag() throws JspException, IOException {
//看来访问者是从哪个页面来的
PageContext pageContext = (PageContext)this.getJspContext();
HttpServletRequest request = (HttpServletRequest) pageContext.getRequest();
String referer = request.getHeader("referer"); //
http://www.sina.com/index.html
//判断
if(referer==null || !referer.startsWith(site)){
HttpServletResponse response = (HttpServletResponse) pageContext.getResponse();
String webroot = request.getContextPath(); //day11_example
if(page.startsWith(webroot)){
response.sendRedirect(page);
}else{
response.sendRedirect(webroot + page);
}
//重定向后,控制保护的页面不要执行
throw new SkipPageException();
}
}
}
相关推荐
破解图片防盗链,有时连接不了网站的图片,因为对方有防盗链系统,写一个servlet代码
本资源包含 防盗链 、字符编码过滤、日志、异常处理、权限管理、字符过滤、图片水印、Cache缓存等 可直接使用 使用方法请看配置文件
防止他人引用自己的图片,或者盗用自己的图片
简单的jsp+servlet环境,通过一个数据库操作封装类进行数据库操作
刚刚接触java时做的日志管理系统,做的很简单,适合初学着 servlet servlet servlet servlet servlet日志管理系统 servlet servlet servlet servlet servlet日志管理系统 servlet servlet servlet servlet servlet...
Servlet详解 Servlet详解 Servlet详解
servlet基础与servlet容器模型
用注解的方式定义一个Servlet,就不用在web.xml中配置了。Servlet的访问URL是Servlet的必选属性,可以选择使用urlPatterns或者value定义。 像上面的AnnotationServlet可以描述成@WebServlet(name="Annotation...
一定要记住getelementbyid是指一个元素,不是数组,而getelementsbytagname是数组取值时要记得加上[]记住了
我们老师教学演示的servlet例子 从简单到难文件夹有八个demo供初学者学习 servlet01 servlet02 servlet03 servlet04 servlet05 servlet06 servlet07 servlet08 servlet是在服务器上运行的小程序。这个词是在Java ...
Files contained in javax.servlet.jar: META-INF/MANIFEST.MF javax/servlet/http/LocalStrings.properties javax.servlet.http.HttpSessionBindingListener.class javax.servlet....
SERVLET
servlet入门很好用的servlet入门
全书由16章和2个附录构成,理论结合实际,分门别类讲述了Servlet编程方法、会话管理、服务器端图形生成、网络编程、上传和下载文件、使用数据库、在数据库中存取图象、Servlet链、Servlet服务器端包含、Applet和...
servlet源码 servlet-api-src javax.servlet.Servlet源码
servlet.jar.zip用于servlet程序的开发
servlet线程安全问题servlet线程安全问题
javax.servlet的jar包,解决找不到javax.servlet.*等问题的!欢迎下载!!
servlet 的API与servlet SRC
赠送jar包:jakarta.servlet-api-4.0.4.jar; 赠送原API文档:jakarta.servlet-api-4.0.4-javadoc.jar; 赠送源代码:jakarta.servlet-api-4.0.4-sources.jar; 赠送Maven依赖信息文件:jakarta.servlet-api-4.0.4....