Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Mvc 1.0 - by Example @JEEConf 2015
Search
ivargrimstad
May 22, 2015
Programming
2.1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Mvc 1.0 - by Example @JEEConf 2015
Overview, introduction and code samples. Includes links and how to get started.
ivargrimstad
May 22, 2015
More Decks by ivargrimstad
See All by ivargrimstad
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
9
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
10
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
55
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
350
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
920
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
850
Jakarta EE Challenge at Code the Continuum
ivargrimstad
0
790
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
1.1k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
1.2k
Other Decks in Programming
See All in Programming
Are APIs Still Relevant in the AI Era?
soyuka
0
170
新卒PdEのリアル
ryu1013
1
500
AWS DevOps Agentで インシデント対応をAIに任せたい
honmarkhunt
7
2.9k
大喜利で理解するLLM as a Judge / Understanding LLM-as-a-Judge through Ogiri
rockname
0
100
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
220
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
6
1.9k
A2UI for Android: Safely Rendering AI-Generated UI with Jetpack Compose - DroidKaigi 2026
itsmedreamwalker
0
130
技術的負債の返済は、AI時代の複利で効く投資 — 経営としての意思決定とその遂行
curekoshimizu
0
1.2k
型解析で実現する Go の言語内 DSL / Conference に Go! タイムテーブルの歩き方 for Gophers
mazrean
0
150
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
170
AGENTS.md Is Not Enough:Build Skills, Don't Download Them
lx_t
0
110
cdk deploy JawsSonic #MARATHONしながらAWSリソースをデプロイしてみよう
akihisaikeda
2
130
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Abbi's Birthday
coloredviolet
4
10k
How to make the Groovebox
asonas
2
2.4k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
[SF Ruby Conf 2025] Rails X
palkan
3
1.4k
エンジニアに許された特別な時間の終わり
watany
109
250k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
480
Documentation Writing (for coders)
carmenintech
77
5.5k
Transcript
@ivar_grimstad JEEConf 2015 MVC 1.0 - by Example Ivar Grimstad
@ivar_grimstad JEEConf 2015 Background JSR 371 - MVC for Java
EE 8 Demo Summary
@ivar_grimstad JEEConf 2015 @ivar_grimstad https://github.com/ivargrimstad https://www.linkedin.com/in/ivargrimstad http://lanyrd.com/profile/ivargrimstad/
@ivar_grimstad JEEConf 2015 Background
@ivar_grimstad JEEConf 2015 What?
@ivar_grimstad JEEConf 2015 Controller Model View Request Update Update Get
MVC Pattern
@ivar_grimstad JEEConf 2015 Component-based MVC
@ivar_grimstad JEEConf 2015 Controller Model View Request Update Update Get
Component-based MVC
@ivar_grimstad JEEConf 2015 Action-based MVC
@ivar_grimstad JEEConf 2015 Controller Model View Request Update Update Get
Action-based MVC
@ivar_grimstad JEEConf 2015 Why?
@ivar_grimstad JEEConf 2015 https://java.net/downloads/javaee-spec/JavaEE8_Community_Survey_Results.pdf
@ivar_grimstad JEEConf 2015 http://glassfish.org/survey
@ivar_grimstad JEEConf 2015 How?
@ivar_grimstad JEEConf 2015 JSR 371 MVC for Java EE 8
@ivar_grimstad JEEConf 2015 Action-based MVC
@ivar_grimstad JEEConf 2015 Existing Java EE Technologies
@ivar_grimstad JEEConf 2015 JSR 371 Expert Group
@ivar_grimstad JEEConf 2015 Key Decisions
@ivar_grimstad JEEConf 2015 Key Decisions
@ivar_grimstad JEEConf 2015 Build MVC 1.0 on top of JAX-RS
@ivar_grimstad JEEConf 2015 Show me the CODE !
@ivar_grimstad JEEConf 2015 Controllers
@ivar_grimstad JEEConf 2015 public class HelloController { }
@ivar_grimstad JEEConf 2015 @Path(“hello”) public class HelloController { }
@ivar_grimstad JEEConf 2015 @Controller @Path(“hello”) public class HelloController {
}
@ivar_grimstad JEEConf 2015 @Controller @Path( public } Views
@ivar_grimstad JEEConf 2015 @Controller @Path(“hello”) public class HelloController {
}
@ivar_grimstad JEEConf 2015 @Controller @Path(“hello”) public class HelloController { @GET
public String hello() { return “hello.jsp”; } }
@ivar_grimstad JEEConf 2015 @Controller @Path(“hello”) public class HelloController { @GET
public Viewable hello() { return new Viewable(“hello.jsp”); } }
@ivar_grimstad JEEConf 2015 @Controller @Path(“hello”) public class HelloController { @GET
public Response hello() { return Response.status(OK) .entity(“hello.jsp”) .build(); } }
@ivar_grimstad JEEConf 2015 @Controller @Path(“hello”) public class HelloController { @View(“hello.jsp”)
@GET public void hello() { } }
@ivar_grimstad JEEConf 2015 @View(“hello.jsp”) @Controller @Path(“hello”) public class HelloController {
@GET public void hello() { } }
@ivar_grimstad JEEConf 2015 Models using CDI
@ivar_grimstad JEEConf 2015 @View(“hello.jsp”) @Controller @Path(“hello”) public class HelloController {
@GET public void hello() { } }
@ivar_grimstad JEEConf 2015 @Named(“greeting”) @RequestScoped public class Greeting { private
String message; public void setMessage(String message) { this.message = message; } public String getMessage() { return message; } }
@ivar_grimstad JEEConf 2015 @View(“hello.jsp”) @Controller @Path(“hello”) public class HelloController {
@Inject private Greeting greeting; @GET public void hello() { greeting.setMessage(“Hello Kiev”); } }
@ivar_grimstad JEEConf 2015 <%@page contentType=“text/html" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head>
<title>MVC 1.0 Hello Demo</title> </head> <body> <h1>Hello ${greeting.message}</h1> </body> </html>
@ivar_grimstad JEEConf 2015 @View(“hello.jsp”) @Controller @Path(“hello”) public class HelloController {
@GET public void hello() { } }
@ivar_grimstad JEEConf 2015 @View(“hello.jsp”) @Controller @Path(“hello”) public class HelloController {
@Inject private Models model; @GET public void hello() { model.put(“message”,“Hello Kiev”); } }
@ivar_grimstad JEEConf 2015 <%@page contentType=“text/html" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head>
<title>MVC 1.0 Hello Demo</title> </head> <body> <h1>Hello ${message}</h1> </body> </html>
@ivar_grimstad JEEConf 2015 Demo
@ivar_grimstad JEEConf 2015 Create MVC Project Advanced Example Comparison with
Spring MVC
@ivar_grimstad JEEConf 2015 Road Map
@ivar_grimstad JEEConf 2015 Q3 2014 Expert Group formed Q1 2015
Early Draft Q3 2015 Public Review Q1 2016 Proposed Final Draft Q3 2016 Final Release
@ivar_grimstad JEEConf 2015 Reference Implementation https://ozark.java.net
@ivar_grimstad JEEConf 2015 Summary
@ivar_grimstad JEEConf 2015 Existing Java EE Technologies CDI, JAX-RS, Bean
Validation New Annotations @Controller @View Community Support Summary
@ivar_grimstad JEEConf 2015 Getting Started Specification https://mvc-spec.java.net Reference Implementation https://ozark.java.net
@ivar_grimstad JEEConf 2015 Demo Source https://github.com/ivargrimstad/mvc-samples https://github.com/ivargrimstad/javaee-mvc-spring
@ivar_grimstad JEEConf 2015 www.cybercom.com