設定の保存と復元 - SpringMVCによるWebアプリ

Webアプリケーション
概要
一般論
Webサーバ
• Webクライアントからのリクエストを受ける
• リクエストURLに対応したコンテンツを返
す
代表的な実装
• Apache HTTP Server
Webアプリケーションサーバ
Webアプリケーションを動作させるサーバ
Webアプリケーションとは
ネットワーク越しのクライアントに対してサービスを提供
するアプリケーション。
例としては、電子掲示板、ブログ、オンラインショップ、
SNSなどがある。
実装方法
Webアプリケーションを実装する方法
• CGI
– Perl、Ruby、PHPなどのスクリプト言語による
• Java
– Java EE(Java Servlet、JavaServer Pages)
サーバーサイドJava
Java EE – 仕様
• Java Servlet
• JSP (JavaServer Pages)
• EJB (Enterprise JavaBeans)
Webクライアント
Webアプリケーションが提供するサービスを
利用するためのクライアントアプリケー
ション
• Webブラウザ
• Webブラウザ以外のアプリケーション
– Twitter/Facebook
– Youtube/ニコニコ動画 etc.
リッチクライアント実装方法
リッチクライアントを実装する方法(Java以外)
• Webブラウザを利用した技術
– Flashプラグイン
– JavaScript
– Ajax
• アプリケーション
– Android/iOSアプリ
クライアントサイドJava
リッチクライアントを実装する方法(Java)
• Webブラウザを利用した技術
– Java Applet
– Java Plugin
– Java FX
• Java Web Start
システム構成-1
Webアプリケーションサーバの構成例
略してLAMPと呼ぶ(全てOSS)
• Linux
• Apache HTTP Server
• MySQL
• Perl・PHP・Python
システム構成-2
Java EEによるWebアプリケーションを動作さ
せる場合には、LAMPにサーブレットコン
テナを追加する。
• Apache Tomcat
• Apache Geronimo
• JBoss Application Server
• GrassFish
サーブレットコンテナ上で JSP や Servletが 動作
3層アーキテクチャ
Webアプリケーションサーバ
クライアント
Webアプリケーション
プレゼンテーション層
サービス層
データアクセス層
データベース
3層アーキテクチャ
Webアプリケーションは、3層アーキテクチャを採用
することが多い。
• プレゼンテーション層
– サービス層とWebクライアントを結びつける
• サービス層(ビジネスロジック層)
– Webアプリケーションのコア部分
• データアクセス層
– サービス層とRDBを結びつける