Русские Блоги
Разница между использованием войны и войны взорвалась идеей
war: сначала упакуйте его в военный пакет, а затем разверните военный пакет на сервере.
war exploded: напрямую перемещайте папки, файлы классов и т. д. в Tomcat для развертывания. Следовательно, этот метод поддерживает горячее развертывание, которое обычно используется во время разработки.
взорванный режим войны:
1. Создайте проект, а затем создайте проект веб-приложения.
2. Введите название проекта.
3. Создайте два новых каталога lib и classes в папке WEB-INF.
Классы используются для хранения скомпилированного файла классов. lib используется для хранения пакетов jar

4. Откройте конфигурацию проекта, выберите Moudles -> paths, выберите Use moudle compile output path, выберите каталог классов, который мы только что создали.

5. Откройте вкладку зависимостей, щелкните значок + справа, выберите «JAR или каталоги», выберите папку lib только сейчас,



6. Затем настройте tomcat, выберите Tomcat Server -> local

7. Затем добавьте Aftifacts к знаку «плюс» в правой части вкладки «Развертывание», чтобы можно было увеличить war Exploded.Контекст приложения — это путь, который обычно имеет значение «/». Итак, наш путь доступа: localhost: 8080

Форма военного пакета:
1. Здесь мы больше не используем метод по умолчанию, указанный выше, и будем использовать новые артефакты. В следующих вариантах есть два варианта:
Веб-приложение взорвано: в форме военного пакета каждый раз переупаковывайте все и упакуйте проект в военный пакет в определенном месте.
Архив веб-приложений: выбор по умолчанию автоматически создает файлы в указанном каталоге Dictiory.


2. Затем добавьте содержимое каталога, иначе будет казаться, что пакет успешен, но файл в ресурсах не работает, и адрес выполняет корневой каталог Интернета.

3. Затем на вкладке «Развертывание» в tomcat измените исходную войну Exploded на следующую войну, а затем включите tomcat.
В чем отличие артефакта war от war exploded
When using IDEA development projects, the following situations usually occur when deploying Tomcat:

Is it war or war exploded? First look at the difference between the two:
War mode: upload the WEB project to the server in the form of a package;
war exploded mode: upload the WEB project to the server in the current folder position relationship;
(1) War mode This can be called the release mode. See the name and know that this is the first package and then released.
(2) War exploded mode is to directly move folders, jsp pages, classes, etc. to the Tomcat deployment folder for loading and deployment. This approach therefore supports hot deployment, which is generally used in development.
(3) In the usual development, if you use hot deployment, you should set the Tomcat accordingly, so that anything modified in the jsp interface can be displayed in time.

Modify the location of the arrow so that hot deployment can be achieved.
Pit encountered when developing with war mode
First, the location of the project code is as follows:

The above project is an SSM project.
Second, the location of the Tomcat deployed:

Third, the code used to obtain the absolute path of the context:
String contextPath = request.getSession().getServletContext().getRealPath(«/»);
Four, two ways of experimentation and results:
(1) When using the war mode development, obtain the relative path of the project by the following code:
The war mode is always the path obtained as follows:

among them C:\Software\apache-tomcat-8.0.32 It is the location of my Tomcat.
Can be seen through War mode It is the final package to deploy to Tomcat.
(2) Then look again War exploded mode , also set up, run the same piece of code, the results are as follows:

It can be seen that the final result is the location of my project, which is actually the location of the target of this project.
According to the experimental results of (1)(2) above, it can be seen that the deployment methods of the two methods are different, so the results obtained when obtaining the relative path of the project are different.
Whether to choose war or war exploded Here first look at the difference between the two:
The two ways of deployment are different, and the results obtained when obtaining the path of the project are different.

