Introduktion till arketyper
Det finns ett annat sätt att skapa ett Maven-projekt i IDEA - baserat på en arketyp:
![Maven-projekt i IDEA](https://cdn.codegym.cc/images/article/ba39b165-cff9-4d4e-ae7c-f5d9edbd8cb0/1024.jpeg)
Här föreslås skapa ett projekt utifrån en av de befintliga arketyperna . Vilka är dessa arketyper och varför behöver vi dem?
Maven har standardiserade projektmallar – sådana mallar kallas arketyper. Kommer du ihåg startstrukturen för projektet - src , java , testmappar och så vidare? Så den här mappstrukturen ställs in med hjälp av arketypen.
Det finns exempelmallar på den officiella Maven-webbplatsen . Med deras hjälp kan du skapa olika startprojekt - en enkel applikation, ett plugin, en webbplats.
Listan över tillgängliga arketyper kan erhållas genom att köra följande kommando i konsolen: mvn archetype:generate
Populära arketyper
De mest populära arketyperna är:
- maven-arketyp-snabbstart ;
- maven-arketyp- webbplats
- maven-archetype-webapp ;
- maven-arketyp-j2ee-enkel ;
- jpa-maven-arketyp ;
- spring-mvc-snabbstart .
Om du vill skapa ett tomt Java-projekt, använd sedan arketypen maven-archetype-quickstart . Det var resultatet av hans arbete som du såg när du skapade ett projekt i IDEA i förra föreläsningen.
Om du vill skapa en webbapplikation som ska köras inuti en webbserver, visa HTML-sidor och allt sånt, då kan du säkert ta maven- archetype-webapp- arketypen som grund .
Du kan använda arketypen maven-archetype-site för att skapa en webbplats . Eller till och med den maven-arketyp-plats-enkla arketypen om en mycket enkel webbplats förväntas. Prova olika alternativ och se vilket du gillar bäst.
För att arbeta med Hibernate eller JPA kan du använda arketypen jpa-maven-archetype .
Och slutligen finns det också en speciell arketyp för att arbeta med Spring - spring-mvc-quickstart . Det kommer att vara mycket användbart för nybörjare. Mer liknande information om det senare finns här, på länken .
Varför är arketyper bra? De avvänjs för att skriva projekt från grunden. Ingen skriver projekt bara i Java längre. Moderna projekt skrivs på en teknikstack: en lista med 5-10 ramverk och ett par dussin bibliotek är det moderna "språket jag skriver på".
Webbapplikation på Maven
Separat skulle jag vilja uppehålla mig vid arketypen maven-archetype-webapp .
Detta är en klassisk webbapplikation skriven i Java. Och även om det är lite föråldrat efter vårens popularitet, kommer du som nybörjare att tycka att det är väldigt användbart. Vad behöver du veta om denna arketyp?
Det låter dig bygga en enkel webbapplikation - byggresultatet blir en .war-fil . Deploy kan konfigureras så att din webbapplikation omedelbart läggs till i Tomcat. Slutligen kan du experimentera med primitiva servlets och JSP:er.
Om du skapar ett projekt baserat på denna arketyp får du följande mappstruktur:
![Maven-projekt i IDEA 2](https://cdn.codegym.cc/images/article/0cffc06b-44e6-4dfc-b4ad-1ced138a8211/512.jpeg)
Här är några intressanta saker:
- webapp-mapp;
- WEB-INF mapp;
- web.xml-fil;
- index.jsp
För det första finns det en webbapp- mapp (från Web Application), där alla resurser i din webbapplikation kommer att lagras.
För det andra är web.xml -filen webbapplikationens distributionsbeskrivning . Den beskriver hur din webbapplikation ska interagera med webbservern och dess klienter.
För det tredje finns det en index.jsp- fil , som är en ganska enkel form av en servlet. Det fungerar och du kan experimentera med din första JSP-servlet genom att ändra den.
Vi kommer att prata om allt detta mer i detalj i ämnet dedikerat till servlets och webbapplikationer.