1、容器

  • servlet容器

负责管理servlet生命周期。

  • web容器–tomcat

负责管理和部署web应用,其本身可能具备servlet容器组件;如果没有,一般能将第三方servlet容器作为组件整合进web容器。 web容器好比”电视机”,servlet容器好比”VCD”。没有VCD你可以看电视,但是有了VCD没有电视机,你从哪看起? 没有servlet容器,你也可以用web容器直接访问静态页面,比如安装一个apache等,但是如果要显示jsp/servlet,你就要安装一个 servlet容器了,但是光有servlet容器是不够的,因为它要被解析成html输出,所以你仍需要一个web容器.大多数servlet容器同时提供了web容器的功能,也就是说大多servelt可以独立运行你的web应用。

  • IOC容器–Spring Bean Factory

BeanFactory负责配置、创建、管理Bean,他有一个子接口:ApplicationContext,因此也称之为Spring上下文。Spring容器负责管理Bean与Bean之间的依赖关系。

  • Spring容器–Spring Application Context

2、Spring Application Context

只能读放在web-info/classes目录下的配置文件,如图所示:

1.没有前缀:默认为项目的classpath下相对路径 ApplicationContext appCt = new ClassPathXmlApplicationContext(“app.spring.xml”);

2.前缀classpath:表示的是项目的classpath下相对路径 ApplicationContext appCt = new ClassPathXmlApplicationContext(“classpath:app.spring.xml”);

3.使用前缀file 表示的是文件的绝对路径 ApplicationContext appCt = new ClassPathXmlApplicationContext(“file:D:/app.spring.xml”);

4.可以同时加载多个文件 String[] xmlCfg = new String[] { “classpath:base.spring.xml”,”app.spring.xml”}; ApplicationContext appCt = new ClassPathXmlApplicationContext(xmlCfg);

5.使用通配符加载所有符合要求的文件 ApplicationContext appCt = new ClassPathXmlApplicationContext(“*.spring.xml”); ClassPathXmlApplicationContext是spring的容器,用于解析spring的beans.xml,获取响应的bean。 ApplicationContext实例是spring的核心,它既是一个巨大的工厂,还是一个功能超强的工厂。spring框架的绝大部分功能都是通过该容器实现的。 spring就是使用xml配置文件来实现程序中对象的调用,指定实例间的依赖关系。所谓依赖关系,如果a调用了b的方法,就可以称a依赖于b。

  • FileSystemXmlApplicationContext

1.默认为项目工作路径 即项目的根目录 ApplicationContext appCt2 = new FileSystemXmlApplicationContext(“src/main/resources/app.spring.xml”);

2.前缀classpath:表示的是项目的classpath下相对路径 ApplicationContext appCt2 = new FileSystemXmlApplicationContext(“classpath:app.spring.xml”);

3.使用前缀file 表示的是文件的绝对路径 ApplicationContext appCt2 = new FileSystemXmlApplicationContext(“file:D:/app.spring.xml”); ApplicationContext appCt2 = new FileSystemXmlApplicationContext(“D:/app.spring.xml”);

4.可以同时加载多个文件 String[] xmlCfg = new String[] { “src/main/resources/base.spring.xml”,”classpath:app.spring.xml”}; ApplicationContext appCt2 = new FileSystemXmlApplicationContext(xmlCfg);

5.使用通配符加载所有符合要求的文件 ApplicationContext appCt2 = new FileSystemXmlApplicationContext(“classpath:*.spring.xml”);

3、servletContext

参考:https://my.oschina.net/u/1398304/blog/261236

Servlet容器在启动一个Web应用时,会为它创建一个servletContext对象。每个web应用有唯一的servletContext对象。同一个web应用的所有servlet对象共享一个serveltContext,servlet对象可以通过它来访问容器中的各种资源。

如果一个参数为整个web应用所用,那么就配置为ServletContext参数,如下所示:

<context-param>
<param-name>encoding</param-name>
<param-value>gb2312</param-value>
</context-param>

如果一个参数仅为一个Servlet所用,那么就应该配置为ServletConfig参数,如下所示:

<servlet>
<servlet-name>affice_add</servlet-name>
<servlet-class>servlet.Affice_add</servlet-class>
<init-param>
<param-name>filepath</param-name>
<param-value>/webContent/affice</param-value>
</init-param>
</servlet>

