SlideShare a Scribd company logo
1 of 17
Spring Boot et. al.
Para el impaciente
● Automatiza tus proyectos
o Convención sobre configuración à la
Maven
o Flexible como Ant… pero no tan
complejo
● Maneja tus dependencias
o Soporta repositorios de Ivy, Maven
● Es eficiente: Directed Acyclic Graph
o Las tareas son ejecutadas solo si es
necesario
● Control Total
o O eso dicen
Gradle
Creando el proyecto
Spring Boot
● Crea aplicaciones completas con Spring de
forma dogmática… o tercamente.
● Usa configuración automática… o
convención sobre configuración.
● Sin generación de código y/o XML
Para usarlo...
Edita el archivo
build.gradle:
1. Aplica el plugin
2. Agrega el proyecto
starter de lo que
necesitas
3. Especifica tu clase
principal
4. Especifica la locación del
plugin de gradle
Nota: No necesitas especificar la versión de las
dependencias, el plugin de spring boot para gradle lo
hace por ti.
1
2
3
4
¿La clase principal?
(1) Corres la aplicacion con una clase de configuración principal; (2) escaneando los componentes
desde el paquete en el que se encuentra hacia abajo en la jerarquía y (3) permitiendo que se ejecuten
las configuraciones automáticas de las dependencias “starter” que definiste.
1
2
3
Los starter POMs proveen dependencias
que son probablemente necesarias cuando
desarrollas un tipo especifico de aplicacion
Spring Boot Starter
POMs
¿Que hacen?
¿Como lo uso?
compile ‘org.springframework.boot:spring-boot-starter-web’
¿Que es lo que importa por ti?
● Spring MVC
● Tomcat 7 (puedes cambiar a Jetty)
● Jackson (soporte para JSON)
Spring Boot Web Starter
Desde un directorio en el classpath. Se
puede llamar
● /static
● /public
● /resources
● /META-INF/resources o
● Desde la raíz del ServletContext
¿Y cómo es que sirvo contenido estático,
uso controladores?
Spring Boot Thymeleaf Starter
¿Como lo uso?
compile "org.springframework.boot:spring-boot-starter-thymeleaf"
¿Que es lo que importa por ti?
● Thymeleaf para Spring 4
● Thymeleaf Layout
¿Y cómo creo templates y vistas?
Los creas en el directorio
src/main/resources/templates
Spring Boot Data JPA/REST Starter
¿Como lo uso?
// Data REST
compile "org.springframework.boot:spring-boot-starter-data-rest"
// Data JPA
compile "org.springframework.boot:spring-boot-starter-data-jpa"
¿Que es lo que importa por ti?
● Spring HATEOAS
● Spring Data REST WebMVC
● Hibernate Entity Manager
● Spring ORM
● Spring JDBC
¿Y cómo empiezo?
Habilitas la auto-
configuración:
Creas tus clases modelo
y entonces...
Creas tus interfaces
para repositorios
OK, pero entonces ¿Como ejecuto la
aplicacion?
Y ahora solo usas tu explorador
Finalmente...
Twitter: @eldermael ← Aqui public micro rants
Github: ElderMael ← Aqui subo cosas
El código fuente se encuentra en:
https://github.com/ElderMael/spring-boot-talk
Nota final: Google Docs es horrible para crear presentaciones D:

More Related Content

What's hot

Asp.Net Core 1.0 Deep Dive
Asp.Net Core 1.0 Deep DiveAsp.Net Core 1.0 Deep Dive
Asp.Net Core 1.0 Deep DiveEduard Tomàs
 
Presentacion de Integración Continua
Presentacion de Integración ContinuaPresentacion de Integración Continua
Presentacion de Integración ContinuaRodrigo Ayala
 
Desenredando el toolchain de Javascript
Desenredando el toolchain de JavascriptDesenredando el toolchain de Javascript
Desenredando el toolchain de JavascriptSoftware Guru
 
