當前位置:首頁 » 網頁前端 » webxml載入配置文件
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

webxml載入配置文件

發布時間: 2023-01-08 22:27:31

A. 如何在web.xml添加自己得配置文件,並在tomcat啟動時候實現載入

jsp + servlet + tomcat例子中:
添加這樣的descirpto在web.xml文件並可以解析
....
<my-config>
<location>/WEB-INF/my/my-config.xml</location>
</my-config>
....
然後根據自己的配置文件完成類的載入和響應的功能
--------------------------
我自己的思路:修改web.xml依據的deploy descriptor文件
然後在自己取得相關配置文件的解析內容........

B. web.xml中相關配置

在web.xml中通過contextConfigLocation配置spring,contextConfigLocation參數定義了要裝入的 Spring 配置文件

部署applicationContext.xml文件
如果不寫任何參數配置,默認的是在/WEB-INF/applicationContext.xml
如果指定了要載入的文件,則會去載入相應的xml,而不會去載入/WEB-INF/下的applicationContext.xml。如果沒有指定的話,默認會去/WEB-INF/下載入applicationContext.xml。
如果想要自定義文件名,需要在web.xml中加入contextConfigLocation這個context參數
springmvc的默認配置文件是放在WEB-INF下的,並且要命名為 -servlet.xml, 為servlet—name,即下文中的"Springmvc"

web.xml文件中webAppRootKey屬性是web項目的絕對路徑,默認值是webApp.root,可以通過System.getProperty(「webApp.root」)來獲取屬性值或者在配置文件中通過${webApp.root}獲得。

Spring通過 org.springframework.web.util.WebAppRootListener 這個監聽器來注入項目路徑,因此部署在同一個web容器中的項目,要配置不同的param-value(比如」項目名.root」),不然會造成沖突。但是如果在web.xml中已經配置了org.springframework.web.util.Log4jConfigListener這個監聽器,則不需要配置WebAppRootListener了。因為Log4jConfigListener已經包含了WebAppRootListener的功能。WebAppRootListener要在ApplicationContext的ContextLoaderListener之前,否則ApplicationContext的bean注入根目錄值時會發生無法注入異常。

"webapp.root"這個字元串可以隨便寫任何字元串。如果不配置默認值是"webapp.root"。

可以用System.getProperty("webapp.root")來動態獲項目的運行路徑。
一般返回結果例如:/usr/local/tomcat6/webapps/項目名

定義以後,在Web Container啟動時將把ROOT的絕對路徑寫到系統變數里。
然後log4j的配置文件里就可以用${webName.root }來表示Web目錄的絕對路徑,把log文件存放於webapp中。
此參數用於後面的「Log4jConfigListener」-->

C. eclipse無法配置web.xml文件

前言 剛開始學習部署tomcat,新建java web項目後發現沒有web.xml配置文件,以下是原因及其解決方案。 產生原因及解決方案 新建web項目時如下圖所示,若直接選擇"完成",則默認不會在WebContent/WEB-INF文件夾下生成web.xml配置文件,此時應選擇下一步 在創建項目時勾選同時產生web.xml文件即可;當然也可以讓已經新建的web項目生成web....
查看原文

在eclipse中快速生成一個maven項目後一鍵生成web.xml
在web工程創建時創建web.xml:用Eclipse新建一個web項目沒有自動生成web.xml 在創建maven工程時,大多沒有創建web.xml文件,web.xml路徑:src/main/webapp/EWB-INF/web.xml 創建web.xml:右鍵項目——>javaEE tools——>點擊第二個Generate

利用eclipse新建的java web項目沒有web.xml文件怎麼辦?
利用eclipse新建的java web項目沒有web.xml文件怎麼解決? 解決辦法: 1、右鍵項目名稱-》Java EE Tools-》Generate Deployment descriptor stub 即可生成web.xml文件。

MyEclipse新建的Web項目沒有web.xml
MyEclipse新建的Web項目沒有web.xml 是因為創建項目時沒有選擇Generate web.xml deployment descriptor這一項。 下面是步驟 首先創建項目 這一步點擊next 再點擊next 勾選Generate web.xml deployment descriptor,完成後點擊Finish,即可完成創建。 檢查一下,在WebRoot文件夾下打開

myeclipse生成web.xml文件
MyEclipse中新建web項目時,如果一開始新建項目沒有選中生成web.xml文件,在WebRoot->WEB-INF文件夾下就沒有web.xml文件。 那如果後面又需要用到web.xml該怎麼辦呢?難道需要重新建項目?其實是不用的。 非常簡單的方法就是在需要添加web.xml文件的項目上右鍵點擊,依次選擇MyEclipse->Generate Deployment

D. 如何通過web.xml載入自定義的xml文件

首先創建一個類
public class ContextInitListener implements ServletContextListener
使得該類成為一個監聽器。用於監聽整個容器生命周期的,主要是初始化和銷毀的。
類創建後要在web.xml配置文件中增加一個簡單的監聽器配置,即剛才我們定義的類。
Xml代碼

<listener>
<!-- lang: xml -->
<description>ServletContextListener</description>
<!-- lang: xml -->
<listener-class>com.test.web.filter.ContextInitListener</listener-class>
<!-- lang: xml -->
</listener>

配置好監聽器後我們開始編寫ContextInitListener 的代碼。實現介面後會自動生成兩個方法,初始化和銷毀,我們就只貼出這個吧,另一個沒什麼用。web項目通常來說,一般來說相對路徑是在WEB-INF/classes,獲取該路徑下的文件,最好用getClass().getResourceAsStream(「/baseconfig.properties」);比較簡單。
Java代碼

@Override
public void contextInitialized(ServletContextEvent sce) {
Properties props = new Properties();
InputStream inputStream = null;
try {
inputStream = getClass().getResourceAsStream("/baseconfig.properties");
props.load(inputStream);
String tempPath = (String) props.get("path");
} catch (IOException ex) {
ex.printStackTrace();
}
}

E. web項目中如何讀取配置文件config.xml

servlet初始化的時候會去讀取web.xml,把這個文件的路徑配置到web.xml里。或者你在web.xml里載入個初始化類,這個類去載入config.xml

F. web.xml配置cookie

正確。web.xml配置cookie是正確的,這個的作用是讓頁面的js無法讀取到cookie, 是一種保護措施。web.xml是web項目的配置文件,一般的web工程都會用到web.xml來配置,主要用來配置Listener,Filter,Servlet等。