WEB-INF和META-INF目錄詳解


WEB-INF簡介

WEB-INF是Java的WEB應用的安全目錄。所謂安全就是客戶端無法訪問,只有服務端可以訪問的目錄。

如果想在頁面中直接訪問其中的文件,必須通過 web.xml 文件對要訪問的文件進行相應映射才能訪問。

 

WEB-INF目錄的作用

 

一、概述

無論是在打jarwar包時,都會生成META-INFO這個文件夾。我們需要了解這個路徑,豐富自己的知識框架。

二、詳解

2.1 META-INFO 的作用

官方一點的說法:META-INF 相當於一個信息包,目錄中的文件和目錄獲得 Java 2 平台的認可與解釋,用來配置應用程序、擴展程序、類加載器和服務manifest.mf文件,在打包時自動生成。

簡單的說法:就是存儲了項目的元信息,其中文件manifest.mf僅此一份,描述了程序的基本信息、Main-Class的入口、jar依賴路徑Class-Path

2.2 是否可以在開發過程中使用?

由於這個目錄下的信息大多是項目構建時自動生成,所以在不必要的情況下,不建議使用這個目錄或修改這里的文件。

當然,我們在學習或使用spi時,會用到META-INFO下的services目錄,我們會在這個目錄下建一個接口全限定名,內容為實現類的全限定的類名。這時我們算是直接使用了這個目錄,在這種情況下打出war包,解析包后我們會發現META-INFO/services這個目錄其實是放在了WEB應用的安全目錄WEB-INF下。

所以結論是:基本不用從開發的角度不用過多去關心這個目錄,也不要挑戰自己去破壞這個路徑。然而在spi的特殊情況下,還應遵循這種JDK內置的服務提供發現機制。

官方文檔https://docs.oracle.com/javase/7/docs/technotes/guides/jar/jar.html



作者:零薪
鏈接:https://www.jianshu.com/p/0e22cdc53ebb
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM