Introducción a los arquetipos

Hay otra forma de crear un proyecto Maven en IDEA, basado en un arquetipo:

Proyecto Maven en IDEA

Aquí se propone crear un proyecto a partir de uno de los arquetipos existentes . ¿Cuáles son estos arquetipos y por qué los necesitamos?

Maven tiene plantillas de proyecto estandarizadas; dichas plantillas se denominan arquetipos. ¿Recuerda la estructura inicial del proyecto: las carpetas src , java , test , etc.? Entonces, esta estructura de carpetas se establece usando el arquetipo.

Hay plantillas de muestra en el sitio web oficial de Maven . Con su ayuda, puede generar diferentes proyectos de puesta en marcha: una aplicación simple, un complemento, un sitio web.

La lista de arquetipos disponibles se puede obtener ejecutando el siguiente comando en la consola: mvn archetype:generate

Arquetipos populares

Los arquetipos más populares son:

  • maven-arquetipo-inicio rápido ;
  • maven-arquetipo- sitio
  • maven-arquetipo-webapp ;
  • maven-arquetipo-j2ee-simple ;
  • jpa-maven-arquetipo ;
  • Spring-mvc-inicio rápido .

Si desea crear un proyecto Java vacío, utilice el arquetipo maven-archetype-quickstart . Fue el resultado de su trabajo que viste al crear un proyecto en IDEA en la última lección.

Si desea crear una aplicación web que se ejecute dentro de un servidor web, muestre páginas HTML y todo eso, entonces puede tomar con seguridad el arquetipo maven-archetype-webapp como base .

Puede usar el arquetipo maven-archetype-site para crear un sitio . O incluso el arquetipo maven-archetype-site-simple si se espera un sitio muy simple. Pruebe diferentes opciones y vea cuál le gusta más.

Para trabajar con Hibernate o JPA, puede usar el arquetipo jpa-maven-archetype .

Y finalmente, también hay un arquetipo especial para trabajar con Spring: spring-mvc-quickstart . Será muy útil para los principiantes. Más información similar sobre este último se puede encontrar aquí, en el enlace .

¿Por qué son buenos los arquetipos? Se destetan para escribir proyectos desde cero. Ya nadie escribe proyectos solo en Java. Los proyectos modernos están escritos en una pila de tecnología: una lista de 5-10 marcos y un par de docenas de bibliotecas es el "lenguaje en el que escribo" moderno.

Aplicación web en Maven

Por separado, me gustaría detenerme en el arquetipo maven-archetype-webapp .

Esta es una aplicación web clásica escrita en Java. Y aunque está un poco desactualizado después de la popularidad de Spring, usted, como principiante, lo encontrará muy útil. ¿Qué necesitas saber sobre este arquetipo?

Le permite construir una aplicación web simple ; el resultado de la construcción será un archivo .war . La implementación se puede configurar para que su aplicación web se agregue inmediatamente a Tomcat. Finalmente, puede experimentar con servlets primitivos y JSP.

Si crea un proyecto basado en este arquetipo, obtendrá la siguiente estructura de carpetas:

Proyecto Maven en IDEA 2

Aquí hay algunas cosas interesantes:

  • carpeta de aplicaciones web;
  • carpeta WEB-INF;
  • archivo web.xml;
  • índice.jsp

En primer lugar, hay una carpeta webapp (de la aplicación web), en la que se almacenarán todos los recursos de su aplicación web.

En segundo lugar, el archivo web.xml es el descriptor de implementación de la aplicación web . Describe cómo su aplicación web debe interactuar con el servidor web y sus clientes.

En tercer lugar, hay un archivo index.jsp , que es una forma bastante simple de servlet. Está funcionando y puede experimentar con su primer servlet JSP cambiándolo.

Hablaremos de todo esto con más detalle en el tema dedicado a los servlets y aplicaciones web.