Prueba De Aplicaciones Web con Selenium 2 y WebDriver
Prueba De Aplicaciones Web con Selenium 2 y WebDriverPrueba De Aplicaciones Web con Selenium 2 y WebDriver
Prueba De Aplicaciones Web con Selenium 2 y WebDriverDavid Gómez García
 
01- instalacion de laravel 5+ (dos formas sencillas )
01- instalacion de laravel 5+ (dos formas sencillas )01- instalacion de laravel 5+ (dos formas sencillas )
01- instalacion de laravel 5+ (dos formas sencillas )Jairo Hoyos
 
lección 02- creación de Virtual Host laravel 5 + Xampp + Windows
lección 02- creación de Virtual Host laravel 5 + Xampp + Windowslección 02- creación de Virtual Host laravel 5 + Xampp + Windows
lección 02- creación de Virtual Host laravel 5 + Xampp + WindowsJairo Hoyos
 
Taller de Simpletest - Drupal Day Valencia 2012
Taller de Simpletest - Drupal Day Valencia 2012Taller de Simpletest - Drupal Day Valencia 2012
Taller de Simpletest - Drupal Day Valencia 2012Juampy NR
 
Cross development - React para desarrolladores de asp.net
Cross development - React para desarrolladores de asp.netCross development - React para desarrolladores de asp.net
Cross development - React para desarrolladores de asp.netAlberto Diaz Martin
 
Control de Versiones con Subversion (SVN)
Control de Versiones con Subversion (SVN)Control de Versiones con Subversion (SVN)
Control de Versiones con Subversion (SVN)Fco Javier Lucena
 
Integración contínua con Jenkins
Integración contínua con JenkinsIntegración contínua con Jenkins
Integración contínua con JenkinsCésar Hernández
 

What's hot (20)

Spring boot + spock
Spring boot + spockSpring boot + spock
Spring boot + spock
 
Asp.Net Core 1.0 Deep Dive
Asp.Net Core 1.0 Deep DiveAsp.Net Core 1.0 Deep Dive
Asp.Net Core 1.0 Deep Dive
 
Presentacion de Integración Continua
Presentacion de Integración ContinuaPresentacion de Integración Continua
Presentacion de Integración Continua
 
Desenredando el toolchain de Javascript
Desenredando el toolchain de JavascriptDesenredando el toolchain de Javascript
Desenredando el toolchain de Javascript
 
Maven
MavenMaven
Maven
 
ASP.NET 5 & MVC 6 (RC1)
ASP.NET 5 & MVC 6 (RC1)ASP.NET 5 & MVC 6 (RC1)
ASP.NET 5 & MVC 6 (RC1)
 
De zero a 100 con Spring Boot
De zero a 100 con Spring BootDe zero a 100 con Spring Boot
De zero a 100 con Spring Boot
 
Prueba De Aplicaciones Web con Selenium 2 y WebDriver
Prueba De Aplicaciones Web con Selenium 2 y WebDriverPrueba De Aplicaciones Web con Selenium 2 y WebDriver
Prueba De Aplicaciones Web con Selenium 2 y WebDriver
 
01- instalacion de laravel 5+ (dos formas sencillas )
01- instalacion de laravel 5+ (dos formas sencillas )01- instalacion de laravel 5+ (dos formas sencillas )
01- instalacion de laravel 5+ (dos formas sencillas )
 
Selenium
SeleniumSelenium
Selenium
 
Turbogears
TurbogearsTurbogears
Turbogears
 
lección 02- creación de Virtual Host laravel 5 + Xampp + Windows
lección 02- creación de Virtual Host laravel 5 + Xampp + Windowslección 02- creación de Virtual Host laravel 5 + Xampp + Windows
lección 02- creación de Virtual Host laravel 5 + Xampp + Windows
 
Laravel 4.2 pdf
Laravel 4.2 pdfLaravel 4.2 pdf
Laravel 4.2 pdf
 
Taller de Simpletest - Drupal Day Valencia 2012
Taller de Simpletest - Drupal Day Valencia 2012Taller de Simpletest - Drupal Day Valencia 2012
Taller de Simpletest - Drupal Day Valencia 2012
 
