spring boot

Post on 14-Jun-2015

652 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

This present

TRANSCRIPT

Spring Boot

Eberhard Wolff Freelancer / Trainer

Head Technology Advisory Board adesso http://ewolff.com

Eberhard Wolff - @ewolff

What does it take to implement a

Java Web Application?

Eberhard Wolff - @ewolff

Any non-Java guys in the room?

Eberhard Wolff - @ewolff

Java

AppServer

Libraries

Build

WAR

#SRSLY?

Enter Spring Boot

Spring Boot Demo

Eberhard Wolff - @ewolff

Spring Boot•  Build much easier •  Supports Gradle & Ant, too •  Not limited to simple application •  Can add any other library

•  Application much easier to test, debug etc

•  Simple code

Let‘s add Spring Data

JPA!

Eberhard Wolff - @ewolff

Spring Data JPA•  Makes implementation of

repositories trivial

•  Just provide an interface

•  Needs JPA infrastructure of course

Spring Boot + Spring Data JPA Demo

Eberhard Wolff - @ewolff

Behind the Scenes•  DataSource for HSQL created •  JPA infrastructure created •  Thymeleaf infrastructure created •  Can also use JSP, Velocity,

Freemarker, Groovy templates •  How does it work? •  Convention over configuration

Eberhard Wolff - @ewolff

Spring Boot•  Creates sensible infrastructure

defaults •  i.e. DataSource if HSQL is on the

classpath •  Done by *AutoConfiguration classes

Auto Configuration

Demo

Eberhard Wolff - @ewolff

Spring Boot Starter•  Support for specific frameworks

amqp

aop

batch

data-jpa data-mongodb data-rest

integration

jdbc mobile

redis

security test web websocket

actuator remote-shell

jetty tomcat

log4j logback

web services

social

elasticsearch Solr

Flyway Liquibase Gemfire

Spring Boot for Dev

Eberhard Wolff - @ewolff

Dev•  Turn Around

•  Thymeleaf Templates can be changed on the fly

•  …same with class files •  Spring Loaded makes reloading

more powerful

Spring Bootfor DevDemo

Spring Boot for Ops

Eberhard Wolff - @ewolff

CRaSH Shell•  Ever ssh’d into your application? •  Enter CRaSH •  External library integrated into

Spring Boot •  Alternative approach to operations

Spring BootCRaSH Demo

Eberhard Wolff - @ewolff

Actuator•  Provide information about the

application •  Via http / JSON •  Can be evaluated by monitoring

tools etc. •  Another alternative approach to

monitoring

Spring BootActuator

Demo

Eberhard Wolff - @ewolff

Deploy•  Just package everything in an

executable JAR •  …or a WAR

•  Based on Maven or Gradle

•  Build in configuration (YAML, properties etc.)

Spring BootDeploy Demo

Eberhard Wolff - @ewolff

What‘s next? Spring Cloud•  Technologies for Micro Services •  E.g. Configuration •  Resilience •  Netflix stack •  Cloud Bus •  Cloud Security •  Based on Spring Boot

Eberhard Wolff - @ewolff

Spring Boot 1.2•  Spring 4.1

•  JTA

•  JNDI for DataSources / JMS

•  Stay tuned

Eberhard Wolff - @ewolff

Conclusion•  Easy to start •  Can add libraries and features as

needed •  Dev: Quick turn around •  Ops: Integrated monitoring •  Ops: Easy deployment

Eberhard Wolff - @ewolff

Conclusion•  Easy to start •  Can add libraries and features as

needed •  Dev: Quick turn around •  Ops: Integrated monitoring •  Ops: Easy deployment •  Didn’t show Groovy support

Eberhard Wolff - @ewolff

Linkshttp://start.spring.io/ http://projects.spring.io/spring-boot/ https://github.com/spring-projects/spring-boot https://github.com/ewolff/spring-boot-demos https://spring.io/guides/gs/spring-boot/ https://spring.io/guides/gs/actuator-service/ https://spring.io/guides/gs/spring-boot-cli-and-js/

Eberhard Wolff - @ewolff

Thank You!!

top related