`

springapplication

阅读更多
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
           version="2.5">
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/applicationContext.xml</param-value>
    </context-param>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>*.form</url-pattern>
    </servlet-mapping>
</web-app>

 ApplicationContext是Spring的容器环境,通过ApplicationContext对象可以访问所有配置的bean。

  在Web开发开发中,常常需要从JSP或者Servlet或者Action中获取ApplicationContext对象,这时候,就无法使用new关键字通过查找配置文件来实例化ApplicationContext这个对象了。Spring通过WebApplicationContextUtils可以方便实现您的需求。下面看个例子:

  一、Spring2.5+Struts2环境下

  1、配置web.xml,通过这个配置来获取的。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
           version="2.5">
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/applicationContext.xml</param-value>
    </context-param>
    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>*.form</url-pattern>
    </servlet-mapping>
</web-app>

 

 

2、在JSP、Servlet、Action中获取ApplicationContext

<%@ page import="lavasoft.service.TestService" %>
<%@ page import="org.springframework.context.ApplicationContext" %>
<%@ page import="org.springframework.web.context.support.WebApplicationContextUtils" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>Simple jsp page</title></head>
<body>
<%
//    ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(request.getSession().getServletContext());
    ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(session.getServletContext());
    TestService service = (TestService) ctx.getBean("testService");
    String s = service.test();
    out.print(s);
%>
</body>
</html>

 

  二、Spring+JSP的环境

  在此环境下web.xml配置会有些变化:

 

 

  获取的方式和上述完全一样。

分享到:
评论

相关推荐

    第三节 理解 SpringApplication1

    理解 SpringApplication SpringApplication 是 Spring Boot 框架中一个核心组件,负责加载和配置应用程序的上下文环境。在本节中,我们将详细了解 SpringApplication 的基本使用、运行机制、自定义配置、API 调整等...

    SpringBoot 源码解析 —— SpringApplication 源码分析.docx

    通过分析@SpringBootApplication 注解和 SpringApplication 类的 run 方法,我们可以了解 Spring Boot 应用程序的启动过程。 @SpringBootApplication 注解是一个组合注解,实际上它包含了多个注解,包括@...

    SpringApplication详解源码

    在Java开发领域,Spring框架是不可或缺的一部分,而SpringApplication则是Spring Boot的核心组件,它使得创建一个独立的、生产级别的基于Spring的应用变得极其简单。本文将深入解析`SpringApplication`的源码,帮助...

    深入理解SpringApplication原理

    SpringApplication是springboot驱动spring应用上下文的引导类,他的run()方法启动Spring应用,实质上是为Spring应用创建并初始化Spring上下文。

    springBoot简例

    这个类通常会包含一个`main`方法,该方法使用`SpringApplication.run()`来启动Spring Boot应用。这个方法会初始化Spring框架,并自动扫描指定包(通常是包含`Application`类的包及其子包)内的组件,如控制器、服务...

    spring boot之SpringApplication 事件监听

    Spring Boot是Spring的一个模块,它提供了快速开发、配置简单和独立部署等特点,而SpringApplication类是Spring Boot中用于引导和启动应用程序的核心类。在Spring Boot应用程序启动过程中,SpringApplication会通过...

    宫颈AI前端项目源码。JAVA SpringApplication.run(WebappApplication.class,

    增加上传文件到本地文件夹的方法,并且返回文件的绝对路径 // *========数据库日志=========*// SysOperLog operLog = new SysOperLog(); operLog.setStatus(BusinessStatus.SUCCESS.ordinal());...

    Spring Boot 2.2.6 源码之旅三SpringApplication启动流程三

    Spring Boot 2.2.6 源码之旅三SpringApplication启动流程三初始化基本流程SpringApplication的setListeners设置监听器deduceMainApplicationClass对端主启动类rungetRunListeners获取SpringApplicationRunListener...

    springBean加载过程源码解析文档,附有代码类名和行数

    在 SpringApplication 运行之前,首先需要初始化 SpringApplication 实例。这个过程中,SpringApplication 会创建一个 BootstrapRegistryInitializer,用于注册简单对象直到 ApplicationContext 准备就绪为止。 ...

    【大厂面试题】springboot之启动原理解析及其答案

    @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } 深入探索SpringApplication执行流程 SpringApplication的run...

    Spring Boot 详细启动原理

    要了解 Spring Boot 的启动原理,需要从 SpringApplication 的构造过程和 run 方法执行过程入手。 首先,SpringApplication 的构造过程。在 SpringApplication 的构造函数中,会调用一个 private 方法 initialize,...

    传统文化与中国社会的帕累托最优.doc

    传统文化与中国社会的帕累托最优.doc

    RuoYi-Vue.7z

    RuoYi-Vue.7z,前后端分离项目,vue

    springboot参考指南

    外部化SpringApplication配置 ii. 63.2. 改变应用程序外部配置文件的位置 iii. 63.3. 使用'short'命令行参数 iv. 63.4. 使用YAML配置外部属性 v. 63.5. 设置生效的Spring profiles vi. 63.6. 根据环境改变配置 vii....

    spring-boot-reference.pdf

    23.3. Customizing SpringApplication 23.4. Fluent Builder API 23.5. Application Events and Listeners 23.6. Web Environment 23.7. Accessing Application Arguments 23.8. Using the ApplicationRunner or ...

    No1WMS-master WMS JAVA

    import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Bean; import org.springframework....

    Spring Boot:启动原理解析.docx

    在这篇文章中,我们将深入探讨 Spring Boot 的启动原理,了解 @SpringBootApplication 注解和 SpringApplication.run 方法的作用。 一、@SpringBootApplication 注解 @SpringBootApplication 注解是 Spring Boot ...

    Spring Boot启动流程.doc

    在这个过程中,首先创建`SpringApplication`实例,这涉及到传递主源类(primarySources)和资源加载器(ResourceLoader)。`SpringApplication`构造函数初始化了必要的配置,并准备了启动流程。 一旦`...

    SpringBoot启动流程图

    Spring Boot 的启动过程涉及多个核心组件和技术细节,其中主要包括 `SpringApplication` 的 `run` 方法执行流程、应用上下文(ApplicationContext)的创建以及 Web 容器的启动等。下面将从这些关键点入手,详细解析...

    Spring Boot整合Shiro搭建权限管理系统教学提纲.pdf

    @SpringBootApplicationpublic class HelloTomcatApplication {public static void main(String[] args) { SpringApplication.run(HelloTomcatApplication.class, args); }}7. 创建一个简单的 HTML 页面src/main/...

Global site tag (gtag.js) - Google Analytics