Upload
Download free for 30 days
Login
Submit search
JavaOne 2015 報告会 @ 東京 「About MVC 1.0 & JSON-P」
5 likes
7,338 views
Hiroyuki Ohnaka
2015/11/14 JavaOne 2015 報告会 @ 東京
Software
Read more
1 of 44
Download now
Downloaded 23 times
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
More Related Content
PPTX
JavaOne2015報告会 Java EE アップデート #j1jp
Norito Agetsuma
PPTX
Java EE8 Report
Norito Agetsuma
PPTX
Java EE パフォーマンスTips #glassfish_jp
Norito Agetsuma
PDF
JavaOne 2015 JDK Update (Jigsaw) #j1jp
Yuji Kubota
PDF
CDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4c
Norito Agetsuma
PDF
Lt agetsuma 拡大するcdi
Norito Agetsuma
PPTX
Jsf アプリ作ったった
Oda Shinsuke
PDF
WildFly Swarmではじめる「パーツとしてのJavaEE」
Hiroaki NAKADA
JavaOne2015報告会 Java EE アップデート #j1jp
Norito Agetsuma
Java EE8 Report
Norito Agetsuma
Java EE パフォーマンスTips #glassfish_jp
Norito Agetsuma
JavaOne 2015 JDK Update (Jigsaw) #j1jp
Yuji Kubota
CDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4c
Norito Agetsuma
Lt agetsuma 拡大するcdi
Norito Agetsuma
Jsf アプリ作ったった
Oda Shinsuke
WildFly Swarmではじめる「パーツとしてのJavaEE」
Hiroaki NAKADA
What's hot
(18)
PDF
Advanced database monitoring in modern java
Chihiro Ito
PDF
WildFly Swarm - Rightsize Your Java EE Apps
Yoshimasa Tanabe
PDF
Javaアプリケーションサーバ 構築・運用の勘所
Takahiro YAMADA
PPTX
はじめてのJPA
kawaba
PDF
Nashorn in the future (Japanese)
Logico
PDF
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側
賢 秋穂
PDF
Java Batch 仕様 (Public Review時点)
Norito Agetsuma
PDF
MVC 1.0 JSR-371を通してAdopt a JSRに知ろう #jjug_ccc #ccc_r57
Toshiaki Maki
PDF
Introduction to JShell: the Java REPL Tool #jjug_ccc #ccc_ab4
bitter_fox
PPTX
Seasar2で作った俺たちのサービスの今
Koichi Sakata
PDF
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうか
Chihiro Ito
PPT
Java9新機能概要
HonMarkHunt
PDF
10のJava9で変わるJava8の嫌なとこ!
bitter_fox
PDF
Java EE 再入門
minazou67
PDF
Java SE 再入門
minazou67
PDF
Prepare for Java 9 #jjug
Yuji Kubota
PDF
次世代Webコンテナ Undertowについて
Yoshimasa Tanabe
PDF
これからのNashorn
Logico
Advanced database monitoring in modern java
Chihiro Ito
WildFly Swarm - Rightsize Your Java EE Apps
Yoshimasa Tanabe
Javaアプリケーションサーバ 構築・運用の勘所
Takahiro YAMADA
はじめてのJPA
kawaba
Nashorn in the future (Japanese)
Logico
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側
賢 秋穂
Java Batch 仕様 (Public Review時点)
Norito Agetsuma
MVC 1.0 JSR-371を通してAdopt a JSRに知ろう #jjug_ccc #ccc_r57
Toshiaki Maki
Introduction to JShell: the Java REPL Tool #jjug_ccc #ccc_ab4
bitter_fox
Seasar2で作った俺たちのサービスの今
Koichi Sakata
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうか
Chihiro Ito
Java9新機能概要
HonMarkHunt
10のJava9で変わるJava8の嫌なとこ!
bitter_fox
Java EE 再入門
minazou67
Java SE 再入門
minazou67
Prepare for Java 9 #jjug
Yuji Kubota
次世代Webコンテナ Undertowについて
Yoshimasa Tanabe
これからのNashorn
Logico
Ad
Viewers also liked
(20)
PPTX
JSON-B for CZJUG
Dmitry Kornilov
PDF
いまさら聞けないJSONPのまとめ
Yujiro Araki
PDF
Himotoki: A type-safe JSON decoding library #関モバ
Syo Ikeda
PDF
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
Hiroyuki Ohnaka
PDF
ObjectMapperでJSONマッピング
Syo Ikeda
PPTX
JSON Support in Java EE 8
Dmitry Kornilov
PDF
Java one 2015 [con3339]
Arshal Ameen
PPTX
Adopt-a-JSR session (JSON-B/P)
Dmitry Kornilov
PDF
JavaOne感想&技術トレンド紹介 - JavaOne2015報告会
Yusuke Suzuki
PDF
Javaのプログラムはどうやって動いているの? GC編
Yuichi Sakuraba
PDF
JSONBはPostgreSQL9.5でいかに改善されたのか
NTT DATA OSS Professional Services
PDF
「TDDはじめて物語」 #tddbc
Hiroyuki Ohnaka
PDF
実録Blue-Green Deployment導入記
Hiroyuki Ohnaka
PDF
Java EE 8 - February 2017 update
David Delabassee
PDF
JavaOne 2014 BOF4241 What's Next for JSF?
Edward Burns
PDF
What's next for Java API for WebSocket (JSR 356)
Pavel Bucek
PPTX
תוצאות שאלון עמדות מנהלי שיווק מצייצים - אירוע קורנפלקס תלמה/יוניליוור
metzaitzim
PPT
El preescolar desde adentro
gracielalunac
DOC
Sven Mary trekt financiële situatie kantoor bijna recht
Thierry Debels
PDF
Internet Marketing Trends 2007
Linda Girard
JSON-B for CZJUG
Dmitry Kornilov
いまさら聞けないJSONPのまとめ
Yujiro Araki
Himotoki: A type-safe JSON decoding library #関モバ
Syo Ikeda
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
Hiroyuki Ohnaka
ObjectMapperでJSONマッピング
Syo Ikeda
JSON Support in Java EE 8
Dmitry Kornilov
Java one 2015 [con3339]
Arshal Ameen
Adopt-a-JSR session (JSON-B/P)
Dmitry Kornilov
JavaOne感想&技術トレンド紹介 - JavaOne2015報告会
Yusuke Suzuki
Javaのプログラムはどうやって動いているの? GC編
Yuichi Sakuraba
JSONBはPostgreSQL9.5でいかに改善されたのか
NTT DATA OSS Professional Services
「TDDはじめて物語」 #tddbc
Hiroyuki Ohnaka
実録Blue-Green Deployment導入記
Hiroyuki Ohnaka
Java EE 8 - February 2017 update
David Delabassee
JavaOne 2014 BOF4241 What's Next for JSF?
Edward Burns
What's next for Java API for WebSocket (JSR 356)
Pavel Bucek
תוצאות שאלון עמדות מנהלי שיווק מצייצים - אירוע קורנפלקס תלמה/יוניליוור
metzaitzim
El preescolar desde adentro
gracielalunac
Sven Mary trekt financiële situatie kantoor bijna recht
Thierry Debels
Internet Marketing Trends 2007
Linda Girard
Ad
Similar to JavaOne 2015 報告会 @ 東京 「About MVC 1.0 & JSON-P」
(20)
PPT
Spring mvc
Ryo Asai
PDF
Javaで1から10まで書いた話(sanitized)
Tokuhiro Matsuno
PDF
Introduction for Browser Side MVC
Ryunosuke SATO
PDF
SpringOne 2GX 2014 参加報告 & Spring 4.1について #jsug
Toshiaki Maki
PDF
【Spring fest 2019】徹底解剖Spring MVCアーキテクチャー
ssuser070fa9
PDF
Spring Frameworkの今 (2013年版) #jjug_ccc #ccc_r17 #springframework
Toshiaki Maki
PDF
ASP.NET MVC と jQuery で実践する標準志向 Web 開発
Akira Inoue
PPTX
Spring I/O 2015 報告
Takuya Iwatsuka
PPTX
今こそ知りたいSpring Web(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
PPTX
Clojureの世界と実際のWeb開発
Tsutomu Yano
PDF
JavaOne2015報告またはこれからのJava
なおき きしだ
PDF
RESTful開発フロントエンド編(SPA・AltJS・フレームワーク)
K Tsukada
PDF
GUI アプリケーションにおける MVC
Yu Nobuoka
KEY
関ジャバ JavaOne Tokyo 2012報告会
Koichi Sakata
PDF
Using Ext Direct with SenchaTouch2
久司 中村
PDF
ADRという考えを取り入れてみて
infinite_loop
PDF
JSer Class #3
mizuky fujitani
PDF
BPStudy20121221
Shinichiro Takezaki
PDF
Spring Framework ふりかえりと4.3新機能
kimulla
PDF
あの日見たMVCを僕たちはまだ知らない for RoR
shinnosuke kugimiya
Spring mvc
Ryo Asai
Javaで1から10まで書いた話(sanitized)
Tokuhiro Matsuno
Introduction for Browser Side MVC
Ryunosuke SATO
SpringOne 2GX 2014 参加報告 & Spring 4.1について #jsug
Toshiaki Maki
【Spring fest 2019】徹底解剖Spring MVCアーキテクチャー
ssuser070fa9
Spring Frameworkの今 (2013年版) #jjug_ccc #ccc_r17 #springframework
Toshiaki Maki
ASP.NET MVC と jQuery で実践する標準志向 Web 開発
Akira Inoue
Spring I/O 2015 報告
Takuya Iwatsuka
今こそ知りたいSpring Web(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
Clojureの世界と実際のWeb開発
Tsutomu Yano
JavaOne2015報告またはこれからのJava
なおき きしだ
RESTful開発フロントエンド編(SPA・AltJS・フレームワーク)
K Tsukada
GUI アプリケーションにおける MVC
Yu Nobuoka
関ジャバ JavaOne Tokyo 2012報告会
Koichi Sakata
Using Ext Direct with SenchaTouch2
久司 中村
ADRという考えを取り入れてみて
infinite_loop
JSer Class #3
mizuky fujitani
BPStudy20121221
Shinichiro Takezaki
Spring Framework ふりかえりと4.3新機能
kimulla
あの日見たMVCを僕たちはまだ知らない for RoR
shinnosuke kugimiya
More from Hiroyuki Ohnaka
(20)
PDF
remote Docker over SSHが熱い
Hiroyuki Ohnaka
PDF
VSCode Remote Container & GitHub Codespacesで拓く次世代のJava開発体験
Hiroyuki Ohnaka
PDF
Remote Development with Visual Studio Code & A clean dev env, working every ...
Hiroyuki Ohnaka
PDF
ChefとItamaeをニコイチしてAnsibleにマイグレーションした話
Hiroyuki Ohnaka
PDF
「WindowsデスクトップでWeb開発 改訂版」サンプル
Hiroyuki Ohnaka
PDF
Mackerelの薄い本
Hiroyuki Ohnaka
PDF
Microsoft DocsにContributeした話
Hiroyuki Ohnaka
PDF
Azure functions+typescript
Hiroyuki Ohnaka
PDF
技術書典4 く-35「錬金術MeetUp」 Alchemist Vol.1 サンプル版
Hiroyuki Ohnaka
PDF
4/22 技術書典4 か-16「ふぃーるどのーつ」 新刊「すいーとみゅーじっく vol.5Mackerelではじめるお手軽サーバー監視」サンプル版
Hiroyuki Ohnaka
PDF
仮想通貨始めました~GethではじめるEthereum~
Hiroyuki Ohnaka
PDF
錬金術MeetUpへのお誘い
Hiroyuki Ohnaka
PDF
Mackerelではじめる お手軽サーバー監視
Hiroyuki Ohnaka
PDF
「GebとSpockではじめるシステムテスト自動化」
Hiroyuki Ohnaka
PDF
TDDはじめて物語Second Season(updated)
Hiroyuki Ohnaka
PDF
TDDはじめて物語 Second Season #tddbc
Hiroyuki Ohnaka
PDF
XP祭り2017 LT 「DevOps再考」(改題)
Hiroyuki Ohnaka
PDF
JDK9の真の目玉機能はこれだ!
Hiroyuki Ohnaka
PDF
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
Hiroyuki Ohnaka
PDF
「すいーとみゅーじっく」のできるまで
Hiroyuki Ohnaka
remote Docker over SSHが熱い
Hiroyuki Ohnaka
VSCode Remote Container & GitHub Codespacesで拓く次世代のJava開発体験
Hiroyuki Ohnaka
Remote Development with Visual Studio Code & A clean dev env, working every ...
Hiroyuki Ohnaka
ChefとItamaeをニコイチしてAnsibleにマイグレーションした話
Hiroyuki Ohnaka
「WindowsデスクトップでWeb開発 改訂版」サンプル
Hiroyuki Ohnaka
Mackerelの薄い本
Hiroyuki Ohnaka
Microsoft DocsにContributeした話
Hiroyuki Ohnaka
Azure functions+typescript
Hiroyuki Ohnaka
技術書典4 く-35「錬金術MeetUp」 Alchemist Vol.1 サンプル版
Hiroyuki Ohnaka
4/22 技術書典4 か-16「ふぃーるどのーつ」 新刊「すいーとみゅーじっく vol.5Mackerelではじめるお手軽サーバー監視」サンプル版
Hiroyuki Ohnaka
仮想通貨始めました~GethではじめるEthereum~
Hiroyuki Ohnaka
錬金術MeetUpへのお誘い
Hiroyuki Ohnaka
Mackerelではじめる お手軽サーバー監視
Hiroyuki Ohnaka
「GebとSpockではじめるシステムテスト自動化」
Hiroyuki Ohnaka
TDDはじめて物語Second Season(updated)
Hiroyuki Ohnaka
TDDはじめて物語 Second Season #tddbc
Hiroyuki Ohnaka
XP祭り2017 LT 「DevOps再考」(改題)
Hiroyuki Ohnaka
JDK9の真の目玉機能はこれだ!
Hiroyuki Ohnaka
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
Hiroyuki Ohnaka
「すいーとみゅーじっく」のできるまで
Hiroyuki Ohnaka
JavaOne 2015 報告会 @ 東京 「About MVC 1.0 & JSON-P」
1.
About MVC 1.0
& JSON-P 2015/11/14 JavaOne 2015 報告会 @ 東京 グロースエクスパートナーズ(株) 大中 浩行 Copyright© 2015 Growth xPartners, Inc. All rights reserved. Copyright© 2015 Growth xPartners, Inc. All rights reserved..
2.
今日のお題 MVC 1.0
JSON-P 1.1 (ちょこっと)JSON-B 1Copyright© 2015 Growth xPartners, Inc. All rights reserved.
3.
MVC1.0 Copyright© 2015 Growth
xPartners, Inc. All rights reserved. 2 2015/1/1
4.
MVC 1.0 actionベースのMVCフレームワーク
JSR371 • 現在のステータスはEarly Draft Release 2(EDR) リファレンス実装はozark • https://ozark.java.net/ JJUGもAdopt a JSRを通じて参加 3Copyright© 2015 Growth xPartners, Inc. All rights reserved.
5.
なぜJSFでなくMVCなのか JSFはcomponentベース MVC
1.0 は actionベース 4Copyright© 2015 Growth xPartners, Inc. All rights reserved.
6.
なぜactionベースなのか 見通しのよさ、簡便さ RESTとの親和性 5Copyright©
2015 Growth xPartners, Inc. All rights reserved.
7.
フロントエンドの流行廃りの激しさ WONTA (Write
Once, Never Touch Again) ※どうせそのうち書き直すのだから保守性は考慮にいれない、の意 定着した技術としてのサーバーサイドMVCへのニーズ 6Copyright© 2015 Growth xPartners, Inc. All rights reserved.
8.
Controller MVCのControllerはJAX-RSのresourceとして実装 ただし、semanticsには若干差異がある 7Copyright©
2015 Growth xPartners, Inc. All rights reserved.
9.
Controller 8Copyright© 2015 Growth
xPartners, Inc. All rights reserved. @Path("hello") public class HelloController { @Inject private Greeting greeting; @GET @Controller public String hello() { greeting.setMessage("Hello there!"); return "hello.jsp"; } }
10.
Controllerのバリエーション 9Copyright© 2015 Growth
xPartners, Inc. All rights reserved. @GET @Path("void") @View("hello.jsp") public void helloVoid(){ } @GET @Path("viewable") public Viewable helloViewable(){ return new Viewable("hello.jsp"); } @GET @Path("response") public Response helloResponse(){ return Response.status(Response.Status.OK).entity("hello.jsp").build(); } @GET @Path("myview") public MyView helloMyView(){ //toString returns "hello.jsp" return new MyView("hello.jsp"); }
11.
Validation Bean Validation(JSR349)ベース
Validationエラーの扱いについて • 以下の2択 ExceptionMapper<ConstraintViolationException>を実装して共通的に 処理する BindingResultをInjectionして、Controllerのメソッド内部で処理する ハンドリングの仕様がprimitiveな印象 10Copyright© 2015 Growth xPartners, Inc. All rights reserved.
12.
ExceptionMapperによるハンドリング 11Copyright© 2015 Growth
xPartners, Inc. All rights reserved. public class FormViolationMapper implements ExceptionMapper<ConstraintViolationException> { public Response toResponse(ConstraintViolationException e) { Set<ConstraintViolation<?>> set = e.getConstraintViolations(); if (!set.isEmpty()) { // fill out ErrorDataBean } return Response.status(Response.Status.BAD_REQUEST) .entity("error.jsp").build(); } }
13.
Controllerによるハンドリング 12Copyright© 2015 Growth
xPartners, Inc. All rights reserved. @Path("form") @Controller public class FormController { @Inject private BindingResult br; @POST @ValidateOnExecution(type = ExecutableType.NONE) public Response formPost(@Valid @BeanParam FormDataBean f) { if (br.isFailed()) { return Response.status(Response.Status.BAD_REQUEST) .entity("error.jsp").build(); } return Response.status(Response.Status.OK).entity("data.jsp") .build(); } }
14.
View 仕様としてサポートを要求するのはJSPとFacelet 他は全てextension
Ozarkには以下のextensionがcontribute済み Asciidoc, Freemarker, Handlebars, Jade, JSR 223 (JavaScript) Mustache, StringTemplate, Thymeleaf, Velocity 13Copyright© 2015 Growth xPartners, Inc. All rights reserved.
15.
BYOVE Bring Your
Own View Engine BYODKM(Bring Your Own Display, Keyboard and Mouse)のもじり MVC1.0としてはViewのあり方については規定しない 14Copyright© 2015 Growth xPartners, Inc. All rights reserved.
16.
Viewのデフォルトのパスは”/WEB-INF/views”以下 変更した場合は javax.mvc.engine.ViewEngine.viewFolder
プロパテ ィを使ってオーバーライド 15Copyright© 2015 Growth xPartners, Inc. All rights reserved.
17.
スコープ Controllerのデフォルトスコープはrequest CDIのスコープを使用可能
application/session/request/conversation MVCで @RedirectScoped を定義 PRG(POST-Redirect-GET)パターンをサポート 16Copyright© 2015 Growth xPartners, Inc. All rights reserved.
18.
@RedirectScoped 17Copyright© 2015 Growth
xPartners, Inc. All rights reserved. @Named("bean") @RedirectScoped public class Greeting { private String message; public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } }
19.
イベント Observerパターン モニタリング/デバッグ/チューニング用途
BeforeControllerEvent / AfterControllerEvent BeforeProcessViewEvent / AfterProcessViewEvent ControllerRedirectEvent 追加の可能性あり 18Copyright© 2015 Growth xPartners, Inc. All rights reserved.
20.
19Copyright© 2015 Growth
xPartners, Inc. All rights reserved. @ApplicationScoped public class EventObserver{ public void onBeforeController(@Observes BeforeControllerEvent e){ System.out.println("URI:“ + e.getUriInfo().getRequestURI()); } public void onAfterController(@Observes AfterControllerEvent e){ System.out.println("Controller:" + e.getResourceInfo().getResourceMethod()); } }
21.
感想 「フレームワーク」ではなく「API」 All
in one フレームワークとは一線を画している 「ポストStruts」ではない とはいえ、Validationとそれに関係する画面遷移の周 りをもうちょっと作り込まないと実用にはつらい! 20Copyright© 2015 Growth xPartners, Inc. All rights reserved.
22.
JSON-P 1.1 Copyright© 2015
Growth xPartners, Inc. All rights reserved. 21 2015/1/1
23.
JSON-P 1.0 Java
API for JSON Processing JSR353 リファレンス実装はjava.net • https://java.net/projects/jsonp JavaEE7で採用 22Copyright© 2015 Growth xPartners, Inc. All rights reserved.
24.
JSON-P 1.1 JSON-P
1.0(RFC4627)をRFC7159でアップデート JSR374 現在のステータスはEarly Draft Review 23Copyright© 2015 Growth xPartners, Inc. All rights reserved.
25.
RFC7159 全ての値がトップレベルに可能に つまり、以下がvalidになる 24Copyright©
2015 Growth xPartners, Inc. All rights reserved.
26.
追加されたAPI Json public
static JsonString createValue(String value) public static JsonNumber createValue(int value) imilarly for long, double, BigInteger, and BigDecimal JsonReader default JsonValue readValue() JsonWriter default void write(JsonValue value) 25Copyright© 2015 Growth xPartners, Inc. All rights reserved.
27.
JsonArray and JsonObject
Transformations ビルダーパターンを用いたJsonオブジェクトの変換 26Copyright© 2015 Growth xPartners, Inc. All rights reserved. JsonArray value = Json.createArrayBuilder() .add(Json.createObjectBuilder() .add("type", "home") .add("number", "212 555-1234")).build(); JsonArray result = Json.createArrayBuilder(value) .add(Json.createObjectBuilder() .add("type", "fax") .add("number", "646 555-4567")) .build();
28.
JSON-Pointer RFC6901 JSONの特定値を差すための文字列syntax 27Copyright©
2015 Growth xPartners, Inc. All rights reserved. JsonStructure commit = reader.read(); JsonPointer p = new JsonPointer("/employee/name"); JsonStructure result = p.replace(commit, Json.createValue("Hiroyuki Onaka"))
29.
ポインターによるJSON操作API add(JsonStructure, JsonValue)
replace(JsonStructure, JsonValue) remove(JsonStructure) 28Copyright© 2015 Growth xPartners, Inc. All rights reserved.
30.
JSON-PATCH JSON更新処理の標準化 RFC6902 29Copyright©
2015 Growth xPartners, Inc. All rights reserved. JsonStructure commit = reader.read(); JsonPatchBuilder builder = new JsonPatchBuilder(); JsonStructure result = builder.add("/John/phones/office", "1234-567") .remove("/Amy/age") .apply(commit);
31.
JSON-PATCHによるJSON間の差分取得 JsonArray diff
= JsonPatch.diff(commit1,commit2) 30Copyright© 2015 Growth xPartners, Inc. All rights reserved.
32.
JSON-MERGE PATCH RFC7386
JSON間のマージ処理 nullの値をマージするとキーの削除になる application/json-patch+json 31Copyright© 2015 Growth xPartners, Inc. All rights reserved. JsonObject removeEntry = Json.createObjectBuilder() .add("
[email protected]
", JsonValue.NULL).build(); JsonValue newCommit = JsonMergePatch.mergePatch(reader.read(), removeEntry)
33.
JSON-MERGE PATCHによるパッチ リバースパッチが可能 32Copyright©
2015 Growth xPartners, Inc. All rights reserved.
34.
JSON Queries with
java.util.stream.Stream JsonObject/JsonArrayをMap/Listとして stream+LambdaでOperation可能に javax.json.stream.JsonCollectors #groupingBy / #toJsonArray / #toJsonObject 33Copyright© 2015 Growth xPartners, Inc. All rights reserved.
35.
JSON PROCESSING IN
PARSING streamモデルによる大容量Jsonデータの処理 javax.json.stream.JsonParserにAPI追加 getArray / getObject / getArrayStream / getObjectStream 34Copyright© 2015 Growth xPartners, Inc. All rights reserved.
36.
JSON-P JSONに対する低レベル操作API JSONとJavaオブジェクト(JavaBean)へのマッピング 機能は持っていない 35Copyright©
2015 Growth xPartners, Inc. All rights reserved.
37.
JSON-B Java API
for JSON Binding JSR367 • 現在のスタータスはEarly Draft 2 リファレンス実装はeclipselink MOXy(開発中) 36Copyright© 2015 Growth xPartners, Inc. All rights reserved.
38.
37Copyright© 2015 Growth
xPartners, Inc. All rights reserved. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Jsonb jsonb = JsonbBuilder.create(); ServletOutputStream out = response.getOutputStream(); out.print(jsonb.toJson(new JsonPlans())); out.flush(); } デモ: https://github.com/m0mus/jason_plans
39.
JSON-P 1.1はフレームワーク/ライブラリー開発者 には垂涎の機能だがそれ以外の開発者には…?
JSON-Bなら使い出はありそうだが如何せん標準化に 時間がかかりすぎる! 38Copyright© 2015 Growth xPartners, Inc. All rights reserved.
40.
おまけ Copyright© 2015 Growth
xPartners, Inc. All rights reserved. 39 2015/1/1
41.
JavaOne中にちょくちょくあったこと 「それ日本の(ブログ|勉強会)で聞いたやつだ!」 「そのネタだったら俺に喋らせろ!」 40Copyright©
2015 Growth xPartners, Inc. All rights reserved.
42.
世界はそんなに遠くない あれだけの数技術にとがったセッションを集めること のできるパイの大きさというのは、超えられない壁です が… software
developmentのレベルでは海外(主に米国) と日本は大差はなかったと思う。 41Copyright© 2015 Growth xPartners, Inc. All rights reserved.
43.
References MVC: Model-View-Controller
API Version 1.0 Early Draft (Second Edition) http://download.oracle.com/otndocs/jcp/mvc-1-edr2-spec/index.html JSR-000374 Java API for JSON Processing 1.1 Early Draft Review Javadoc http://download.oracle.com/otndocs/jcp/json_p-1_1-edr-spec/index.html JavaOne 2015 セッション資料 Introduction to MVC 1.0 (JSR 371) [CON4176] What’s New in the Java API for JSON Processing? [CON3561] What’s New in Java API for JSON Binding (JSR 367) [CON6155] 42Copyright© 2015 Growth xPartners, Inc. All rights reserved.
44.
Thank you! 大中浩行(Onaka,Hiroyuki)
グロースエクスパートナーズ(株) テクニカルリード http://blog.fieldnotes.jp/ @setoazusa 43Copyright© 2015 Growth xPartners, Inc. All rights reserved.
Download