Spark Java
APLICACIONES WEB LIGERAS Y RÁPIDAS CON JAVA
 Pesado
 Lento
 Antiguo
 Complejo
 …
Cómo percibimos Java
Multitud de Tecnologías Java:
 JSF, Struts 1/2, Grails, Vaadin,
Spring MVC.
 Spring.
 Hibernate, OpenJPA, Ibatis, etc.
 Axis, Axis 2, SpringWS, Apache CXF,
etc.
 Apache Tomcat, Jboss, Glassfish,
Jetty, etc.
 …
¿Pero realmente es así?
Tecnologías utilizadas:
 Maven 3.3.3
 JSF 2.3.0-m02
 Tomcat 8
 JDK 1.8
Hola mundo en JSF
Tecnologías utilizadas:
 Gradle 2.10
 Spring 4.1.6.RELEASE
 Tomcat 7 or Jetty 9
 JDK 1.8
 Logback 1.1.3
 Boostrap 3
Hola mundo en Spring MVC
Referencia: http://www.mkyong.com/spring-
mvc/gradle-spring-4-mvc-hello-world-
example-annotation/
Tecnologías utilizadas:
Hola mundo en Grails
• Grails version: 3.0.11
• Groovy version: 2.4.5
• JVM version: 1.8
• eventBus: 3.0.11
• restResponder: 3.0.11
• dataBinding: 3.0.11
• I18n: 3.0.11
• controllersAsync: 3.0.11
• Hibernate: 4.3.10.7
• Filters: 3.0.11
• groovyPages: 3.0.11
• Services: 3.0.11
• Scaffolding: 3.1.2
• …
Referencia: https://grails.org/single-page-documentation.html
Java no es más que una
herramienta para
construir aplicaciones.
Los frameworks
anteriores facilitan el
desarrollo de
aplicaciones Fullstack
porque proporcionan la
tecnología base estándar.
¿Y esto es necesariamente malo?
Los frameworks clásicos incluyen
funcionalidades, tecnologías y capas
que facilitan el desarrollo para
aplicaciones complejas.
Las aplicaciones pequeñas
pretenden ser ligeras y sencillas, por
lo que no necesitan tantas
funcionalidades y capas.
¿Y para aplicaciones pequeñas?
Spark es un Framework pequeño, basado en Sinatra, para la
creación de aplicaciones web con Java 8 de manera rápida y
sencilla.
Objetivos:
 Permitir a los desarrolladores de Java crear de manera
rápida y sencilla (sin engorrosos XMLs) aplicaciones web.
 Cambiar el paradigma de anotaciones por código simple
y sencillo.
 No competir con Sinatra (ni con sus respectivos clones).
¿Qué es Spark Java?
Tecnologías utilizadas:
 Maven 3.3.3
 Spark 2.3
 Jetty 9.3.2
 JDK 1.8
Hola mundo en Spark
Referencia: http://sparkjava.com/
Encuesta de uso de Spark:
 El 57% de usuarios lo usa para proyectos personales.
 El 51% de usuarios lo utiliza para APIs REST.
 El 25% hace páginas web.
Datos de Spark
Encuesta número de usuarios/día:
 Alrededor del 80% de encuestados no han desplegado su aplicación.
 Principalmente se utiliza para aplicaciones pequeñas, con pocos usuarios.
 Aun así se puede utilizar para aplicaciones grandes.
Datos de Spark
Referencia: http://sparkjava.com/news.html#sparksurvey
Microservicio JSON con operaciones CRUD para la gestión de
usuarios:
 Post: Crear un usuario.
 Get: Consultar usuario/s.
 Put: Actualizar datos de usuario.
 Delete: Borrar usuario.
API REST con Spark
Referencia:
https://franl2p.wordpress.com/2015/10/15/microservicio-restful-con-spark-java
https://github.com/flparedes/RestfulApi
API REST con Spark - Get
Get se utiliza para recuperar datos de uno o varios usuarios.
API REST con Spark - Post
Con post se crea un nuevo usuario a partir de los datos del formulario.
API REST con Spark - Put
Put permite modificar los datos del usuario con el identificador dado.
API REST con Spark - Delete
Con delete se puede borrar el usuario con el identificador dado.
¿Preguntas?
Contacto:
GitHub: https://github.com/flparedes
Blog: https://franl2p.wordpress.com
Email: franciscoluis.paredes@gmail.com
Preguntad ahora o callad
para siempre.

