spring容器在web项目中的使用
第一:在jsp、servlet、action中使用
jsp中
BeanFactory beanFactory = (BeanFactory)pageContext.getServletContext().getAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
servlet中
WebApplicationContext appContext1 = WebApplicationContextUtils.getRequiredWebApplicationContext(this.getServletContext());
WebApplicationContext appContext2 = WebApplicationContextUtils.getWebApplicationContext(this.getServletContext());
action中一般是组件之间已连接好,直接使用注入的bean
在其它普通类中使用
先建一个servlet获得这个WebApplicationContext然后再使用
这个servlet在web.xml中一定要设置启动容器时候初始化
例如:
<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>ParamConfigServlet</servlet-name>
<servlet-class>com.intohotel.webim.ParamConfigServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>ParamConfigServlet</servlet-name>
<url-pattern>/servlet/ParamConfigServlet</url-pattern>
</servlet-mapping>
public class ParamConfigServlet extends HttpServlet {
public void init() throws ServletException {
WebApplicationContext appContext1 = WebApplicationContextUtils.getRequiredWebApplicationContext(this.getServletContext());
WebApplicationContext appContext2 = WebApplicationContextUtils.getWebApplicationContext(this.getServletContext());
TestSpringFactory.setAppContext1(appContext1);
TestSpringFactory.setAppContext1(appContext2);
}
//一定要在init方法中,其它方法要么就是初始化太早取不到值,要么就是太晚或者根本不会调用
}
public class TestSpringFactory {
public static WebApplicationContext appContext1 = null;
public static WebApplicationContext appContext2 = null;
public void testBean(){
MessageService messageService = (MessageService)TestSpringFactory.appContext1.getBean("messageService");
Message message = new Message();
message.setFromName("fruitking");
message.setMessage("XuGuo is a super man!");
message.setOperatedDate(new Date());
message.setToName("mary");
messageService.save(message);
}
public static WebApplicationContext getAppContext1() {
return appContext1;
}
public static void setAppContext1(WebApplicationContext appContext1) {
TestSpringFactory.appContext1 = appContext1;
}
public static WebApplicationContext getAppContext2() {
return appContext2;
}
public static void setAppContext2(WebApplicationContext appContext2) {
TestSpringFactory.appContext2 = appContext2;
}
}
分享到:
相关推荐
1. 引入依赖:在项目pom.xml文件中添加Spring的相关依赖库,如spring-web、spring-context、spring-webmvc等。 2. 配置Spring:创建Spring的配置文件(如applicationContext.xml),定义bean及依赖关系。 3. 配置...
当我们在Web环境中运行Spring应用时,IoC容器需要在Web容器(如Tomcat、Jetty等)中启动并运行。这个过程涉及到一系列的初始化步骤,确保Spring能够正确地与Web容器集成。 首先,`WebApplicationContext`是`...
总之,Spring在Web中的使用极大地提高了开发效率,提供了灵活的架构和丰富的功能,是现代Java Web开发不可或缺的一部分。无论是简单的CRUD操作,还是复杂的业务逻辑和分布式系统,Spring都能提供有力的支持。通过...
- **添加依赖**: 首先,需要在项目的构建文件(如Maven的pom.xml或Gradle的build.gradle)中添加Spring的相关依赖。 - **配置Servlet容器**: 如果是使用Servlet容器(如Tomcat),需要配置一个名为`...
在这种情况下,我们需要了解如何让Spring Boot项目在非Web模式下运行。 首先,我们需要调整Maven依赖项,不再依赖spring-boot-starter-web,而是依赖最基础的spring-boot-starter。这样做的目的是让我们的项目不再...
接下来,我们来看看如何在Java Web项目中集成Spring: 1. **创建Spring项目结构**:一个标准的Spring Web项目通常包含`src/main/java`(源代码)、`src/main/resources`(配置文件)和`Web-INF`(Web相关配置)等...
标题 "Spring3.1.3 Ioc在Web容器中的建立" 涉及的是Spring框架的一个关键特性——依赖注入(Dependency Injection,简称DI),以及如何在Web应用环境中配置和使用它。Spring是Java开发中最流行的轻量级框架之一,...
在IT行业中,Spring框架是Java Web开发中的一个核心组件,尤其在企业级应用中广泛使用。"web项目整合spring"这个主题,意味着我们要探讨如何将Spring框架与Web项目结合,以便实现更高效、模块化的开发流程。在这个...
在本项目中,"Spring-boot web项目实例" 是一个基于Spring Boot框架构建的Web应用程序。Spring Boot是由Pivotal团队提供的一个开源框架,其目的是简化Spring应用的初始搭建以及开发过程,它集成了大量常用的第三方库...
1. 定时任务通常在Spring容器启动后立即运行,因此需要确保Spring容器在Web应用启动时已完成初始化。 2. 如果定时任务涉及数据库操作,需要确保数据库连接已经建立并可用。 3. 为了防止并发执行,可使用`@...
Spring Web模块和Spring Web MVC模块是Spring框架中的两个关键组成部分,它们在构建Web应用程序时起着至关重要的作用。 Spring Web模块(spring-web-5.2.3.RELEASE.jar)主要负责提供Web相关的功能支持,包括HTTP...
1. 初始化项目:使用Spring Initializr创建新的Spring Boot项目,选择`spring-boot-starter-web`起步依赖。 2. 创建RESTful API:定义Controller,使用@RequestMapping和@GetMapping、@PostMapping等注解定义HTTP...
在本篇【Spring框架web项目实战全代码分享】中,我们将深入探讨如何使用Spring框架构建一个Java Web项目。首先,我们需要了解Spring的核心概念,它是一个轻量级的、全面的开源框架,主要用于简化企业级应用的开发。...
这样,在Spring容器启动时,它会自动调用`setApplicationContext`方法,将`ApplicationContext`实例注入到实现了`ApplicationContextAware`的类中。 ### 结论 选择哪种方法获取Spring容器主要取决于具体的应用场景...
Spring容器是Spring框架的核心组成部分,它负责管理对象的生命周期和对象之间的依赖关系。Spring容器的主要职责是读取配置元数据,创建和组装Bean,并提供Bean的完整生命周期管理。本篇内容将深入探讨Spring容器的...
【Spring在Web项目中的应用】 在Web项目中集成Spring框架,主要是为了实现依赖注入和管理,简化业务逻辑层与表现层的交互。以下是一个详细步骤的介绍: 1. **新建一个Maven项目**: 创建基于Maven的Web项目,通常...
在本教程中,我们将探讨如何使用Spring框架的Web模块,即`spring-web`,来搭建一个项目。`spring-web`是Spring框架的核心组件之一,它提供了处理HTTP请求、响应、Servlet容器集成以及与Web相关的功能。以下是详细...
Spring4.3.7版本的Web整合包包含了Spring框架在Web开发中所需的各种组件,这些组件使得开发者能够轻松地实现MVC(Model-View-Controller)模式,以及其他Web相关的功能。 首先,Spring MVC是Spring框架中的核心模块...
总之,`web.xml`中的这些配置是传统Spring MVC应用初始化Spring容器的关键步骤,它们确保了Spring框架能够正确地管理和控制应用的bean。随着技术的发展,虽然现代Spring应用更多地转向了Spring Boot,但理解这些基本...