Slide 1

Slide 1 text

Spring MVC

Slide 2

Slide 2 text

Gerrit Meier T-Systems on site services GmbH @meistermeier +GerritMeier

Slide 3

Slide 3 text

Spring

Slide 4

Slide 4 text

Context Data Social Integration … WebMVC

Slide 5

Slide 5 text

Context Data Social Integration … WebMVC

Slide 6

Slide 6 text

Spring Context

Slide 7

Slide 7 text

Context Tourist sleep fun transport take my money

Slide 8

Slide 8 text

Context Tourist sleep fun transport take my money Hotel ThemePark ShoppingMall Shuttle

Slide 9

Slide 9 text

Context Tourist sleep fun transport take my money Camping WalkInThePark GarageSale Bike

Slide 10

Slide 10 text

Context Demo

Slide 11

Slide 11 text

Spring Data

Slide 12

Slide 12 text

Data http://

Slide 13

Slide 13 text

Data Demo

Slide 14

Slide 14 text

Spring MVC

Slide 15

Slide 15 text

DispatcherServlet Controller View(Template) WebMVC request response delegate render response rendered response attach data

Slide 16

Slide 16 text

DispatcherServlet Controller View(Template) WebMVC request response delegate attach data render response rendered response

Slide 17

Slide 17 text

DispatcherServlet Controller View(Template) WebMVC request response delegate render response rendered response attach data

Slide 18

Slide 18 text

DispatcherServlet Controller View(Template) WebMVC request response delegate render response rendered response attach data model

Slide 19

Slide 19 text

WebMVC @Controller public class UserController { ! @RequestMapping("/users") public String listUsers() { […] return "viewName"; } } http://server/myApp/users

Slide 20

Slide 20 text

WebMVC @Controller @RequestMapping("/users") public class UserController { ! @RequestMapping public String listUsers() { […] return "viewName"; } } http://server/myApp/users

Slide 21

Slide 21 text

WebMVC @Controller public class UserController { ! @RequestMapping("/users") public String listUsers( @RequestParam("filter") String filter) { […] return "viewName"; } } http://server/myApp/users?filter=hans

Slide 22

Slide 22 text

WebMVC @RequestMapping( value = "/users/{id}") public String showUser( @PathVariable("id") Long id){ […] return "viewName"; } http://server/myApp/users/1

Slide 23

Slide 23 text

WebMVC @RequestMapping( value = "/users/{id}", method = RequestMethod.GET) public String showUser( @PathVariable("id") Long id){ […] return "viewName"; } http://server/myApp/users/1

Slide 24

Slide 24 text

WebMVC @RequestMapping(method = RequestMethod.POST) public String save(…) { […] return "viewName"; } POST http://server/myApp/users

Slide 25

Slide 25 text

WebMVC @RequestMapping(method = RequestMethod.POST) public String save( @Valid User user, BindingResult bindingResult) { […] return "viewName"; } POST http://server/myApp/users

Slide 26

Slide 26 text

WebMVC Accept: text/html ! ! ! ! ! Accept: application/json /users { users: [ {name: “Hans“} ] } User List ! - Hans http://…

Slide 27

Slide 27 text

https://www.flickr.com/photos/roshanyadama/11915951346 https://creativecommons.org/licenses/by/2.0/

Slide 28

Slide 28 text

WebMVC https://www.flickr.com/photos/mistermoss/3134331944 https://creativecommons.org/licenses/by/2.0/

Slide 29

Slide 29 text

WebMVC

Slide 30

Slide 30 text

WebMVC https://www.flickr.com/photos/bilal-kamoon/6835060992 https://creativecommons.org/licenses/by/2.0/