spring如何使用多個xml配置檔案

2021-07-04 16:56:16 字數 1734 閱讀 3794

contextconfiglocation

contextconfiglocation 引數定義了要裝入的 spring 配置檔案。原理說明如下:

1.利用servletcontextlistener 實現。

spring 提供servletcontextlistener 的乙個實現類contextloaderlistener ,該類可以作

檔案中增加如下**即可:

org.springframework.web.context.contextloaderlistener

如果有多個配置檔案需要載入,則考慮使用

< 1-- web.xm1 檔案的dtd 等資訊一〉

<1-- 引數名為contextconfiglocation…〉

contextconfiglocation

org.spr工ngframework.web.context.contextloader

listener

context. xrnl 配置檔案。如果有contextconfiglocation,則利用該引數確定的配置檔案。

該引數指定的乙個字串, spring 的contextloaderlistener 負責將該字串分解成多個

配置檔案,逗號","、空格" "及分號";"都可作為字串的分割符。

定配置檔案,或者contextconfiglocation確定的配置檔案不存在。都將導致spring 無法

配置乙個spring為載入而設定的servlet可以達到同樣效果.

採用load-on-startup servlet 實現。

spring 提供了乙個特殊的servllet 類: contextloaderservlet。該servlet 在啟動時,會

當然,為了讓contextloaderservlet 隨應用啟動而啟動,應將此servlet 配置成

web.xml 檔案中增加如下**即可:

context

org.springframework.web.context.contextloaderservlet l

。帶多個配置檔案的web且nl 檔案如下:

<?xml version="1.0" encoding="工so-8859-1"?>

contextconfiglocation

context

org.springframework.web.context.contextloader

servlet l

2, 使用匹配符

contextconfiglocation

3, 如果使用struts載入多個spring配置檔案.下面這個配置的其實也是contextconfiglocation變數.

struts-config.xml裡面加這個

4,如果是非j2ee應用直接程式載入.

beandefinitionregistry reg = new defaultlistablebeanfactory();

xmlbeandefinitionreader reader = new xmlbeandefinitionreader(reg);

reader.loadbeandefinitions(new classpathresource("bean1.xml"));

reader.loadbeandefinitions(new classpathresource("bean2.xml"));

beanfactory bf = (beanfactory)reg;

Spring中多個 xml配置

在spring中,如果spring中的的配置檔案比較多又需要在tomcat啟動的時候自動載入,那麼在web.xml中配置的時候配置一下啟動的順序。那麼有乙個很重要的問題,怎麼講那麼多的spring配置檔案配置到web.xml中呢?技巧如下 remoting org.springframework.w...

Spring基礎 AOP使用XML實戰

github 工程 aop是什麼,有哪些概念?參考 spring使用註解aop實戰 在進行xml配置aop之前,需要了解spring的aop命名空間中,提供了多少個元素用來在xml中宣告切面。這些配置在以下xml中體會。建立乙個切面,該切面沒有任何的註解。package com.jpeony.spr...

Spring使用註解代替xml配置

component user 相當於public class user service user 和 component效果一樣,用於區分不同層的註解 controller user repository user component user 相當於 scope prototype 預設值為sin...