Más contenido relacionado

PDF
Spring boot + spock
PPTX
Desinstalación de un programa
PPTX
Desinstalación de un programa
PPTX
Spring boot et. al. para el impaciente
PDF
Seguridad en tu startup
PPTX
Building APIs with Kotlin and Spark
PDF
Experiencias en la Implementación de la PMO - Cecilia Boggi
PDF
ROI en Tecnologias de la Informacion
Spring boot + spock
Desinstalación de un programa
Desinstalación de un programa
Spring boot et. al. para el impaciente
Seguridad en tu startup
Building APIs with Kotlin and Spark
Experiencias en la Implementación de la PMO - Cecilia Boggi
ROI en Tecnologias de la Informacion

Similar a Spark Java: Aplicaciones web ligeras y rápidas con Java, por Fran Paredes. (20)

PDF
Presentacion mvc orm
PDF
Aplicaciones en red ppt
PDF
Aplicaciones web con jakarta struts - Javier Oliver Fulguera
PDF
Spring mvc
PDF
[ES] Introducción a las Aplicaciones Web con Java
PPT
Plataforma de programación Java
DOCX
Spring framework
PDF
Manual desarrollo de aplicaciones web ii
PDF
Actualizando aplicaciones empresariales en Java desde Java 8 on premise hasta...
PDF
Guia de estudio para Oracle Certified Java EE 6 Web Component Developer
PDF
Actualizando aplicaciones empresariales en Java desde Java 8 on premise hasta...
PPT
Java para android developers
PDF
Presentación Final Master JAVA UNED 2012
PDF
Introducción Spring Framework
PDF
Frameworks J2EE
PPT
J2 Ee Para Seres Humanos Slides
DOCX
Conceptos de programación orientada a objeto
 
PPT
Introducción a la Tecnología Java
Presentacion mvc orm
Aplicaciones en red ppt
Aplicaciones web con jakarta struts - Javier Oliver Fulguera
Spring mvc
[ES] Introducción a las Aplicaciones Web con Java
Plataforma de programación Java
Spring framework
Manual desarrollo de aplicaciones web ii
Actualizando aplicaciones empresariales en Java desde Java 8 on premise hasta...
Guia de estudio para Oracle Certified Java EE 6 Web Component Developer
Actualizando aplicaciones empresariales en Java desde Java 8 on premise hasta...
Java para android developers
Presentación Final Master JAVA UNED 2012
Introducción Spring Framework
Frameworks J2EE
J2 Ee Para Seres Humanos Slides
Conceptos de programación orientada a objeto
 
Introducción a la Tecnología Java

Más de betabeers (20)

PPSX
IONIC, el framework para crear aplicaciones híbridas multiplataforma
PDF
Servicios de Gestión de Datos en la Nube - Jaime Balañá (NetApp)
PPTX
Blockchain: la revolución industrial de internet - Oscar Lage
PDF
Cloud Learning: la formación del siglo XXI - Mónica Mediavilla
PDF
Desarrollo web en Nodejs con Pillars por Chelo Quilón
PDF
La línea recta hacia el éxito - Jon Torrado - Betabeers Bilbao
PDF
6 errores a evitar si eres una startup móvil y quieres evolucionar tu app
PDF
Dev ops.continuous delivery - Ibon Landa (Plain Concepts)
PPTX
Introducción a scrum - Rodrigo Corral (Plain Concepts)
PPTX
Gestión de proyectos y consorcios internacionales - Iñigo Cañadas (GFI)
PPTX
Software de gestión Open Source - Odoo - Bakartxo Aristegi (Aizean)
PDF
Elemental, querido Watson - Caso de Uso
PDF
Buenas prácticas para la optimización web
PDF
La magia de Scrum
PDF
Programador++ por @wottam
PPTX
RaspberryPi: Tu dispositivo para IoT
PDF
Introducción al Big Data - Xabier Tranche - VIII Betabeers Bilbao 27/02/2015
PDF
PAYTPV Plataforma Integral de Cobros - VIII Betabeers Bilbao 27/02/2015
PPTX
Presentación Kbi Digital - VIII Betabeers Bilbao 27/02/2015
PDF
Timerepublik
IONIC, el framework para crear aplicaciones híbridas multiplataforma
Servicios de Gestión de Datos en la Nube - Jaime Balañá (NetApp)
Blockchain: la revolución industrial de internet - Oscar Lage
Cloud Learning: la formación del siglo XXI - Mónica Mediavilla
Desarrollo web en Nodejs con Pillars por Chelo Quilón
La línea recta hacia el éxito - Jon Torrado - Betabeers Bilbao
6 errores a evitar si eres una startup móvil y quieres evolucionar tu app
Dev ops.continuous delivery - Ibon Landa (Plain Concepts)
Introducción a scrum - Rodrigo Corral (Plain Concepts)
Gestión de proyectos y consorcios internacionales - Iñigo Cañadas (GFI)
Software de gestión Open Source - Odoo - Bakartxo Aristegi (Aizean)
Elemental, querido Watson - Caso de Uso
Buenas prácticas para la optimización web
La magia de Scrum
Programador++ por @wottam
RaspberryPi: Tu dispositivo para IoT
Introducción al Big Data - Xabier Tranche - VIII Betabeers Bilbao 27/02/2015
PAYTPV Plataforma Integral de Cobros - VIII Betabeers Bilbao 27/02/2015
Presentación Kbi Digital - VIII Betabeers Bilbao 27/02/2015
Timerepublik

