• Filter servlet action interceptor 和listener


      好吧,其实我是做session超时的处理,结果去网上一查就引出了一大段的问题。然后开始一层层的去理解web,web是基于Http(超文本传输协议)的,超文本传输协议又是基于(TCP)可靠传输协议,互联网的先辈们,天才般的创造了这个连接世界的东西,从最底层物理层层层上进到传输层方把用信号连接世界变为可能,太底层的东西这里无法说出所以然,扯tcp也会很远,http不过是把tcp封装后加入自己的样式变成一种规则,一种网络传输的"国际语言而已",而servlet 则可以解读"国际语言"中对应的信息,这些信息就是包含用户请求的东西,然后经过程序处理完后再封装成“国际语言”传送出去。计算机的国际语言人类不懂,但是有浏览器这个翻译,所以人类便能知晓他从网上获得的内容。这样理解整个网络的问题可能会有偏颇,但我想也差不太远。 如此正好引出了servlet。

        之前学习网络的时候就知道前台页面请求是发给servlet处理,然后陆陆续续又出了filter过滤器,struts的action,还有inteceptor等等,就混了,这些东西都可以拿到web请求的内容,然而它们又有自己的特色,filter是协同servlet的他是servlet的良好助手,请求过来前先给filter过目,看上眼的再交给servlet,servlet处理完后再交给他美化下,然后返回给用户,说起来也自然而然,至于何故又出了struts的action和interceptor呢,原来人们总想把一种东西做到完美,对于web交互这东西一概而论自然也可以说通,但总会让人难以一目了然,于是乎变出现了mvc这个模式,struts则完美的实现了他,struts中的DispatcherFilter等同于filter只不过有自己的规则体系,他通过解析配置文件struts.xml讲拿到的请求url一一匹配然后寻找到具体类的具体方法执行,完了还有执行结果改发送到那个页面他也可以很好处理,它就相当于c control一个控制中心,自然请求与它的为v视图表现,而它所依赖的为m model模型,  那么说到这里题目的各个执行顺序就变为Servlet? Filter? Struts2的DispatcherFilter的执行顺序了filter配置于servlert之前自然优先,而Struts2的DispatcherFilter与普通自定义filter同级别,于是顺序取决于web.xml的配置,而inteceptor又是在action之前完成拦截的于是大体顺序可以这样listener>filter=(intercepror>action)>servlet,当然这只是我个人的认为,今后学习精进才能更加准确的把握他们的更详细知识。

  • 相关阅读:
    centos下安装chrome
    【CRT】设置 ip 显示和标签动作
    【IDEA】修改自动提示框的颜色
    【IDEA】monikai 主题
    【snmp】snmpwalk 指定端口
    【多对多】多对多取数无序的问题
    【百度搜索】屏蔽广告,高效搜索
    mybatis报错:Cause: java.io.FileNotFoundException: http://commons.apache.org/dtds/mbeans-descriptors.dtd
    怎么让request inputstream 可以多次读取
    win10下git bash console中文乱码
  • 原文地址:https://www.cnblogs.com/wq123/p/2985384.html
Copyright © 2020-2023  润新知