zoukankan      html  css  js  c++  java
  • 子类父类浅谈filter里面为什么要强制转换成httpServletRequest类型

    在本篇文章中,我们主要介绍子类父类的内容,自我感觉有个不错的建议和大家分享下

    public void doFilter(ServletRequest request,

        ServletResponse response, FilterChain chain)

        throws IOException,ServletException

        {

        //获取该Filter的配置参数

        String encoding = config.getInitParameter("encoding");

        String loginPage = config.getInitParameter("loginPage");

        String proLogin = config.getInitParameter("proLogin");

        //设置request编码用的字符集

        request.setCharacterEncoding(encoding);

        //①

        HttpServletRequest requ = (HttpServletRequest)request;

        每日一道理
    时间好比一条小溪,它能招引我们奔向生活的海洋;时间如同一叶扁舟,它将帮助我们驶向理想的彼岸;时间犹如一支画笔,它会指点我们描绘人生的画卷。

        HttpSession session = requ.getSession(true);

        //获取客户请求的页面

        String requestPath = requ.getServletPath();

        这样的情景,在filter里头总会看到,为啥要强制转换呢?经过测试知道了,if(request instanceOf  HttpServletRequest) System.out.println("true");输出true。

        ServletRequest是HttpServletRequest的父接口,可见request是HttpServletRequest的实现类的对象,上面就会用到多态的知识,

        ServletRequest request;这个是将子类对象赋给父类引用,他运行时的类型是子类,编译时的类型是父类,但是在运行时,父类类型对象调用的方法如果子类里头有,那就执行子类里头的方法,如果编译时的类型也就是父类没有调用的那个方法,则报错。所以在那里要做一个强制类型转换,否则就会报错。

    文章结束给大家分享下程序员的一些笑话语录: Google事件并不像国内主流媒体普遍误导的那样,它仅仅是中国Z府和美国公司、中国文化和美国文化甚至中国人和美国人之间的关系,是民族主义和帝国主义之间的关系;更重要的是,它就是Z府和公司之间的关系,是权力管制和市场自由之间的关系。从这个意义上说,过度管制下的受害者,主要是国内的企业。Google可以抽身而去,国内的企业只能祈望特区。www.ishuo.cn

  • 相关阅读:
    搜狗图片抓取,主要以图集类进行抓取
    使用mongo进行去重操作
    爬虫实战01_淘宝模拟登录
    Linux常用命令02(远程管理)
    Linux常用命令01(文件和目录)
    Linux终端命令格式
    常用Linux命令的基本使用
    闭包与私有变量
    三栏布局的几种方法
    redux和react-redux小记
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3093708.html
Copyright © 2011-2022 走看看