Último (20)

PDF
SISTEMAS INTEGRADOS DE GESTION ISO 9/14/45
PPT
fertilidaddelsueloysudiagnstico-101013111502-phpapp02.ppt
PDF
LIBRO DE VALORIZACIÓN Y LIQUIDACIÓN .pdf
PPT
SEGURIDAD E HIGIENE INDUSTRIAL Y RRHH.ppt
PDF
Introducción a la gestión ocupacional en la psicología
PPTX
Auditoria sistema de gestión de seguridad y salud en el trabajo
PDF
Control de pérdidas Seguridad Industrial
PDF
electronica y seguridad informatica presentaciones
PDF
SEMINARIO SOLDADURA FCAW 262024ACTUALEDIT (1) (1).pdf
PDF
Uso básico del microcontrolador para medición y control - LibreTexts Español.pdf
PPTX
manufactura integrada por computadora II
PDF
Capacitación de Brigadas de Primeros Auxilios
PPTX
Presentación Johnny.pptx Maestría universidad de Chile
PDF
Manual ARIEL JGD-2 - compresor de gas para la industria
PDF
Anexo Minuta Complemento Metodologia Asignacion EnS
PPTX
CRIPTOGRAFÍA BASICA EN POWER POINT - CS
PPT
Colores y Señales de Seguridad - NOM-STPS-026.ppt
PDF
Analisis de estructuras - Jairo Uribe Escamilla.pdf
PPTX
Planeacion-de-Proyectos-de-Software.pptx
PPSX
investigacion incidentes accidentes TASC.ppsx
SISTEMAS INTEGRADOS DE GESTION ISO 9/14/45
fertilidaddelsueloysudiagnstico-101013111502-phpapp02.ppt
LIBRO DE VALORIZACIÓN Y LIQUIDACIÓN .pdf
SEGURIDAD E HIGIENE INDUSTRIAL Y RRHH.ppt
Introducción a la gestión ocupacional en la psicología
Auditoria sistema de gestión de seguridad y salud en el trabajo
Control de pérdidas Seguridad Industrial
electronica y seguridad informatica presentaciones
SEMINARIO SOLDADURA FCAW 262024ACTUALEDIT (1) (1).pdf
Uso básico del microcontrolador para medición y control - LibreTexts Español.pdf
manufactura integrada por computadora II
Capacitación de Brigadas de Primeros Auxilios
Presentación Johnny.pptx Maestría universidad de Chile
Manual ARIEL JGD-2 - compresor de gas para la industria
Anexo Minuta Complemento Metodologia Asignacion EnS
CRIPTOGRAFÍA BASICA EN POWER POINT - CS
Colores y Señales de Seguridad - NOM-STPS-026.ppt
Analisis de estructuras - Jairo Uribe Escamilla.pdf
Planeacion-de-Proyectos-de-Software.pptx
investigacion incidentes accidentes TASC.ppsx

