成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何在Java Web應用中獲取Spring的ApplicationContext

開發 后端
ApplicationContext是Spring的容器環境,通過ApplicationContext對象可以訪問所有配置的bean。本文中將講述Java Web應用中獲取Spring的ApplicationContext。

在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配置會有些變化:

<?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>

獲取的方式和上述完全一樣。

【編輯推薦】

  1. Spring中XML配置的12個技巧
  2. Spring MVC框架的高級配置
  3. Spring中的事務傳播屬性詳解
責任編輯:楊鵬飛 來源: 51CTO博客
相關推薦

2016-01-25 12:25:58

UbuntuFedoraGitLab

2010-06-08 12:54:16

UML技術

2023-10-08 15:23:09

側獲取屏幕DPI鴻蒙

2023-03-01 13:54:53

Springpostion?繼承

2021-07-02 20:37:19

Python代碼SRP

2009-06-02 10:02:50

eclipse jboeclipse jbojboss for e

2021-08-30 09:56:59

Web安全攻擊Java

2020-03-31 21:50:41

JavaScript前端技術

2022-07-15 09:01:15

React對象編程

2011-12-30 16:30:39

Java

2020-09-28 14:26:42

Shadow DOMWeb組件

2017-12-21 18:41:46

Java內存泄漏代碼

2022-04-27 08:55:01

Spring外部化配置

2021-03-28 07:47:01

JavaWeb項目windows

2022-05-31 08:49:02

Flutter應用程序前端

2023-04-26 15:19:36

JavaScripMap數組

2011-08-22 16:26:25

IOS開發Sqlite數據庫

2022-09-13 08:32:43

Ubuntu

2015-08-03 16:01:49

Ubuntu應用

2022-07-21 09:31:58

Actuator密碼框架
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: www狠狠爱com | 五月天综合影院 | 欧洲一区二区在线 | 国产丝袜一区二区三区免费视频 | 亚洲一区综合 | 成人欧美一区二区 | 欧美成年黄网站色视频 | 亚洲高清久久 | 日韩成人影院 | 成人午夜影院 | 波多野吉衣在线播放 | 超碰国产在线 | 久久成人亚洲 | 中文字幕久久精品 | 国产伦精品一区二区三区精品视频 | 国产一区二区精品在线 | 精品久久久久久亚洲综合网站 | 在线观看av网站永久 | 国产精品一区二区无线 | 亚洲 精品 综合 精品 自拍 | 欧美一区在线视频 | 久热精品视频 | 91国在线观看 | 国产精品一区在线观看 | 国产99久久精品一区二区300 | 午夜一区 | 国产精品福利久久久 | 欧美a级成人淫片免费看 | 日韩在线免费观看视频 | 九色av| a级片在线观看 | 在线不卡av| 国产2区 | 91精品国产日韩91久久久久久 | 国产精品色一区二区三区 | 久久97精品| 亚洲精品久久久久久久不卡四虎 | 亚洲毛片 | 免费黄色网址视频 | 99久久精品免费看国产免费软件 | 国产精品视频一区二区三区 |