トップページ > 技術情報 > Java

Java

JavaによるWebシステム開発

  • オブジェクト指向プログラミング言語
  • プラットフォームに依存しないソフトウェアの開発が可能 です。
    (Javaで作成したプログラムはWindows、Mac、LinuxとさまざまなOS上で動作させることが可能です。)
  • Findbugをはじめ様々な解析ツールが揃っていて、最低限のコード品質を保つのが非常に簡単です。
  • Javaには自動ガベージコレクションの機能や例外処理機構などのしくみがいくつも備わっており、プログラムの安全性を高めてくれます。
  • REST,SOAP,JSONなどといった様々な通信IFに対応しており、WEBサービスAPIとして公開することで異なるシステム間の連携もスムーズに行えます。
  • また最新のアプリケーションサーバ、ブラウザではWebSocketにも対応しており、サーバからクライアントへデータをプッシュすることができ、よりダイナミックなWEbサイトを構築することができます。
  • httoプロトコルと比べて軽量であるため、通信量も軽減されます。

JavaによるWebシステム構成例

JavaでWebシステムを構築する上でのメリット

  • Javaの移植性が高く、どのような環境でも動作可能。Javaは「Write once, run anywhere.」を標語として掲げており、JavaVMが動作する環境であれば、Windows, Mac、Linux、Unix 等ほとんどのOS環境で実行できます。また、動作できる機器もPCやサーバーに限らずあらゆるデバイス上で動作させることができます。
  • オブジェクト指向プログラミング言語によるプログラムの再利用性が高く、安全に生産性の高い開発が見込まれます。
  • 豊富なクラスライブラリが標準で準備されています。
  • 世界中の技術者が開発したオープンソースによるフレームワークや各種ライブラリが充実。Eclipseなど開発環境が整備されています。
  • JSPやアプリケーションサーバー、フレームワークが整備されており、Webアプリケーション開発に向いているので小規模から大規模まで対応可能です。
  • すでにIT業界では標準的な言語であり、比較的技術者を確保しやすい 弊社でも数多くの開発実績があります。

JavaでWebシステムを構築する上でのデメリット

  • PHPやRubyなどに比べ、生産性が低い。 Javaは、厳格な言語でありコーディング量や設定ファイルも比較的多い。 どちらかといえば可読性の高さや再利用性を生かした大規模のシステム開発に向いています。
  • JAVAのデメリットである生産性の低さについてはコード量を少なくするフレームワーク(JavaEE,Spring)や、ライブラリなど活用することで生産性を上げることが可能です。
  • 開発がストップしているフレームワークなども出てきているため、システム保証期間、セキュリティ対応など、将来性を見越した選定が必要になります。
  • Webアプリケーション開発全般に言えることだが、システム開発には、Java言語の他、HTML、CSS、JavaScript、 アプリケーションサーバー、DBサーバーなど前提となる幅広い知識が必要となります。

JavaEE開発環境

アプリケーションサーバ 会社 JavaEE7 JavaEE6 EJB
(DI、インターセプタ等)
WebSocket 備考
Tomcat OSS(Apache) × × × 7以降 軽量高速に動作するものの、EJBは機能しない。
Oracle GlassFish Server Oracle × Oracleの商用サポート打ち切り
(v3は2019年までサポート)。
GlassFish Server Open Source Edition OSS(Oracle) JavaEE7対応4.1は未だに安定動作せず。
JavaEE6対応3.1.2.2は比較的安定している模様。
WebLogic Oracle 一部対応 JavaEEサーバ:グローバルシェアNo.1
WildFly(JBoss) RedHat 無償版の本番運用は非推奨。
商用版はチューニングされているため、
高速化されているが、無償版はやや遅い。
WebSphere IBM ×
Interstage Fujitsu ×
Geronimo OSS(Apache) ×
JEUS TmaxSoft
Cosminexus Hitachi

PAGE TOP