Spark Java: Aplicaciones web ligeras y rápidas con Java, por Fran Paredes.

  • 1. Spark Java APLICACIONES WEB LIGERAS Y RÁPIDAS CON JAVA
  • 2.  Pesado  Lento  Antiguo  Complejo  … Cómo percibimos Java
  • 3. Multitud de Tecnologías Java:  JSF, Struts 1/2, Grails, Vaadin, Spring MVC.  Spring.  Hibernate, OpenJPA, Ibatis, etc.  Axis, Axis 2, SpringWS, Apache CXF, etc.  Apache Tomcat, Jboss, Glassfish, Jetty, etc.  … ¿Pero realmente es así?
  • 4. Tecnologías utilizadas:  Maven 3.3.3  JSF 2.3.0-m02  Tomcat 8  JDK 1.8 Hola mundo en JSF
  • 5. Tecnologías utilizadas:  Gradle 2.10  Spring 4.1.6.RELEASE  Tomcat 7 or Jetty 9  JDK 1.8  Logback 1.1.3  Boostrap 3 Hola mundo en Spring MVC Referencia: http://www.mkyong.com/spring- mvc/gradle-spring-4-mvc-hello-world- example-annotation/
  • 6. Tecnologías utilizadas: Hola mundo en Grails • Grails version: 3.0.11 • Groovy version: 2.4.5 • JVM version: 1.8 • eventBus: 3.0.11 • restResponder: 3.0.11 • dataBinding: 3.0.11 • I18n: 3.0.11 • controllersAsync: 3.0.11 • Hibernate: 4.3.10.7 • Filters: 3.0.11 • groovyPages: 3.0.11 • Services: 3.0.11 • Scaffolding: 3.1.2 • … Referencia: https://grails.org/single-page-documentation.html
  • 7. Java no es más que una herramienta para construir aplicaciones. Los frameworks anteriores facilitan el desarrollo de aplicaciones Fullstack porque proporcionan la tecnología base estándar. ¿Y esto es necesariamente malo?
  • 8. Los frameworks clásicos incluyen funcionalidades, tecnologías y capas que facilitan el desarrollo para aplicaciones complejas. Las aplicaciones pequeñas pretenden ser ligeras y sencillas, por lo que no necesitan tantas funcionalidades y capas. ¿Y para aplicaciones pequeñas?
  • 9. Spark es un Framework pequeño, basado en Sinatra, para la creación de aplicaciones web con Java 8 de manera rápida y sencilla. Objetivos:  Permitir a los desarrolladores de Java crear de manera rápida y sencilla (sin engorrosos XMLs) aplicaciones web.  Cambiar el paradigma de anotaciones por código simple y sencillo.  No competir con Sinatra (ni con sus respectivos clones). ¿Qué es Spark Java?
  • 10. Tecnologías utilizadas:  Maven 3.3.3  Spark 2.3  Jetty 9.3.2  JDK 1.8 Hola mundo en Spark Referencia: http://sparkjava.com/
  • 11. Encuesta de uso de Spark:  El 57% de usuarios lo usa para proyectos personales.  El 51% de usuarios lo utiliza para APIs REST.  El 25% hace páginas web. Datos de Spark
  • 12. Encuesta número de usuarios/día:  Alrededor del 80% de encuestados no han desplegado su aplicación.  Principalmente se utiliza para aplicaciones pequeñas, con pocos usuarios.  Aun así se puede utilizar para aplicaciones grandes. Datos de Spark Referencia: http://sparkjava.com/news.html#sparksurvey
  • 13. Microservicio JSON con operaciones CRUD para la gestión de usuarios:  Post: Crear un usuario.  Get: Consultar usuario/s.  Put: Actualizar datos de usuario.  Delete: Borrar usuario. API REST con Spark Referencia: https://franl2p.wordpress.com/2015/10/15/microservicio-restful-con-spark-java https://github.com/flparedes/RestfulApi
  • 14. API REST con Spark - Get Get se utiliza para recuperar datos de uno o varios usuarios.
  • 15. API REST con Spark - Post Con post se crea un nuevo usuario a partir de los datos del formulario.
  • 16. API REST con Spark - Put Put permite modificar los datos del usuario con el identificador dado.
  • 17. API REST con Spark - Delete Con delete se puede borrar el usuario con el identificador dado.