Intelligent Recommendation
3235 War
3235 War Time limit: 2 s Space limit: 128000 KB Question level: Diamond Diamond Title descriptionDescription Enter descriptionInput Description Output descriptionOutput Descriptio.
WAR package
1. Use cmd command to package under windows command 2. Use code packaging in the program (java here) .
[JSOI2018]War
topic Minkowski and Define point set\(A\)And point set\(B\)Minkowski sum is\(\\) Only the Minkowski sum of the convex hull will be discussed below Due to the convexity of the conve.
«JSOI2018» war
Topic link General idea In the solution of this problem, vectors and points are interoperable. The problem is probably to judge a convex hull\(B\)Pan\(\overrightarrow v\)Convex hull\(A\)There is inter.
[JSOI2018]War
Title description Poor Kujo is a girl who loves reading. In a novel she is currently reading, she describes a story between two rival tribes. The first tribe hasnnn people, the second tribe hasmmm per.
Ревью 2 теория. Инструкция по созданию бизнесобъектов. Strategy это поведенческий паттерн, выносит набор алгоритмов в собственные классы и делает их взаимозаменимыми
Единственный в мире Музей Смайликов
Самая яркая достопримечательность Крыма
Скачать 0.74 Mb.
15.2. Развертывание артефактов на серверах приложений и облачных платформах?
Многие форматы артефактов (например, WAR, Exploded WAR, EAR, Exploded EAR) подходят для развертывания на серверах приложений и облачных платформах. Вот как вы развертываете такие артефакты:
В конфигурации запуска/отладки сервера или облака укажите артефакт, который необходимо развернуть. (Используйте вкладку или поле «Deployment».)
Выполните конфигурацию запуска/отладки или используйте параметр развертывания «Развернуть» в окне инструментов «Серверы приложений», «Выполнение» или «Отладка».
15.3. Классификация артефактов?
Как правило, артефакты подразделяются на:
1. Артефакты размещения (deployment artifacts) — динамические библиотеки и исполняемые коды, классические и альтернативные объектные модели (.NET, CORBA, Enterprise Java Beans и т. п.)
2. Артефакты рабочих продуктов (work product artifacts) — результаты процесса разработки программного продукта, которые напрямую не участвуют в работе созданного приложения, но являются результатами разработки, например — файлы исходного кода и файлы данных, из которых создаются артефакты размещения.
3. Артефакты исполнения (execution artifacts) , которые динамически возникают в ходе выполнения программного продукта, например — объекты .NET, которые генерируются из DLL.
Стандарт UML содержит в себе набор стереотипов, которые можно использовать для представления основных видов из всего разнообразия артефактов (файлы, документы, библиотеки, скрипты и т. п.)] Стандартными стереотипами, типичными для артефактов, являются source и executable.
16. В чем отличие артефакта war от war exploded?
war артефакт — упакованный в архив проект, только уже скомпилированный, и в котором изменена структура папок так, чтобы его можно было выкладывать уже напрямую на Tomcat.
war exploded — то же самое, только в незаархивированном виде.
16.1 В чем разница между WAR и JAR?
jar и war – расширения платформо-независимых файлов-архивов Java-приложения. Кроме них есть еще третий формат, ear. Все эти форматы – на самом деле просто zip-архивы с классами и другими частями приложения. Вы можете переименовать такой файл в .zip, разархивировать, и посмотреть, что внутри.
JAR – Java Archive. Содержит файлы классов, ресурсы, зависимые библиотеки, и другие необходимые для приложения файлы. Может содержать точку входа, и использоваться как цель для исполнения команды java.
WAR – Web Archive. Технически имеет ту же структуру, но другую роль – архив JavaEE web-компонента. Обычно содержит jar-ы с реализацией, JSP, статические файлы фронт-энда, и мета-информацию для сервлет-контейнера (web.xml). В основном используется как деплоймент web-приложения в сервлет-контейнер. С приходом Servlet API 3.0 и embedded-контейнеров, все больше становится принято запаковывать и web-компоненты в самодостаточные jar (Лозунг Spring Boot: Make jar, not war).
EAR – Enterprise Archive. Для разработчиков, начавших карьеру уже во времена Spring Framework, может показаться совсем экзотичным. Это собранное воедино монолитное JavaEE приложение. Содержит дескрипторы деплоймента и JavaEE модули (веб-модули, EJB, клиентские модули, адаптеры ресурсов). Деплоится в JavaEE Application Server.
Все три типа файлов собираются утилитой jar из JDK.
17. Какая разница между аннотациями @Component, @Repository и @Service в Spring?
@Component – простой способ сделать объявление класса объявлением Spring-бина. Из всех компонентов, которые попали в сканирование (о которых знает @ComponentScan), будут созданы bean-definition.
Остальные аннотации – это alias (пересылка, некий дополнительный домен) аннотации @Component. Сами по себе они не добавляют поведения, и технически в рамках ядра Spring Framework работают так же.
Эти аннотации называют «Stereotype annotations». Их главное отличие – семантика, логическая роль компонентов:
@Service – реализация бизнес-логики;
@Repository – хранилище данных: «репозиторий» из Domain-Driven Design или классический DAO;
@Controller – обработка веб-запросов (методы @RequestMapping);
Сторонние компоненты могут пользоваться этой семантикой. Например, трансляция исключений (org.springframework.dao.annotation. PersistenceExceptionTranslationPostProcessor).
Persistence API работает именно на компонентах стереотипа @Repository. Таким образом, в отдельных случаях кроме семантики может меняться и поведение кода библиотек.
Пользовательские аннотации, производные от @Component, могут добавлять специальную логику в бинах. Например, бины, получившиеся при помощи @Repository, дополнительно имеют обработку для JDBC Exception