Está en la página 1de 21

MÓDULO 6

Silvestre, Aldo Gabriel


¿Qué es Apache Maven?

Es una herramienta de gestión y construcción de proyectos de software con Java.


Algunas de las tareas que nos permite resolver son:
❑ Identificar componentes
❑ Resolver dependencias
❑ Test
❑ Empaquetado
❑ …
INTRODUCCIÓN
POM

Maven se basa en un Modelo de Objetos del Proyecto (POM) para su configuración.


Dicha configuración deberá describirse en un fichero pom.xml
Siempre se sitúa en la raíz del proyecto.
INTRODUCCIÓN
Artifact (Artefacto)

Es un componente de software, la unidad mínima que desplegará todo repositorio


Maven. Una compilación de maven produce uno o más artefactos (JAR, WAR, POM).
CONCEPTOS
Coordenadas

Sistema por el cual se determina de forma única a cada uno de los artefactos en
Internet.
❑Group ID: identificación del grupo. Normalmente se utiliza el nombre del dominio al
revés. Por ejemplo: com.cinemar.mps
❑Artifact ID: identificación del artefacto. Por ejemplo: supermark, cinemar
❑Versión: 1.0.0-SNAPSHOT, 1.2.5-RC (Release Candidate), 1.3.3-Release
CONCEPTOS
Empaquetado

Debemos especificar que tipo de componente de software que desplegaremos.


❑JAR: Java ARchive es un tipo de archivo que permite ejecutar aplicaciones y
herramientas implementadas en el lenguaje de programación Java.
❑WAR, EAR, POM.
CONCEPTOS
clean Elimina los ficheros generados en construcciones anteriores

validate Valida el proyecto si es correcto

compile Genera los ficheros *.class compilando los fuentes *.java

test Ejecuta los test unitaros existentes

package Genera el empaquetado final (jar, war, etc)

verify Verificar que el paquete cumpla los criterios de calidad


COMANDOS

install Instala un paquete en el equipo local

deploy Instala un paquete en el repositorio remoto


Plugin

Es una tarea específica, más pequeña que una fase de construcción, que contribuye a la
construcción y gestión del proyecto.
Permiten conectar con herramientas externas en este proceso de construcción.
Plugin
Estructura del Proyecto
Estructura
POM.xml
POM.xml
Repositorio
❑Estructura de directorios y ficheros que usa Maven para almacenar, recuperar y
organizar artefactos
❑Existen repositorios locales, privados y remotos.
▪ Repositorio central de Maven: Maven Repository
▪ Repositorio local: %user%/.m2./repository

Perfiles
❑Permite cambiar la configuración de la aplicación dependiendo del entorno en que se
CARACTERÍSTICAS

despliega
❑Es definido en el fichero setting.xml y se utiliza en el fichero pom.xml

Arquetipos
❑ Plantilla para crear proyectos
MÓDULO 6

Silvestre, Aldo Gabriel


¿Qué es Spark?
Spark es un framework para Java/Kotlin que nos permite levantar un servidor liviano. El
mismo está diseñado para el desarrollo rápido, escribiendo una cantidad de código
reducida y de forma expresiva.

Dentro de las filosofías de Spark se encuentran:

- Sintaxis elegante
- Sintaxis declarativa
MÓDULO 6

- Sintaxis expresiva

Silvestre, Aldo Gabriel


¿Cómo instalamos Spark?

Debemos agregar a nuestro archivo pom.xml de maven la siguiente dependencia.

<dependency>
<groupId>com.sparkjava</groupId>
<artifactId>spark-core</artifactId>
<version>2.9.3</version>
</dependency>

¡Y listo, ya tenemos Spark, ahora crearemos nuestro servidor!


MÓDULO 6

Silvestre, Aldo Gabriel


Creando nuestro primer servidor
Cómo spark funciona con un servidor jetty embebido (cosa que no nos importará a nosotros), a la
hora de correr nuestra aplicación Java, se ejecuta y quedará levantada para poder pegarle.
MÓDULO 6

¿¿¡Para para para, me estás diciendo que ya está mi servidor Rest!?? ...
Silvestre, Aldo Gabriel
mmm…
Entonces…

Bueno, tenemos un servidor, pero queremos una API y esta debe


responder objetos REST, en pocas palabras un objeto Json o un
XML, usaremos el primero, ya que es el más utilizado. Una vez que
tengamos eso se finit, tendremos nuestra API REST levantado en
un servidor Jetty.

¿Pero cómo lo hago?, ¿Debo llorar ahora?


NAAA, tu tranquilo pana

Solo necesitamos 3 cositas:


MÓDULO 6

1) Agregar una dependencia para convertir objetos al formato Json.


2) Llamar a la clase dentro de nuestro controlador.
3) Decirle a nuestro endpoint que devolverá un Json.
Silvestre, Aldo Gabriel
Devolviendo un Json (Musica Epica de fondo)
Agregamos la dependencia al pom.xml para convertir Objetos al formato Json

<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.9.0</version>
</dependency>
Instanciamos un objeto que será quien nos convierta los objetos en nuestro método main.
Gson mapper = new Gson();

Lo que hacemos a continuación es decirle a nuestra respuesta que será un objeto Persona, y como 3er argumento le
pasamos el método que convierte a Json de nuestro mapeador

get("/saludo", (req, res) -> new Persona("Gabriel", "Silvestre"), mapper::toJson);

Si todo está listo, ya tenemos nuestra api rest respondiendo una persona en formato
MÓDULO 6

Json.
{"nombre":"Gabriel","apellido":"Silvestre"}

Silvestre, Aldo Gabriel


Para terminar te dejo el código completo de la magia.
import com.google.gson.Gson;
import static spark.Spark.*;

public class App {


public static void main(String[] args) {

Gson mapper = new Gson();

port(8080);

get("/saludo", (req, res) -> new Persona("Gabriel", "Silvestre"), mapper::toJson);


}
}

Toda la documentación la encontrarás en:


MÓDULO 6

http://sparkjava.com/documentation

Silvestre, Aldo Gabriel


MÓDULO 6

Silvestre, Aldo Gabriel


Gracias.

WEB: http://milprogramadores.unsa.edu.ar/
CANAL TELEGRAM: https://t.me/milprogramadoressaltenios
CENTRO DE AYUDA: http://ayudamilprogramadores.com/

También podría gustarte