Какая разница между папками app-inf и web-inf в приложениях JavaEE?

Можете ли вы дать мне понять основное различие между папками APP-INF и WEB-INF в приложениях javaEE.

Спасибо

Ответ 1

APP-INF

В корпоративном приложении (приложение EAR), которое содержит много битв и банок (например, WebApp1.war, WebApp2.war, EJB1.jar и EJB2.jar.) и предположим, что все эти Модули хотят использовать некоторые доступные классы как часть Jar (common.jar). Поэтому в этом случае лучше разместить этот файл jar внутри каталога "APP-INF", поэтому нам не нужно помещать один и тот же Jar 4 раза в каждый модуль.

WEB-INF

WEB-INF - это каталог, который является частной областью веб-приложения, любые файлы в каталоге WEB-INF не могут быть доступны напрямую из браузера, указав URL-адрес.

См. структуру приложения EAR;

enter image description here

Ответ 2

Можете ли вы дать мне понять основное различие между папками APP-INF и WEB-INF в приложениях Java EE.

APP-INF специфичен для WebLogic. В стандарте Java EE его не существует, поэтому для приложений Java EE сравнивать нечего. Java EE имеет каталог [EAR]/lib, который заменяет нестандартную APP-INF/lib. Возможно, другой каталог можно настроить в [EAR]/META-INF/application.xml "

<application>
   <library-directory>APP-INF/lib</library-directory>
</application>

Прямая замена APP-INF/классов в стандартном Java EE отсутствует. Вам также нужно будет собрать их и поместить в [EAR]/lib.