Vaadin and Spring at Devoxx UK 2015

Post on 13-Aug-2015

531 views 3 download

Transcript of Vaadin and Spring at Devoxx UK 2015

“good” = “awesome”“Honesty - Invented in Finland” https://vimeo.com/113102755

How to rock your web apps

with Spring and Vaadin

what isVaadin

all about??

Make building (good)

webapplications

easy

Web application layers

JavaScriptJava to

JavaScriptWeb

serverBackend

server

required optional optionalrequired

RPC

optional

Vaadin

required optionalrequired

GW

T

requiredrequiredJS

requiredrequired

required required

TextField name = new TextField("Name");Button greetButton = new Button("Greet"); greetButton.addClickListener(e -> { Notification.show("Hi "+name.getValue());});

Vaadin Java code:

525

Vaadin andSpring?

Build beautiful web user interfaces.

Single page application easily.

Code in Java on the server-side.

Easy binding to Spring data sources.

Vaadin

for Spring Applications?

One-step with Spring Boot.

IoC for modularity and testability.

Cloud-ready applications.

Full set of Spring libraries available.

Spring

for Vaadin Applications?

@SpringBootApplicationpublic class DemoApplication {

public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); }

@Service public static class MyService {

public String sayHi() { return "Hello Spring Initializr!"; }

}

@Theme("valo") @SpringUI(path = "") public static class VaadinUI extends UI {

@Autowired MyService myService;

@Override protected void init(VaadinRequest request) { setContent(new Label(myService.sayHi())); }

}}

curl start.spring.iodemo}>|

curl https://start.spring.io/starter.zip \ -d type=maven-project -d dependencies=vaadin,data-jpa,data-rest,h2,social-twitter \ -d baseDir=vaadin-demo -d artifactId=vaadin-demo -d javaVersion=1.8 -o vaadin-demo.zip

JPA

Spring Data

Spring Boot

curl -i -X POST -H "Content-Type:application/json" -d '{ "lat" : "60.205654", "lon" : "21.8838", "speed" : "6.5", "timestamp" : "2015-04-28'T'16:50:20Z" }' http://localhost:8080/gps

REST

/JSO

N

GPSData

Backend Frontend

Vaadin

github.com/samie/

spring-vaadin-demo

vaadin.com/spring

Springfor Vaadin

Vaadinfor Spring Applications