• ServletContext、webApplicationContext、DispatcherServlet与容器


    浅谈容器

    • ServletContext的由来
    • ServletContext、webApplicationContext、DispatcherServlet之间的关系
    • 上下文其实就是容器,通过键值对存储信息,可以在view(jsp,freemarker等)上按照你的逻辑展示出来

    servlet

    大家做web开发的都应该知道servlet,它是一些的框架的底层。大部分框架都是对它的封装而来的,比如:很牛逼的spring。 
    那么问题来了servlet是什么呢?

    先从请求说起,我们在浏览器地址栏上输入一个网址时,比如 https://www.baidu.com/。当我们按下回车后,其实这个请求已经通过http协议发送到了web服务器上。web服务器会对这个请求进行相应的处理返回我们想要的东西,比如:一张好看的图片、各种小说。servlet其实就是用来处理这个请求的。

    Servlet三大域对象的应用

    • request
    • session
    • application(ServletContext)

    request(请求),一个用户可有多个; 
    session(会话),一个用户一个,可以保持请求的状态,让web服务器识别出你的身份; 
    servletContext,所有用户共用一个。所以,为了节省空间,提高效率,ServletContext中,要放必须的、重要的、所有用户需要共享的线程又是安全的一些信息(比如可以存放多个页面中公共的动态数据,可以起到一个缓存的作用)。

    tomcat

    一个web服务器,用来处理一些http请求。当我们将一个项目打成war部署到webapps下,在tomcat启动后就会生成一个对应的context(通过设置一个监听器,当tomcat启动时自动创建一个全局的ServletContext)。这个里面会包含很多servlet,其实context就可以理解为servlet的容器。对应到java的代码里,context就是ServletContext这个类。ServletContext是一个全局的储存信息的空间,服务器开始就存在,服务器关闭才释放。ServletContext通过键值对(Map)将serlvet存储。

    ServletContext、webApplicationContext、DispatcherServlet之间的关系

    WebApplicationContext(ioc容器)需要依赖servletContext这个宿主环境。 
    DispatcherServlet上下文可以访问WebApplicationContext上下文中的bean,反之则不行。因为WebApplicationContext是dispatcherServlet上下文的父容器。

     

    https://blog.csdn.net/a1102325298/article/details/80543544

  • 相关阅读:
    Linux下调试caffe
    MXnet的使用
    Cmake的使用
    深度学习的移动端实现
    【WPF】面板布局介绍Grid、StackPanel、DockPanel、WrapPanel
    【WinForm】Dev ComboxEdit、BarManager的RepositoryItemComboBox、ComboBox操作汇总
    【WinForm】DataGridView使用小结
    【Linux】常用指令
    【c++】MFC 程序入口和执行流程
    【WPF】拖拽改变控件大小
  • 原文地址:https://www.cnblogs.com/feng9exe/p/12095519.html
Copyright © 2020-2023  润新知