JavaOne2013 サンフランシスコ報告会 Tokyo

井上誠一郎

アリエルネットワーク CTO

ワークスアプリケーションズ ゲストフェロー

自己紹介

名前

主な著書

ブログ

JavaOne参加経験

[any material that should appear in print but not on the slide]

今日のお題

[any material that should appear in print but not on the slide]

アジェンダ

[any material that should appear in print but not on the slide]

Java EEの認知度?

[any material that should appear in print but not on the slide]

Java EEの最新バージョン

[any material that should appear in print but not on the slide]

CDI

[any material that should appear in print but not on the slide]

JPA

[any material that should appear in print but not on the slide]

JAX-RS

[any material that should appear in print but not on the slide]

アジェンダ

[any material that should appear in print but not on the slide]

JavaOne2013のJava EE: キーノートのトピック

[any material that should appear in print but not on the slide]

JavaOne2013のJava EE: キーノートのトピック(裏)

[any material that should appear in print but not on the slide]

JavaOne2013のJava EEセッション: カテゴリ

[any material that should appear in print but not on the slide]

JavaOne2013のJava EEセッション カテゴリごとのセッション数

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(Java EE7の新顔編)

メイントピックのセッションに限定

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(Java EE7で大きく変更編)

メイントピックのセッションに限定

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(定番編)

メイントピックのセッションに限定

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(Java EEコンテナ編)

単なる検索結果(メイントピックとは限らない)

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(実装編)

単なる検索結果(メイントピックとは限らない)

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(JPA実装編)

単なる検索結果(メイントピックとは限らない)

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(フレームワーク編)

メイントピックのセッションに限定

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(NoSQL編)

単なる検索結果(メイントピックとは限らない)

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(NewSQL編)

単なる検索結果(メイントピックとは限らない)

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(PaaS基盤編)

単なる検索結果(メイントピックとは限らない)

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(PaaS編)

単なる検索結果(メイントピックとは限らない)

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(サーチエンジン編)

単なる検索結果(メイントピックとは限らない)

[any material that should appear in print but not on the slide]

JavaOneセッション数で勢いを測る(データ連携編)

単なる検索結果(メイントピックとは限らない)

[any material that should appear in print but not on the slide]

アジェンダ

[any material that should appear in print but not on the slide]

「Java Caching (JSR 107): The State of the Union [CON10175]」

[any material that should appear in print but not on the slide]

「What’s New in Java Transaction Processing [BOF3433]」

[any material that should appear in print but not on the slide]

「JSR 356: Inside the Java WebSocket API [CON3436]」

[any material that should appear in print but not on the slide]

WebSocket プログラマブルAPIコード例

public class EchoEndpoint extends Endpoint {
   @Override
   public void onOpen(final Session session, EndpointConfig config) {
      session.addMessageHandler(new MessageHandler.Whole>String<() {
         @Override
         public void onMessage(String msg) {
            try {
               session.getBasicRemote().sendText(msg);
            } catch (IOException e) { ... }
         }
      });
   }
}
[any material that should appear in print but not on the slide]

WebSocket アノテーションAPIコード例

@ServerEndpoint("/echo")
public class EchoEndpoint {
   @OnMessage
   public void onMessage(Session session, String msg) {
      try {
         session.getBasicRemote().sendText(msg);
      } catch (IOException e) { ... }
   }
}
[any material that should appear in print but not on the slide]

「Jersey 2 MVC in Action [BOF5548]」

[any material that should appear in print but not on the slide]

「Decompose That WAR! Architecting for Adaptability, Scalability, and Deployability [CON2328]」

[any material that should appear in print but not on the slide]

「Decompose That WAR! Architecting for Adaptability, Scalability, and Deployability [CON2328]」(cont.)

[any material that should appear in print but not on the slide]

「Decompose That WAR! Architecting for Adaptability, Scalability, and Deployability [CON2328]」(cont.)

[any material that should appear in print but not on the slide]
[any material that should appear in print but not on the slide]

「The Spring Update [CON2439]」

[any material that should appear in print but not on the slide]

「The Spring Update [CON2439]」(cont.)

[any material that should appear in print but not on the slide]

アジェンダ

[any material that should appear in print but not on the slide]

Java EEの歴史

 名称:          マーケティングメッセージ
 J2EE 1.2:      ?
 J2EE 1.3:      ?
 J2EE 1.4:      Webサービス(SOAP)
 Java EE 5:     アノテーション + DI + ORM
 Java EE 6:     DI標準化(CDI)。RESTful API(JAX-RS)。Webプロファイル
 Java EE 7:     HTML5(WebSocket)。JSON。バッチ処理
[any material that should appear in print but not on the slide]

J2EE

[any material that should appear in print but not on the slide]

Java EE(Web層の進化)

[any material that should appear in print but not on the slide]

Java EE以降のEJB

[any material that should appear in print but not on the slide]

Java EE 7のEJB

[any material that should appear in print but not on the slide]

Java EE 8以降の世界?

[any material that should appear in print but not on the slide]

Java EE 8?

[any material that should appear in print but not on the slide]

まとめ

[any material that should appear in print but not on the slide]