Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Spring MVC
Search
Gerrit Meier
September 11, 2014
Programming
1
200
Spring MVC
Spring MVC as a part of the Spring ecosystem.
Gerrit Meier
September 11, 2014
Tweet
Share
More Decks by Gerrit Meier
See All by Gerrit Meier
Neo4j for Java developers
meistermeier
1
140
Work harder not smarter
meistermeier
0
120
Better Testing with Testcontainers
meistermeier
0
98
What the Graph?
meistermeier
1
1.3k
Beziehungsmanagement mit Spring Data Neo4j
meistermeier
1
85
Time to Graph Up with Spring Data Neo4j
meistermeier
1
1.5k
Thymeleaf - Eine Template-Engine für Entwickler und Designer
meistermeier
0
650
Wie soll man das denn nutzen? - Spring REST Docs
meistermeier
0
180
MVC 1.0
meistermeier
0
140
Other Decks in Programming
See All in Programming
ViewファーストなRailsアプリ開発のたのしさ
sugiwe
0
420
Developing static sites with Ruby
okuramasafumi
0
200
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
1
490
dotfiles 式年遷宮 令和最新版
masawada
1
700
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
240
[堅牢.py #1] テストを書かない研究者に送る、最初にテストを書く実験コード入門 / Let's start your ML project by writing tests
shunk031
12
7k
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
160
ハイパーメディア駆動アプリケーションとIslandアーキテクチャ: htmxによるWebアプリケーション開発と動的UIの局所的適用
nowaki28
0
360
AIコーディングエージェント(skywork)
kondai24
0
130
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
37
23k
【CA.ai #3】ワークフローから見直すAIエージェント — 必要な場面と“選ばない”判断
satoaoaka
0
230
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
110
Featured
See All Featured
Fireside Chat
paigeccino
41
3.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.2k
Navigating Team Friction
lara
191
16k
For a Future-Friendly Web
brad_frost
180
10k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
Thoughts on Productivity
jonyablonski
73
5k
Six Lessons from altMBA
skipperchong
29
4.1k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Transcript
Spring MVC
Gerrit Meier T-Systems on site services GmbH @meistermeier +GerritMeier
Spring
Context Data Social Integration … WebMVC
Context Data Social Integration … WebMVC
Spring Context
Context Tourist sleep fun transport take my money
Context Tourist sleep fun transport take my money Hotel ThemePark
ShoppingMall Shuttle
Context Tourist sleep fun transport take my money Camping WalkInThePark
GarageSale Bike
Context Demo
Spring Data
Data http://
Data Demo
Spring MVC
DispatcherServlet Controller View(Template) WebMVC request response delegate render response rendered
response attach data
DispatcherServlet Controller View(Template) WebMVC request response delegate attach data render
response rendered response
DispatcherServlet Controller View(Template) WebMVC request response delegate render response rendered
response attach data
DispatcherServlet Controller View(Template) WebMVC request response delegate render response rendered
response attach data model
WebMVC @Controller public class UserController { ! @RequestMapping("/users") public String
listUsers() { […] return "viewName"; } } http://server/myApp/users
WebMVC @Controller @RequestMapping("/users") public class UserController { ! @RequestMapping public
String listUsers() { […] return "viewName"; } } http://server/myApp/users
WebMVC @Controller public class UserController { ! @RequestMapping("/users") public String
listUsers( @RequestParam("filter") String filter) { […] return "viewName"; } } http://server/myApp/users?filter=hans
WebMVC @RequestMapping( value = "/users/{id}") public String showUser( @PathVariable("id") Long
id){ […] return "viewName"; } http://server/myApp/users/1
WebMVC @RequestMapping( value = "/users/{id}", method = RequestMethod.GET) public String
showUser( @PathVariable("id") Long id){ […] return "viewName"; } http://server/myApp/users/1
WebMVC @RequestMapping(method = RequestMethod.POST) public String save(…) { […] return
"viewName"; } POST http://server/myApp/users
WebMVC @RequestMapping(method = RequestMethod.POST) public String save( @Valid User user,
BindingResult bindingResult) { […] return "viewName"; } POST http://server/myApp/users
WebMVC Accept: text/html ! ! ! ! ! Accept: application/json
/users { users: [ {name: “Hans“} ] } User List ! - Hans http://…
https://www.flickr.com/photos/roshanyadama/11915951346 https://creativecommons.org/licenses/by/2.0/
WebMVC https://www.flickr.com/photos/mistermoss/3134331944 https://creativecommons.org/licenses/by/2.0/
WebMVC
WebMVC https://www.flickr.com/photos/bilal-kamoon/6835060992 https://creativecommons.org/licenses/by/2.0/