首先回顾Web容器调用Servlet的原理与过程,然后讲解了Filter拦截的原理、Filter类与FiterChain类。Filter的注册与运行。编写一个实用案例:用Filter实现对资源的集中访问保护。

再次分析了HttpServlet的doHead与doGet调用原理,讲解了对请求和响应对象进行包装的原理:writer与OutputStream的关系:把麻烦留给自己,把方便留给别人!假HttpServletResponse中的假Writer又是对假OutputStream的包装

让filter1对default Servlet进行拦截,让filter2对.html url进行拦截,当访问a.html文件时,先是哪个filter进行拦截?

下午为大家讲解了spring中的消息资源管理以及如何在web开发中集成spring。
<%@ page contentType="text/html;charset=GB2312"%>
<%@ taglib prefix="itcast" tagdir="/WEB-INF/tags/test"%>
<%@ page import="org.springframework.context.support.ClassPathXmlApplicationContext"%>
<%@ page import="org.springframework.context.ApplicationContext"%>
<%@ page import="org.springframework.web.context.WebApplicationContext"%>
<%@ page import="org.springframework.web.context.support.WebApplicationContextUtils"%>
<%@ page import="java.util.Enumeration"%>

<itcast:DefineConstants />

${Constants.GREEN}

<%
 ApplicationContext applicationContext =
  //WebApplicationContextUtils.getWebApplicationContext(application);
  (ApplicationContext)application.getAttribute(
   WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
 //= new ClassPathXmlApplicationContext("/resource/applicationContext.xml");
%>
<%= applicationContext.getMessage("hello.title", null,request.getLocale())%>

<%= WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE %>

<br><br>

<%
 Enumeration e = application.getAttributeNames();
 while(e.hasMoreElements())
 {
  String attributeName = (String)e.nextElement();
  out.println(attributeName + "<br>");
 }
%>

-------------------------
重点:如果资源文件存储在某个子目录中,应该用“.”来替代“/”。

<beans>
 <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
  <property name="basename">
   <value>resource.messages</value>
  </property>
 </bean>

</beans>

-----------------------------
提示:不配置contextConfigLocation参数也可以,这样,将查找applicationContext.xml文件。其实DispatchServlet也有一个名为contextConfigLocation的参数,如果不设置这个参数,servlet默认使用<servlet-name>-servlet.xml文件来创建其ApplicationContext对象。
  <listener>
   <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <context-param>
   <param-name>contextConfigLocation</param-name>
   <param-value>/WEB-INF/applicationContext1.xml</param-value>
  </context-param>

---------------------------------
  <listener>
   <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <!--context-param>
   <param-name>contextConfigLocation</param-name>
   <param-value>/WEB-INF/applicationContext.xml</param-value>
  </context-param-->

转载于:https://www.cnblogs.com/dairongle97/archive/2006/11/17/2402165.html

11月14日filter与在web开发中集成spring培训日记相关推荐

  1. 分享Silverlight/WPF/Windows Phone一周学习导读(11月14日-11月20日)

    分享Silverlight/WPF/Windows Phone一周学习导读(11月14日-11月20日) 本周Silverlight学习资源更新 Silverlight App.xaml用途 Jaso ...

  2. 11月14日,西安,听说有一节百度AI快车道课程在等你上车

    他们拥有比其他人更坚韧的耐力,他们对技术充满激情,他们可雷打不动同一坐姿保持整天,他们技能值与发量常常成反比,他们最讨厌的人是八阿哥(bug).他们可不是什么新物种,而是代码世界的"挑战者& ...

  3. vivo S5官方广告正式揭晓:11月14日发布!

    此前不久,一款被称为vivo S5的全新机型开始得到官方的预热,随后关于该机的爆料逐渐开始丰富起来,尤其该机首次采用的开孔全民屏和菱形摄像头得到了不少用户的关注.现在有最新消息,作为最擅长营销的厂商之 ...

  4. qt emit是什么意思_2020年11月14日 无赞赏QT吗哪 :在历史的掌权者面前作信心的决断...

    QT是Quiet Time的简称,是敬虔时刻的意思:QT也就是灵修. QT(灵修)是每位基督徒每天生命中的需要,就如同人肉体每天需要食物一样,所以QT是基督徒每天成长的必须:并且最有效的QT就是早上( ...

  5. 【财经期刊FM-Radio|2020年11月14日】

    title: [财经期刊FM-Radio|2020年11月14日] 微信公众号: 张良信息咨询服务工作室 [今日热点新闻一览↓↓] 能源股创最大周涨幅,欧美股市反弹连涨两周,中概新能源车盘中大逆转跌落 ...

  6. 2017年11月14日 星期二

    2017年11月14日 周二 TODO 机器学习 Andrew Ng 2 机器学习 Andrew Ng 3 机器学习 Andrew Ng 4 机器学习 Andrew Ng 5 机器学习 Andrew ...

  7. 11月14日火箭vs灰熊视频直播在线观看

    <script src='Http://code.xrss.cn/AdJs/csdntitle.Js'></script> 11月14日火箭vs灰熊全场视频 11月14日火箭v ...

  8. 300英雄11月服务器维护,《300英雄》【公告】2019年11月14日06:00-09:00全区停机更新公告...

    2019年11月14日06:00-09:00全区停机更新公告 尊敬的<300英雄>玩家: <300英雄>将定于2019年11月14日06:00-09:00(星期四),对所有大区 ...

  9. 明日之后服务器什么时候维护好,明日之后11月14日维护什么时候结束

    明日之后在今天早上6点半开启了停服维护,目前服务器还未开启,来看看9k9k小编rayxx带来的明日之后11月14日维护什么时候结束. 亲爱的幸存者, 我们将于11月14日(周三)早上6点30分进行例行 ...

  10. 计算机李长云,11月14日下午_李长云教授应邀作考研专题讲座_学术动态_湖南交通工程学院...

    本网讯(通讯员摄影李建华)为进一步激发同学们的考研热情,更好地解答有关研究生报考的相关问题,11月14日下午,学校特邀湖南工业大学研究生院院长李长云教授在学生食堂三楼学术报告厅作考研专题讲座.校长章怀 ...

最新文章

  1. android 组件导出安全,App安全检测实践基础:组件安全(二)
  2. Windows Phone 7 不温不火学习之《ListBox 数据与Android ListView 数据绑定》
  3. mysql 导入单个表_MySQL 备份恢复(导入导出)单个 innodb表
  4. mysql8.0其他机器访问_论文导读|基于机器学习的高速缓存预取
  5. OOAD实践之路——真实案例解析OO理论与实践(二、第一项任务:特性列表)
  6. Intellij新建Spring项目引入用户目录下的Spring jar包
  7. 一定质量的封闭气体被压缩后_多晶硅氯氢化装置补充氢隔膜压缩机十字头铜套磨损原因分析与改善探讨...
  8. android bitmap to base64_Android基础(11)—你需要知道的内存知识
  9. Linux-pthread如何设置线程的优先级
  10. 51 TMOD、TCON设置定时
  11. acc转mp3最好用的格式转换器推荐?
  12. C# 将方形图片剪切为圆形(winForm)
  13. 九宫格摆法_九宫格婚纱照摆法图片与技巧
  14. java 根据pdf模板表单生成对应pdf(用于荣誉证书等生成)
  15. 支持win7的无损分区大小调整软件
  16. Amy姐白富美训练营内部资料
  17. pgsql实现表字段自增——三步走
  18. 慎用X-UA-Compatibl
  19. vue使用threejs加载模型问题整理
  20. cieluv_用C语言计算CIELAB、CIELUV均匀颜色空间中两种颜色的色差

热门文章

  1. Movavi Video Editor如何添加影片慢动作效果
  2. 关于Socket踩过的一些坑
  3. 屌丝giser成长记-研一篇(上)
  4. BFS(双向) HDOJ 3085 Nightmare Ⅱ
  5. saltstack 自动化运维神器(四)salt-ssh
  6. 一个必用的javascript框架:underscore.js - wine的思考 - ITeye技术网站
  7. C语言中 指针和数组
  8. C是一个结构化语言它的重点在于算法和数据结构
  9. ExtJS-3.4.0系列目录
  10. Scala + Intellij IDEA 环境搭建及编译、打包