博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaWeb学习笔记①——Java向下转型在JavaEE中运用——登陆验证
阅读量:6305 次
发布时间:2019-06-22

本文共 1364 字,大约阅读时间需要 4 分钟。

在学习JavaEE的过程中慢慢了解到Java中编程思想的优秀设计,以下将是一个多态-向下转型的示例,该实例是在Servlet-过滤器中的登陆验证的示例,代码中运用向下转型解决问题

import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterConfig;import javax.servlet.FilterChain;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletReponse;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpSession;public class LoginFilter implements Filter{	public void init(FilterCOnfig config) throws ServletException{		}	public void doFilter(ServletRequest request, ServletResponse response, Filter chain) throws IOException, ServletException{		HttpServletRequest req = (HttpServletRequest) request;               //向下转型		HttpSession ses = req.getSession();                                  //取得session		if(ses.getAttribute("useid") != null){                               //判断是否登录			chain.doFilter(request, response);                           //传递请求		}else{
request.getRequestDispatcher("login.jsp").forward(request, response); //转到登陆页 } } public void destory(){ //销毁过滤 } }

  session本身是术语HTTP协议的范畴,但是doFilter()方法中定义的事ServletRequest类型的对象,那么要想取得session,则必须进行向下转型,将ServletRequest变为HttpServletRequest接口对象,才能通过getSession()方法取得session对象。

转载于:https://www.cnblogs.com/hellopojun/archive/2012/07/03/2574916.html

你可能感兴趣的文章
JDBC(三)数据库连接和数据增删改查
查看>>
淘宝应对"双11"的技术架构分析
查看>>
ssh
查看>>
订单的子单表格设置颜色
查看>>
Office365 Exchange Hybrid 番外篇 ADFS后端SQL群集(一)
查看>>
9个offer,12家公司,35场面试,从微软到谷歌,应届计算机毕业生的2012求职之路...
查看>>
lvs fullnat部署手册(三)rs内核加载toa篇
查看>>
C++策略模式
查看>>
我的友情链接
查看>>
oracle表分区详解
查看>>
网络编程中常见结构体
查看>>
SSL/TLS原理详解
查看>>
Docker 自定义SSH服务镜像
查看>>
JavaScript强化教程 —— Cocos2d-JS自动JSB绑定规则修改
查看>>
configure: error: in `/root/httpd-2.2.11/srclib/apr': c
查看>>
CentOS7搭建Kubernetes-dashboard管理服务
查看>>
buildroot下查找外部编译器通过ext-toolchain-wrapper调用的参数
查看>>
MySQL Replication 主主配置详细说明
查看>>
Linux的任务调度
查看>>
在Android studio中添加jar包方法如下
查看>>