React redux workshop
React redux workshopReact redux workshop
React redux workshop
 
Cross development - React para desarrolladores de asp.net
Cross development - React para desarrolladores de asp.netCross development - React para desarrolladores de asp.net
Cross development - React para desarrolladores de asp.net
 
Control de Versiones con Subversion (SVN)
Control de Versiones con Subversion (SVN)Control de Versiones con Subversion (SVN)
Control de Versiones con Subversion (SVN)
 
Jenkins, no me rompas los builds!
Jenkins, no me rompas los builds!Jenkins, no me rompas los builds!
Jenkins, no me rompas los builds!
 
ASP.NET MVC Workshop Día 2
ASP.NET MVC Workshop Día 2ASP.NET MVC Workshop Día 2
ASP.NET MVC Workshop Día 2
 
Integración contínua con Jenkins
Integración contínua con JenkinsIntegración contínua con Jenkins
Integración contínua con Jenkins
 

Viewers also liked

Sistema de préstamo
Sistema de préstamoSistema de préstamo
Sistema de préstamoBiblioteca2
 
Spring Data y Mongo DB en un proyecto Real
Spring Data y Mongo DB en un proyecto RealSpring Data y Mongo DB en un proyecto Real
Spring Data y Mongo DB en un proyecto RealDavid Gómez García
 
Desarrolla tu primera api con spring boot
Desarrolla tu primera api con spring bootDesarrolla tu primera api con spring boot
Desarrolla tu primera api con spring bootCloudAppi
 
Memories of WMS G.A.T.E. 8th grade 2010
Memories of WMS G.A.T.E. 8th grade 2010Memories of WMS G.A.T.E. 8th grade 2010
Memories of WMS G.A.T.E. 8th grade 2010Andrea L. Wurm
 
Vietnam Boletín Informativo Octubre 2010
Vietnam Boletín Informativo Octubre 2010Vietnam Boletín Informativo Octubre 2010
Vietnam Boletín Informativo Octubre 2010Juan Inoriza
 
Victor hu1
Victor hu1Victor hu1
Victor hu1Marisagg
 
imetodo_formacion.pdf
imetodo_formacion.pdfimetodo_formacion.pdf
imetodo_formacion.pdfimétodo
 
Beyond MVC: from Model to Domain
Beyond MVC: from Model to DomainBeyond MVC: from Model to Domain
Beyond MVC: from Model to DomainJeremy Cook
 
Tarea en clase diapositivas
Tarea en clase  diapositivasTarea en clase  diapositivas
Tarea en clase diapositivasDiana Imbaquingo
 
Consideraciones consideraciones didacticas para enseñar y jugar
Consideraciones consideraciones didacticas para enseñar y jugarConsideraciones consideraciones didacticas para enseñar y jugar
Consideraciones consideraciones didacticas para enseñar y jugartogueda
 
Mobile marketing cómo implementarlo
Mobile marketing cómo implementarloMobile marketing cómo implementarlo
Mobile marketing cómo implementarloInterlat
 
C O N T A C T O
C O N T A C T OC O N T A C T O
C O N T A C T Oquisqueya1
 

Viewers also liked (20)

Spring ORM
Spring ORMSpring ORM
Spring ORM
 
Sistema de préstamo
Sistema de préstamoSistema de préstamo
Sistema de préstamo
 
Spring Data y Mongo DB en un proyecto Real
Spring Data y Mongo DB en un proyecto RealSpring Data y Mongo DB en un proyecto Real
Spring Data y Mongo DB en un proyecto Real
 
Desarrolla tu primera api con spring boot
Desarrolla tu primera api con spring bootDesarrolla tu primera api con spring boot
Desarrolla tu primera api con spring boot
 
Spring Mvc Final
Spring Mvc FinalSpring Mvc Final
Spring Mvc Final
 
Memories of WMS G.A.T.E. 8th grade 2010
Memories of WMS G.A.T.E. 8th grade 2010Memories of WMS G.A.T.E. 8th grade 2010
Memories of WMS G.A.T.E. 8th grade 2010
 