【spring mvc】基础概念的更多相关文章

  1. Spring MVC 基础

    Spring MVC 基础 1.Web MVC基础 MVC的本质是表现层模式,我们以视图模型为中心,将视图和控制器分离出来.就如同分层模式一样,我们以业务逻辑为中心,把表现层和数据访问层代码分离出来是 ...

  2. Spring MVC基础了解

    参考网址:https://www.yiibai.com/spring_mvc/springmvc_overview.html Spring框架相关 Spring Security 一个灵活强大的身份验 ...

  3. Spring MVC基础

    1.Web MVC基础 MVC的本质是表现层模式,我们以视图模型为中心,将视图和控制器分离出来.就如同分层模式一样,我们以业务逻辑为中心,把表现层和数据访问层代码分离出来是一样的方法.框架只能在技术层 ...

  4. (一)spring MVC基本概念和流程

    MVC的概念 Model(模型):包含数据和行为.不过现在一般都分离开来:Value Object(数据) 和 服务层(行为). View(视图):负责进行模型的展示,一般就是展示给用户的界面. Co ...

  5. Spring MVC基础知识整理➣环境搭建和Hello World

    概述 Spring MVC属于SpringFrameWork的产品,采用Model-View-Controller进行数据交互,已经融合在Spring Web Flow里面.Spring 框架提供了构 ...

  6. Java Web系列:Spring MVC基础

    1.Web MVC基础 MVC的本质是表现层模式,我们以视图模型为中心,将视图和控制器分离出来.就如同分层模式一样,我们以业务逻辑为中心,把表现层和数据访问层代码分离出来是一样的方法.框架只能在技术层 ...

  7. Spring MVC基础入门

    Spring MVC简介 Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱 ...

  8. spring mvc基础配置

    web.xml 配置: <servlet> <servlet-name>dispatcher</servlet-name> <servlet-class> ...

  9. Spring MVC 基础注解之@RequestMapping、@Controller、(二)

    我现在学的是spring4.2 今天主要学习了Spring MVC注解 引入注解可以减少我们的代码量,优化我们的代码. @Controller:用于标识是处理器类: @RequestMapping:请 ...

  10. Spring MVC 基础笔记

    spring mvc功能: 以Controller为中心完成对系统流程的控制管理 从请求中搜集数据 对传入的参数进行验证 将结果返回给视图 针对不同的视图提供不同的解决方案 针对jsp视图技术提供标签 ...

随机推荐

  1. C#委托和事件详解

    委托Delegate delegate是C#中的一种类型,它实际上是一个能够持有对某个方法的引用的类.与其它的类不同,delegate类能够拥有一个签名(signature),并且它"只能持 ...

  2. mysql数据库中,查看当前支持的字符集有哪些?字符集默认的collation的名字?

    需求描述: mysql数据库支持很多字符集,那么如何查看当前的mysql版本中支持的或者说可用的字符集有什么呢? 操作过程: 1.使用show character set的方式获取当前版本中支持的字符 ...

  3. C# Smtp方式发送邮件

    //简单邮件传输协议类             System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient();        ...

  4. 第四章 Spring.Net 如何管理您的类___对象、对象工厂和应用程序上下文

    在前面一章我们介绍了依赖注入,控制反转的概念,以及自己动手搭建了一下Spring.Net的环境.通过这些操作,我们知道了Spring.Net 的核心是使用依赖注入或控制反转这种思想来管理业务对象,降低 ...

  5. css图片宽高相等设置

    <div class="image-header"> <img src="demo.jpg"> </div> .image- ...

  6. ionic模版引擎及循环

    首先来个官方文档:http://ionicframework.com/docs/api/directive/ionList/ 1)ionic模型引擎的定界符是双大括号 {{}} 2)要使用什么模版变量 ...

  7. 设置jQuery validate插件错误提示位置

    参照上一篇bootstrap布局注册表单 使用校验插件默认位置显示提示信息,发现错误提示信息换行了,由于增加了提示信息,表单显示高度也增加了,如下 默认提示信息位置代码为 将错误提示设置其显示在右边, ...

  8. Spring启动过程分析】(1)启动流程简介

    1. spring简介 spring的最基本的功能就是创建对象及管理这些对象之间的依赖关系,实现低耦合.高内聚.还提供像通用日志记录.性能统计.安全控制.异常处理等面向切面的能力,还能帮我们管理最头疼 ...

  9. 深入浅出Docker(四):Docker的集成测试部署之道

    1. 背景 敏捷开发已经流行了很长时间,如今有越来越多的企业开始践行敏捷开发所提倡的以人为中心.迭代.循序渐进的开发理念.在这样的场景下引入Docker技术,首要目的就是使用Docker提供的虚拟化方 ...

  10. JavaWeb温习之防止表单重复提交

    表单重复提交主要有以下三种情况: 1. 在网络延迟的情况下让用户有时间点击多次submit按钮导致表单重复提交 2. 表单提交后用户点击[刷新]按钮导致表单重复提交 3. 用户提交表单后,点击浏览器的 ...