JavaWeb学习笔记①——Java向下转型在JavaEE中运用——登陆验证
在学习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(); //取得sessionif(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
JavaWeb学习笔记①——Java向下转型在JavaEE中运用——登陆验证相关推荐
- JavaWeb学习笔记(动态SQL)
JavaWeb学习笔记(动态SQL) 动态SQL中的元素 < if>元素 < choose>.< when>.< otherwise>元素 < w ...
- java web孤傲苍狼,JavaWeb学习笔记
我看的资料是孤傲苍狼的javaweb学习笔记,他写的真的很全,这或许就是社区力量吧!哪些问题不知道,上网搜一搜就有了,让自己不进步的敌人,只有懒惰了. 这是我接触JavaWeb的第二周,有一些自己的理 ...
- JavaWeb学习笔记(十)--HttpServletRequest
1. HttpServletRequest简介 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中 2. Ht ...
- JavaWeb学习笔记2 —— Web服务器简介
JavaWeb学习笔记2 -- Web服务器简介 参考教程B站狂神https://www.bilibili.com/video/BV12J411M7Sj 相关技术 ASP: 微软:国内最早流行的就是A ...
- B站狂神说JavaWeb学习笔记
JavaWeb学习笔记(根据b站狂神说java编写) 1.基本概念 1.1 前言 静态Web: 提供给所有人看数据不会发生变化! HTML,CSS 动态Web: 有数据交互,登录账号密码,网站访问人数 ...
- JavaWeb学习笔记(5)-B站尚硅谷
文章目录 十四.书城项目第三阶段--优化 (1)页面jsp动态化 (2)抽取页面中相同的内容 A.登录成功的菜单 B.base.css.jQuery标签 C.每个页面的页脚 D.manager模块的菜 ...
- javaweb学习笔记2(jquery的使用,以及常用的方法,选择器,过滤器)
javaweb学习笔记2 javascript正则表达式 regfxp对象 方式1: var putt=new RegExp("e");//表示要求字符串中必须包含字符串evar ...
- 【javaweb学习笔记】servlet-api,filter和Listener
javaweb学习笔记 1. servlet-api 1.1 servlet初始化 1.2 ServletContext和context-param 2. 什么是业务层 3. IOC 3.1 耦合/依 ...
- Javaweb学习笔记(JSP标准标签库)
Javaweb学习笔记(JSP标准标签库) JSTL入门 安装和测试JSTL JSTL中的Core标签库 < c:out>标签 标签 标签 < c:catch>标签 标签 标签 ...
最新文章
- python提取文件名数字_在Python中从文件名提取扩展名
- C#图片处理常见方法性能比较
- 继承Javadoc方法注释
- 工作总结17:组件封装思想
- 学霸女神冯净冰:我是如何从复旦走到诺奖获得者经济学大会的
- python中提取几列_Python一键提取PDF中的表格到Excel(实例50)
- servlet mysql 分页_Java基础94 分页查询(以MySQL数据库为例,Servlet技术)
- 297 - Quadtrees
- 学习笔记︱深度学习以及R中并行算法的应用(GPU)
- 解决开始时cmd进入dos中ping会提示未出现在内部文件中
- Ubuntu18.04 wineQQ完美配置(解决不能输入中文、不能加载头像和图片、企鹅图标不能进入托盘任务栏等问题,附deepin-wine、微信、QQ安装包网盘链接)
- android 下的虚拟机下载地址,Android x86 虚拟机镜像下介绍及下载
- 维修手册 html 打开,戴尔Dell Latitude E6410/E6510官方拆机图解维修手册
- uni-app 小程序分享到朋友和朋友圈
- UDP丢包替代:用PCAP实现C/C++以太网SDR吞吐
- 微信计步器怎么不计步_微信运动不计步数是怎么回事?
- 高德足迹地图在哪里_高德地图怎么点亮城市 足迹地图查看方法
- 电脑唯独搜不到自己家wifi,怎么办?
- 知识那么多,作为一个IT人我们该怎样有效的学习?
- HTML屏蔽F12、右键、开发者工具、审查元素