eBRIDGE Toolkit
eBRIDGE ToolkiteBRIDGE Toolkit
eBRIDGE Toolkit
 
Revista n52
Revista n52Revista n52
Revista n52
 
Vietnam Boletín Informativo Octubre 2010
Vietnam Boletín Informativo Octubre 2010Vietnam Boletín Informativo Octubre 2010
Vietnam Boletín Informativo Octubre 2010
 
Foda
FodaFoda
Foda
 
Victor hu1
Victor hu1Victor hu1
Victor hu1
 
Issuu tarifas
Issuu tarifasIssuu tarifas
Issuu tarifas
 
Barcamp Matej Tomasovsky
Barcamp Matej TomasovskyBarcamp Matej Tomasovsky
Barcamp Matej Tomasovsky
 
High-Profile May 2012
High-Profile May 2012High-Profile May 2012
High-Profile May 2012
 
imetodo_formacion.pdf
imetodo_formacion.pdfimetodo_formacion.pdf
imetodo_formacion.pdf
 
Beyond MVC: from Model to Domain
Beyond MVC: from Model to DomainBeyond MVC: from Model to Domain
Beyond MVC: from Model to Domain
 
Tarea en clase diapositivas
Tarea en clase  diapositivasTarea en clase  diapositivas
Tarea en clase diapositivas
 
Consideraciones consideraciones didacticas para enseñar y jugar
Consideraciones consideraciones didacticas para enseñar y jugarConsideraciones consideraciones didacticas para enseñar y jugar
Consideraciones consideraciones didacticas para enseñar y jugar
 
Mobile marketing cómo implementarlo
Mobile marketing cómo implementarloMobile marketing cómo implementarlo
Mobile marketing cómo implementarlo
 
C O N T A C T O
C O N T A C T OC O N T A C T O
C O N T A C T O
 

Similar to Spring boot et. al. para el impaciente

Similar to Spring boot et. al. para el impaciente (20)

spring-boot-es
spring-boot-esspring-boot-es
spring-boot-es
 
Spring mvc
Spring mvcSpring mvc
Spring mvc
 
Spring mvc
Spring mvcSpring mvc
Spring mvc
 
Framework Catalyst
Framework CatalystFramework Catalyst
Framework Catalyst
 
Seminario Spring Roo. Monitorización con Spring Insight
Seminario Spring Roo. Monitorización con Spring InsightSeminario Spring Roo. Monitorización con Spring Insight
Seminario Spring Roo. Monitorización con Spring Insight
 
Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2
 
Desarrollo rápido de apps web con laravel - DevAcademy
Desarrollo rápido de apps web con laravel - DevAcademyDesarrollo rápido de apps web con laravel - DevAcademy
Desarrollo rápido de apps web con laravel - DevAcademy
 
Proyect Evenge. Event manager
Proyect Evenge. Event managerProyect Evenge. Event manager
Proyect Evenge. Event manager
 
S1-DS2.pptx
S1-DS2.pptxS1-DS2.pptx
S1-DS2.pptx
 
CrossDvlpu - REACT para desarrolladores de ASP.NET
CrossDvlpu - REACT para desarrolladores de ASP.NETCrossDvlpu - REACT para desarrolladores de ASP.NET
CrossDvlpu - REACT para desarrolladores de ASP.NET
 
Tutorial java fx_8_espanol
Tutorial java fx_8_espanolTutorial java fx_8_espanol
Tutorial java fx_8_espanol
 
Los mejores trucos y prácticas para configurar drupal
Los mejores trucos y prácticas para configurar drupalLos mejores trucos y prácticas para configurar drupal
Los mejores trucos y prácticas para configurar drupal
 
TEMA Nº 3: ELEMENTOS DE JSP
TEMA Nº 3: ELEMENTOS DE JSPTEMA Nº 3: ELEMENTOS DE JSP
TEMA Nº 3: ELEMENTOS DE JSP
 
