web怎样启动spring容器
web容器怎样跟spring结合起来使用,主要就是根据web.xml文件中配置了spring的信息。
web.xml主要包含这些配置:
1. 上下文
2. index页面和errror页面
3. 定义servlet,里面引用的是DispatcherServlet
4. 定义contextConfigLocation,这个可以在Servlet中定义,也可以在外部定义
5. 定义监听器 ContextLoaderListener,主要是为了监听contextConfigLocation,加载spring的xml文件
6.各种过滤器
web.xml中的配置
1.2. 上下文、定义index页面和error页面
<!-- 上下文名字 --> <display-name>appsdollar_cms</display-name> <!-- index页面 --> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <!-- 找不到页面后call的url --> <error-page> <error-code>404</error-code> <location>/pageNotFound</location> </error-page>
3. 定义 DispatcherServlet
<!-- Spring MVC配置 --> <!-- ====================================== --> <!-- 定义 dispatcherServlet,spring拦截分发请求就靠它--> <servlet> <servlet-name>spring</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- 可以自定义servlet.xml配置文件的位置和名称,默认为WEB-INF目录下,名称为[<servlet-name>]-servlet.xml,如spring-servlet.xml <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-servlet.xml</param-value> 默认 </init-param> --> <load-on-startup>1</load-on-startup> </servlet> <!--定义spring要拦截哪些请求--> <servlet-mapping> <servlet-name>spring</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
4. 定义contextConfigLocation,这里配置了spring的配置文件
<!-- 指定Spring Bean的配置文件所在目录。默认配置在WEB-INF目录下 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:config/applicationContext.xml</param-value> </context-param>
5. 定义监听器ContextLoaderListener
<!-- Spring配置 --> <!-- ====================================== --> <listener> <listenerclass> org.springframework.web.context.ContextLoaderListener </listener-class> </listener>
6. 定义过滤器
<!-- 浏览器不支持put,delete等method,由该filter将/blog?_method=delete转换为标准的http delete方法 --> <filter> <filter-name>restfulFilter</filter-name> <filter-class>com.cherrypicks.appsdollar.filter.RESTfulFilter</filter-class> </filter> <filter-mapping> <filter-name>restfulFilter</filter-name> <servlet-name>spring-mvc</servlet-name> </filter-mapping>
定义spring-servlet.xml
spring-servlet这个名字是因为上面web.xml中<servlet-name>标签配的值为spring(<servlet-name>spring</servlet-name>),再加上“-servlet”后缀而形成的spring-servlet.xml文件名,如果改为springMVC,对应的文件名则为springMVC-servlet.xml。
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/context <a href="http://www.springframework.org/schema/context/spring-context-3.0.xsd">http://www.springframework.org/schema/context/spring-context-3.0.xsd</a>"> <!-- 启用spring mvc 注解 --> <context:annotation-config /> <!-- 设置使用注解的类所在的jar包 --> <context:component-scan base-package="controller"></context:component-scan> <!-- 完成请求和注解POJO的映射 --> <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" /> <!-- 对转向页面的路径解析。prefix:前缀, suffix:后缀 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/jsp/" p:suffix=".jsp" /> </beans>
参考:
https://www.douban.com/note/330371577/?type=like
http://www.cnblogs.com/superjt/p/3309255.html
http://zhanshenny.iteye.com/blog/1335244
相关推荐
当我们在Web环境中运行Spring应用时,IoC容器需要在Web容器(如Tomcat、Jetty等)中启动并运行。这个过程涉及到一系列的初始化步骤,确保Spring能够正确地与Web容器集成。 首先,`WebApplicationContext`是`...
Spring Web模块和Spring Web MVC模块是Spring框架中的两个关键组成部分,它们在构建Web应用程序时起着至关重要的作用。 Spring Web模块(spring-web-5.2.3.RELEASE.jar)主要负责提供Web相关的功能支持,包括HTTP...
这样,在Spring容器启动时,它会自动调用`setApplicationContext`方法,将`ApplicationContext`实例注入到实现了`ApplicationContextAware`的类中。 ### 结论 选择哪种方法获取Spring容器主要取决于具体的应用场景...
Spring容器是Spring框架的核心组成部分,它负责管理对象的生命周期和对象之间的依赖关系。Spring容器的主要职责是读取配置元数据,创建和组装Bean,并提供Bean的完整生命周期管理。本篇内容将深入探讨Spring容器的...
通过XML配置文件或注解的方式,我们可以定义bean及其依赖,让Spring容器自动装配,降低了代码的耦合度。 在Web项目中,我们通常使用Spring MVC作为控制器层。Spring MVC提供了一个分层架构,包括模型(model)、视图...
Spring Boot 是在 Spring 的基础上创建一款开源框架,它提供了 spring-boot-starter-web(Web 场景启动器) 来为 Web 开发予以支持。spring-boot-starter-web 为我们提供了嵌入的 Servlet 容器以及 SpringMVC 的依赖...
标题 "Spring3.1.3 Ioc在Web容器中的建立" 涉及...这个过程涉及到Spring容器的初始化、bean的定义与依赖注入,以及Web应用的结构配置。通过理解和熟练运用这些知识,开发者可以更好地构建可维护、可扩展的Spring应用。
Web容器中实例化Spring相关配置解析是指在Web容器中实例化Spring容器的相关配置解析。Spring框架是JavaEE应用程序的核心框架之一,它提供了丰富的功能和工具来开发企业级应用程序。为了在Web容器中实例化Spring容器...
同时,也需要配置ContextLoaderListener,它会在应用启动时初始化Spring容器。 3. **创建Spring配置文件**:在`src/main/resources`目录下创建一个名为`applicationContext.xml`的文件,用于定义Bean的配置。这里...
8. Spring 的模块化设计Spring 框架由多个模块组成,如核心容器、数据访问/集成、Web、AOP、测试等。这些模块可以按需选择,提供了极大的灵活性。 总结,Spring 容器是 Spring 框架的基石,负责管理和协调应用中的...
在Spring源代码解析的第一部分,我们将聚焦于IOC容器,特别是BeanFactory接口,它是所有Spring容器的基础。 BeanFactory接口是Spring的基石,它定义了基本的容器操作,如获取Bean、检查Bean是否存在、确定Bean的...
在Spring框架中,当一个基于Servlet的Web应用启动时,Spring容器的初始化过程是至关重要的。这个过程涉及到多个组件和步骤,让我们详细探讨一下。 首先,我们在`web.xml`配置文件中看到了`<context-param>`和`...
5. **ContextLoaderListener**:这是Spring Web应用的一个启动监听器,它会创建一个全局的ApplicationContext,用来管理所有Web应用范围内的bean。 接下来,我们关注`springs-webmvc`模块,它是Spring MVC的核心,...
然后,你可以使用注解如@Controller、@Service、@Repository和@Service来标记你的类,这些注解将被Spring容器自动扫描并管理。 在Web层,可以使用Spring MVC框架,通过定义DispatcherServlet和Controller来处理HTTP...
Spring容器在启动时会自动扫描此类,执行该方法创建bean实例。 除了`@Bean`,还有其他一些关键的注解,如`@Component`、`@Service`、`@Repository`和`@Controller`,它们用于标记不同类型的bean。通过`@...
1. **spring-context-3.1.2.RELEASE.jar**:提供Spring的IoC(Inversion of Control)容器和AOP(Aspect Oriented Programming)支持,这是Spring框架的基础,为Spring Security提供了配置和事件处理能力。...
Spring框架是Java开发中不可或缺的一部分,它为构建高效、可重用的Web应用程序提供了强大的支持。在本讨论中,我们将深入探讨两个核心组件——`spring-web.jar`和`spring-webmvc.jar`,它们在Spring MVC框架中扮演着...
该过程可以分为四个步骤:项目放到web项目容器中、容器启动时加载读取web.xml配置文件、ContextLoaderListener中的contextInitialized()方法、初始化spring容器。 步骤1:项目放到web项目容器中 首先,我们需要将...
在Spring中,bean是一个由容器管理的对象,它的实例化、初始化、装配和销毁都是由Spring容器控制的。你可以通过XML、注解或者Java配置类来定义bean。例如,一个简单的XML配置如下: ```xml ``` 这里,`myBean`...
- **配置Servlet容器**: 如果是使用Servlet容器(如Tomcat),需要配置一个名为`ContextLoaderListener`的监听器,它会在Web应用启动时加载Spring的ApplicationContext。 - **创建Spring配置文件**: 创建XML或Java...