Bien, continuamos con crear nuestro primer proyecto.
Pero hay diferentes formas.
No podríamos ir, por ejemplo, a Foil New, por ejemplo, y acá Spring State Project.
Eso sería una alternativa.
Pero como todavía no tenemos ningún proyecto acá, muestra un atajo para crear en el Package Explorer,
por ejemplo, crear nuevo Spring Starter proyecto, crear un proyecto.
Hacemos un clic.
Bueno, después cuando creamos el proyecto, esto desaparece y lo podemos crear con click derecho new.
O acá en File New.
Perfecto.
Le damos un nombre, por ejemplo, Springwood.
Web separÃ con guión Springwood web porque vamos a ver una aplicación web con Springwood y con Spring
Framework.
Por supuesto.
Bien, lo siguiente es el tipo bueno, vamos a usar Maven o Grail.
Es el administrador de dependencia que nos sirve para generar nuestra aplicación.
Nuestro proyecto permite compilar, construir, por ejemplo el JAR el war cuando queremos publicar en
producción nuestra versión final, por ejemplo con el comando de maven install opacas.
Pero bueno, la cosa que vamos a hacer después.
Entonces acá tenemos el administrador de dependencia y para generar el proyecto.
Bueno, Maven también se encarga de manejar todo lo que son las dependencias, los Geert, las librerías
lo dejamos en Maven, luego tenemos el packaging o tipo de empaquetado del proyecto.
Bueno, hay two year y war.
Bueno lo típico en Springwood utilizar char.
Recuerden que Spring Boot trae un servidor embebido y este servidor Tomcat una de la característica
que es portable permite publicar en JAR con el comando ya va menos.
Bueno, eso también lo vamos a ver, pero es mucho más portable.
No solamente podemos publicar en local, sino también lo podemos subir a un servidor, por ejemplo Aeroclub
en la nube o un servidor virtual a un pps y con el comando llamenos jar levantamos nuestro yaar nuestra
aplicación.
Por lo general uno piensa que con war es para aplicaciones web y JAR es para aplicaciones de escritorio,
para aplicaciones de consola, para librerías, en fin.
Pero con Spring Boot Year y war en ambos casos podemos tener nuestra aplicación web ahora.
Bueno, siempre recomiendo y se recomienda JAR para aplicaciones con Spring Put que utiliza plantilla
time lif y también para API REST y solamente utilizamos juar cuando queremos publicar en un servidor
externo que no sea el que viene incluido en la aplicación en Springwood, por ejemplo, un Tom Kateb
eterno en Glass Fitch o en un servidor de Ñados en Wall Fly, por ejemplo.
En fin.
Y también si queremos utilizar vistas JSP porque con YAT no se puede.
Si queremos trabajar con JSP tiene que ser en war y no en JAR.
Bueno, de todas formas Taime Lif mucho más robusto y recomendado que JSP, por lo menos para Spring
para aplicaciones con Springwood Spring Framework.
Bueno, entre Barek, ventaja y característica.
Bueno, a pesar de que más robusto es más amistoso también con todo lo que es HTML5 está optimizado,
no se compila a un SELECT, ni siquiera tiene dependencia a lápiz Arlett.
De hecho, podríamos trabajar Tayyip tanto con Spring web MVC, pero también con programación reactiva
con £ué Flux.
El código mucho más limpio es puro HTML con atributos y atributos que son compatible con HTML5 propios
de Tenerife, un código mucho más limpio y tampoco tiene código Java.
Como JSP no maneja etiquetas ni directivas como lo hace JSP con el tag lib.
En fin.
Y también tiene muy buen rendimiento porque maneja un sistema de caché de forma predeterminada.
Por defecto tiene un caché, a pesar de que claro, Time Life es un motor de plantilla.
Por lo tanto analiza o realiza un parse de la plantilla para convertir esto en HTML y toma su tiempo.
Pero bueno, utiliza caché para evitar analizar siempre la plantilla.
Eso lo hace también mucho más rápido.
Entonces seleccionamos Yaar, la versión de Java tengo configurarla 11.
Ustedes colocan la versión de Java que tenga configurada se usa en la 13 o si salió la 14 colocan a
14, en fin, o 15.
Pero hasta el momento la última en el momento de grabar este video es la 13 y también si tienen la 8
seleccionan la 8.
Si tienen la 12, seleccionan cualquiera y después modifican el XML.
Bien, en mi caso la 11 lenguaje java por defecto bien y el grupo Heidy es para organizar los nombres
de espacios o paquetes o paquetes e maven de hecho tiene la misma estructura que un package de Java
para evitar choques de nombre.
Es decir, podríamos tener varias aplicaciones de Maven con el artefacto Heidy, varias dentro de un
mismo grupo, varias aplicaciones.
Incluso podríamos tener otras aplicaciones con el mismo nombre, pero que están en grupo diferente,
igual que en Java, exactamente igual.
Bien, le voy a nombrar con punto bolsa ideas
punto Spring Boot App de aplicación con punto Bolsa de ideas punto Springwood Punto App de aplicación
de plataforma pueden colocar el grupo Heidy o Group que quieran.
En mi caso voy a colocar este y lo mismo empacas de Java, pero además le voy a agregar web.
Entonces voy a pegar acá y por acá web.
Antes de AP bien, recuerde que un paquete no tiene una convención estricta ni una regla, pero por
lo general comienza con el dominio.
Punto com funtor el dominio de la empresa acá bolsa de ideas.
En mi caso puede ser en nombre de la empresa o de algún área de trabajo en nombre proyecto Spring Boot
punto web.
En el fondo alguna organización que le queremos dar a este paquete.
Bien.
Y la versión légamo por defecto.
Pero acá puede la versión que quieran que quieran para el proyecto.
Una descripción también tengo por defecto y estamos listos ahora como detalle importante este package
que es de Java, del proyecto donde van a ir todas las clases de Spring y este va a ser nuestro package
raíz o base de la aplicación.
Por lo tanto, ahí tiene que estar toda la clase de Spring de proyecto, controladores, clase de modelo,
los servis, los en Thetis, los Daho, en fin, todas las clases siguiente.
Bien, acá la versión de Spring Input, la última hasta la fecha es 2.ª 2.5 hasta el momento grabar
este video.
Pero esto va campeando.
Recomiendo siempre una versión final estable, no usar MWC ni tampoco Snapchat, que son versiones de
desarrollo que no son estables, no son finales.
Entonces siempre utilizar versiones de este tipo que sea final de la última.
2.2 Punto 5 Las seleccionamos Perfecto y librerías la dependencia que vamos a utilizar en este proyecto.
La primera y más importante es la web.
Bien, estoy bajando con la rueda del mouse, pero también pueden buscar acá por web, por ejemplo web,
ya que aparecen, se fijan web.
Bien, voy a bajar con la rueda del mouse web.
Acá aparece Spring Web y seleccionamos Web.
Cuidado, tiene que ser Spring Web porque también está la versión rectiva con Waffles Pen Spring Web
es para construir aplicaciones tanto Spring MS con pistas Taine, lib, jsp, pero también para crear
aplicaciones REST full para nuestras API y por defecto incluye este servidor Tomcat en peudo se fijan
acá lo dice USA un servidor Tomcat Apache que por defecto viene en pedido como contenedor, pero también
incluye toda la dependencia bases de Spring, todo lo que es Spring Core inyección de dependencia bueno
spring web que incluye el a pisar LET Spring MSE todo lo que son los controladores y también para traja
con Jason.
En fin, auto configuración con Spring Boot Auto configure trae todo lo siguiente en templates el motor
de plantilla vamos a seleccionar tam lif y además faltaría dev tours un poco más arriba por acá e Developer
Tours.
Justamente acá es Spring Putter Tours.
Perfecto.
Bueno, permite actualizar los cambios de nuestro código en tiempo real.
Por ejemplo, si lanzamos nuestra aplicación Eclipse en el Spring Tours, levantamos y modificamos el
código en el controlador, por ejemplo, o una clase servis o un repository un daho.
Modificamos el código y guardamos de forma automática.
Se actualiza el servidor que tenemos embebido con el cambio.
No tenemos que estar reiniciando esto de forma automática.
Entonces cualquier cambio que tengamos en desarrollo se actualiza el de pie de nuestro servidor.
Bien, eso sería todo, pero también bueno, solamente para revisar.
Hay otras dependencias que no la vamos a incluir ahora, pero si lo vamos a ver después más adelante,
por ejemplo en ese cuele si queremos traja con paseando con JDBC.
Bueno acá tanto la dependencia con Spring data JPA con Moise cuele por acá esta Moise SQL con PostgreSQL,
SQL con Oracle.
En fin, acá están todos los driver para traja con distintos motores de Ayato y estamos listo.
Eso sería todo.
Quizás como comentario a veces en el wizard estos nombre cambian.
Por ejemplo, ahora se llama web spring web, pero puede que en algún momento se llame Web Web o web
o spring starter web.
Bueno, estos nombres pueden cambiar, pero es solamente una etiqueta visual.
La dependencia siempre es la misma para que lo tengan en cuenta.
Por ahora es Sprinkles.
Lleva ese nombre.
Estamos listo.
Finalizar.
Bueno, acá se puede morar un buen rato porque tienen que cargar las dependencias de Maven de la central.
Hay que tener paciencia.
Se puede demorar un buen rato.
Perfecto.
Acá tenemos el proyecto.
Bueno, puede que marque algún error.
A veces la dependencia se descarga en mal de internet con archivo corrupto.
Por ejemplo, se podría cargar algún Jahr corrupto y vamos a tener problema.
Y de hecho podría marcar error en el proyecto con alguna marca en rojo.
Si llega a pasar, se le llega a suceder ese tipo de error.
Simplemente tienen que volver a descargar.
Para eso tenemos que eliminar la carpeta de Maven MWC de la carpeta del usuario.
Bien, por ejemplo, acá en Yussef y el nombre usuario.
Punto.
Doh y la eliminan con click derecho, la eliminan una que se borra.
Bueno, primero antes de eliminar tienen que cerrar el eclipse, lo cierran, luego eliminan la carpeta
M2 y lo vuelven a abrir.
Y una vez que se haya reiniciado el eclipse o el STS con click derecho, acá actualizan.
Se van a Maven por acá ADDA y Proyecto.
Selección de proyecto Yokai.
Bueno, eso en caso de error de que se cargó algo mal, alguna librería que muy poco probable que ocurra.
Pero a veces pasa bueno, y básicamente por alguna mala señal de internet, por una intermitencia o
un proxy corporativo.
En fin, puede pasar lo siguiente es revisar el pomme kml.
Nos vamos acá.
Acá tenemos toda la dependencia.
Se fijan la versión de Java la 11.
Recuerden si están usando, por ejemplo la 12, alguna versión que no está en el Wizard la pueden cambiar.
Acá seleccionan cualquiera y la modifican acá.
Bien.
Y acá tenemos las dependencias Tint, LIF, Web, Deep Tools y Tuatha.
Se configura de forma automática con Springwood.
No hay que hacer nada, todo viene configurado.
Tanto el web como el timeline Dev Tools, por ejemplo, si agregamos JPA con un motor de Ayato, también
viene una configuración por defecto.
Voy a cerrar acá tenemos el package principal o raíz importante.
Acá están toda la clase de proyecto, por ejemplo, el controlador.
La clase service, tal como dije, tiene que estar dentro de este package principal.
Bueno, obviamente en su РАМКАХ vamos a tener su рамках controllers models service, en fin, pero siempre
dentro de este РАМКАХ principal, porque todas estas clases de Spring anotadas con Controller con la
anotación component o service que las vamos a ver permite registrar estos componentes Spring y para
que se puedan registrar tienen que estar dentro de este contexto, de este package.
Ven acá tenemos la clase principal de Spring Put que es el arranque, es el vostra de la aplicación.
Acá ocurre todo y de hecho acá tenemos la anotación.
El input application con control click la podemos ver acá tiene la configuración de Spring de Spring
Boot Springwood configure chón también habilita la auto configuración y tiene el component scan, es
decir, escanea los componentes que están dentro de este package.
Todos los componentes, todos los beans, ya sea controladores component service.
Bueno, en fin, todo lo que he nombrado lo busca y lo registra como componente del frecuenté Spring
y lo guarda en el contenedor.
Bien, eso es todo.
Quería explicar estos detalles.
Voy a cerrar y continuamos en la siguiente clase.