Dia2
Dia2Dia2
Dia2
 
Java ventajas y caracteristicas
Java ventajas y caracteristicasJava ventajas y caracteristicas
Java ventajas y caracteristicas
 
Intro a cakephp
Intro a cakephpIntro a cakephp
Intro a cakephp
 
Intro a cakephp
Intro a cakephpIntro a cakephp
Intro a cakephp
 
Video
VideoVideo
Video
 
Taller introduccion symfony2
Taller introduccion symfony2Taller introduccion symfony2
Taller introduccion symfony2
 
Clase 3 instalación y primeros pasos
Clase 3 instalación y primeros pasosClase 3 instalación y primeros pasos
Clase 3 instalación y primeros pasos
 

Spring boot et. al. para el impaciente

  • 1. Spring Boot et. al. Para el impaciente
  • 2. ● Automatiza tus proyectos o Convención sobre configuración à la Maven o Flexible como Ant… pero no tan complejo ● Maneja tus dependencias o Soporta repositorios de Ivy, Maven ● Es eficiente: Directed Acyclic Graph o Las tareas son ejecutadas solo si es necesario ● Control Total o O eso dicen Gradle
  • 4. Spring Boot ● Crea aplicaciones completas con Spring de forma dogmática… o tercamente. ● Usa configuración automática… o convención sobre configuración. ● Sin generación de código y/o XML
  • 5. Para usarlo... Edita el archivo build.gradle: 1. Aplica el plugin 2. Agrega el proyecto starter de lo que necesitas 3. Especifica tu clase principal 4. Especifica la locación del plugin de gradle Nota: No necesitas especificar la versión de las dependencias, el plugin de spring boot para gradle lo hace por ti. 1 2 3 4
  • 6. ¿La clase principal? (1) Corres la aplicacion con una clase de configuración principal; (2) escaneando los componentes desde el paquete en el que se encuentra hacia abajo en la jerarquía y (3) permitiendo que se ejecuten las configuraciones automáticas de las dependencias “starter” que definiste. 1 2 3
  • 7. Los starter POMs proveen dependencias que son probablemente necesarias cuando desarrollas un tipo especifico de aplicacion Spring Boot Starter POMs ¿Que hacen?
  • 8. ¿Como lo uso? compile ‘org.springframework.boot:spring-boot-starter-web’ ¿Que es lo que importa por ti? ● Spring MVC ● Tomcat 7 (puedes cambiar a Jetty) ● Jackson (soporte para JSON) Spring Boot Web Starter
  • 9. Desde un directorio en el classpath. Se puede llamar ● /static ● /public ● /resources ● /META-INF/resources o ● Desde la raíz del ServletContext ¿Y cómo es que sirvo contenido estático, uso controladores?
  • 10. Spring Boot Thymeleaf Starter ¿Como lo uso? compile "org.springframework.boot:spring-boot-starter-thymeleaf" ¿Que es lo que importa por ti? ● Thymeleaf para Spring 4 ● Thymeleaf Layout
  • 11. ¿Y cómo creo templates y vistas? Los creas en el directorio src/main/resources/templates
  • 12. Spring Boot Data JPA/REST Starter ¿Como lo uso? // Data REST compile "org.springframework.boot:spring-boot-starter-data-rest" // Data JPA compile "org.springframework.boot:spring-boot-starter-data-jpa" ¿Que es lo que importa por ti? ● Spring HATEOAS ● Spring Data REST WebMVC ● Hibernate Entity Manager ● Spring ORM ● Spring JDBC
  • 13. ¿Y cómo empiezo? Habilitas la auto- configuración: Creas tus clases modelo y entonces...
  • 15. OK, pero entonces ¿Como ejecuto la aplicacion?
  • 16. Y ahora solo usas tu explorador
  • 17. Finalmente... Twitter: @eldermael ← Aqui public micro rants Github: ElderMael ← Aqui subo cosas El código fuente se encuentra en: https://github.com/ElderMael/spring-boot-talk Nota final: Google Docs es horrible para crear presentaciones D: