こんにちは!エンジニアの中沢です。
JavaにはWebアプリケーションの開発に必要な機能をセットにしたJava EEというフレームワークがあります。
この記事では、
・Java EEとは
・Java EE 7で何が変わったの?
という基本的な内容から、
・Java EE 7の新しいAPIについて
・新機能と更新内容の詳細について
などの詳細な内容についても解説していきます。
今回はこれらの内容を覚えるために、Java EE 7の新機能の概要をわかりやすく解説します!
なお、Javaの記事については、こちらにまとめています。
Java EEとは
初めにJava EEについて解説します。
Java EEの正式名称は「Java Platform, Enterprise Edition」で、企業向けのWebアプリケーション開発用の機能をセットにしたフレームワークです。
Java EEは、Java SEにWebアプリケーションの開発に必要なサーバー関係のライブラリなどを追加したもので、Java EEの中にはJava SEも含まれています。
そのため、Java EEでWebアプリケーションの開発するときにはJava SEのライブラリを使うことができます。
Java EEについて詳しく知りたいときはこちらの記事を確認してください。
Java EE 7の新機能と更新内容
Java EE 7は2013年7月にリリースされました。
Java EE 7ではプログラミングモデルの改良が行われ、今までのバージョンよりも簡潔なコードで目的の機能を実装できるようになりました。
Java EE 7で新規に追加された内容は、「WebSocket」、「JSON」、「バッチ処理」、「Concurrency Utilities」の4つです。
メジャーリリースで大きく更新された内容は、「JMS 2.0」、「JAX-RS 2.0」、「EL 3.0」の3つです。
さらにHTML5にも対応しました。
この記事では、これらの新機能と更新内容を中心に解説していきます。
Java EE 7の詳細を知りたいときは以下のリンク先から確認してください。
Java EE 7のドキュメント
http://www.oracle.com/technetwork/java/javaee/tech/index.html
Java EE 7のAPIの詳細
http://docs.oracle.com/javaee/7/api
新機能の詳細について
WebSocketについて
WebSocketはネットワーク用の通信規格です。
WebSocketの対応により、クライアントとサーバーの通信をするようなプログラムを作成することがより簡単にできるようになりました。
WebSocketのドキュメントはこちらのリンク先から確認できます。
https://jcp.org/en/jsr/detail?id=356
JSONについて
JSON(JavaScript Object Notation)はJavaScriptの表記法をベースにしたデータを記述するためのフォーマットです。
JSONの対応により、他のソフトウェアやプログラミング言語とデータの受け渡しを行うことがより簡単にできるようになりました。
JSONのドキュメントはこちらのリンク先から確認できます。
https://jcp.org/en/jsr/detail?id=353
バッチ処理について
jBatch(Batch Applications for the Java Platform)によってバッチ処理ができるようになりました。
企業ではCOBOLなどで作られた古いシステムでバッチ処理を行っている場合があります。
そういった古いシステムをJava EEに移行することが簡単にできるようになりました。
jBatchのドキュメントはこちらのリンク先から確認できます。
https://jcp.org/en/jsr/detail?id=352
ConcurrencyUtilitiesについて
ConcurrencyUtilitiesは並列処理を行うための機能です。
Java EEでは様々な並列処理をサポートしてきましたが、ConcurrencyUtilitiesの対応によってJava EEのスレッド管理機能が強化され、Java EEのコンテナの管理下でスレッドを作成し、並列処理ができるようになりました。
ConcurrencyUtilitiesのドキュメントはこちらのリンク先から確認できます。
https://jcp.org/en/jsr/detail?id=236
メジャーリリースの詳細について
JMS 2.0について
JMS(Java Message Service)はデータを送受信するための機能です。
JMS 2.0ではAPIが改良され、より簡潔なコードで目的の機能を持ったプログラムを作成できるようになりました。
JMS 2.0のドキュメントはこちらのリンク先から確認できます。
https://jcp.org/en/jsr/detail?id=343
JAX-RS 2.0について
JAX-RS(Java API for RESTful Web Services)はRESTアーキテクチャで作られたWebサービスのための機能を提供するJavaのAPIです。
JAX-RS 2.0でHTML5に対応しました。
また、コーディング量が削減されて、より簡潔なコードでプログラムを作成できるようになりました。
JAX-RSのドキュメントはこちらのリンク先から確認できます。
https://jcp.org/en/jsr/detail?id=311
EL 3.0について
EL(Expression Language)は式言語と呼ばれるもので、値や演算結果を出力するために使います。
JSP 2.0(JavaServer Pages)から導入された構文で、JSPをより簡潔に記述できるようにしたものです。
EL 3.0ではラムダ式に対応しました。
EL 3.0のドキュメントはこちらのリンク先から確認できます。
https://jcp.org/en/jsr/detail?id=341
まとめ
いかがでしたか?
今回はJava EE 7の新機能について解説しました。
Java EE 7ではAPIの改良によりコードが簡潔に書けるようになったので活用してくださいね。
もしJava EE 7について忘れてしまったらこの記事を確認してください!