0.1 概要
このユーザーガイドは、Web 開発に情熱を注ぐ人、および Java を使用して Web アプリケーションを開発したい人を対象に書かれています。読み始める前に、次のコア テクノロジについての基本的な知識を持っている必要があります:
.HTTP、HTML およびユーザー エージェント
.Java 言語とアプリケーション フレームワーク
リソースバインディング;
.Java サーブレット;
.jsp および JSP タグライブラリ;
この章では、詳細な説明はせずに、これらのコアテクノロジーについて簡単に説明します。便宜上、それらについて詳しく知るための便利なリンクをいくつか提供します。
Java 言語自体にはすでに精通しているものの、これらのテクノロジーを理解していない場合は、このガイド「The Java Web Services Tutorial」をよく読むことをお勧めします。 PDF 版はここからダウンロードできます。
他のプラットフォーム向けの Web アプリケーションの開発経験がすでにある場合は、ここで必要な情報を見つけることもできます。 Struts で使用されるテクノロジは他の Java Web 製品でも使用できるため、この背景知識はあらゆる Java プロジェクトに役立ちます。
Java 言語についてまだよくわからない場合は、別のガイドである The Java Tutorial を参照することをお勧めします。 『Java チュートリアル』と『Java Web サービス チュートリアル』の内容は重複する場合があるため、合わせて読むことをお勧めします。
一般的な Java アプリケーションの開発方法を知りたい場合は、ここにアクセスしてご覧ください http://developer.java.sun.com/developer/onlineTraining/new2java/divelog/part1/toc.jsp' TARGET= _blank> Java の初心者にとっては、とても役立つかもしれません。
0.2 HTTP、HTML、ユーザーエージェント
ご存知のとおり、インターネットはHTTPプロトコルとHTML言語に基づいて構築されています。ユーザー エージェントは、Web ブラウザと同じように HTTP プロトコルを使用して HTML ドキュメントを要求し、ブラウザはそれをフォーマットしてユーザーに表示する役割を果たします。 HTTP プロトコルは送信に使用されますが、HTML は Web および Web アプリケーションで使用される世界共通言語です。
Web アプリケーションを開発するとき、Java プログラマーの中には自分で HTML 言語を書く人もいますが、専門のページ デザイナーにHTML 言語の作成を任せる人もいます。
HTTP、HTML、ユーザーエージェントの詳細については、次のリソースを参照してください。
.Dave Raggett による HTML の概要
.HTTP/1.1 仕様;
.HTTP Basic;
. 状態管理メカニズムの仕様 (Cookie);
0.3 HTTP リクエストの応答サイクル
Web 開発者にとって、HTTP について最も懸念されるのは、HTTP を使用してリクエストを送信すること、そして HTTP サーバーです。 (Webサーバーなど)応答を返します。 Web 開発やデザインを行うときは、HTTP 応答を返す HTTP リクエストを設計します。 Struts フレームワークはこのサイクルを抽象化します。私たちにとってより重要なことは、舞台裏で何が起こっているかを知る必要があることです。
HTTP リクエストの応答サイクルに詳しくない場合は、Java Web サービス チュートリアル http://java.sun.com/webservices/docs/1.0/tutorial/doc/HTTP の HTTP の概要を読むことを強くお勧めします。 . html#63796
0.4 Java言語とアプリケーションフレームワーク
Strutsフレームワークは、最も人気のあるユニバーサルプログラミング言語であるJavaで書かれています(訳者注:Java言語をこのように説明するのは過言ではないと思います)。 Java はオブジェクト指向プログラミング言語であり、Struts はそのオブジェクト指向テクノロジを利用しています。さらに、Java 自体はスレッドを適切にサポートしており、複数のタスクを同時に実行できます。 Java 言語、オブジェクト指向プログラミング、スレッドをよく理解することは、Struts を習得し、このユーザー ガイドを使用する際に非常に役立ちます。
Java 言語とスレッドを学習するには、次の資料を参照できます。
.Learning the Java Language of The Java Tutorial;
.Learning the Threads of The Java Language Tutorial - Doing Two or More Tasks At Once;すでに Java およびオブジェクト指向プログラミングを使用している場合は、アプリケーション フレームワークの作成と使用もプログラミングに大いに役立ちます。アプリケーション フレームワークの詳細については、次の 2 つのホワイト ペーパーを参照してください。Ralph E. Johnson および Brian Foote による「Designing Reusable Classes」。サーバーについては、Mohamed Fayad および Douglas C. Schmidt による「Object-Oriented application Frameworks」。 -side フレームワーク それから、次の 2 つのページが役に立つかもしれません: 1 と 2
0.5 JavaBeans
多くの Java アプリケーションと同様に、ほとんどの Struts オブジェクトは JavaBeans として設計されています。 JavaBean 設計パターンを使用すると、Java 開発者や Java デプロイメント ツールが Struts クラスにアクセスしやすくなります。
JavaBan はもともと視覚要素のプログラミングのためにのみ作成されましたが、現在では、このオブジェクト設計パターンは、Struts フレームワークなど、より再利用可能なコンポーネントの基本設計に広く使用されています。
JavaBeans の詳細については、以下を参照してください。
.java.sun.com の JavaBeans コンポーネント アーキテクチャ ドキュメント。および JavaBeans 1.01 仕様;
.The JavaBean Trail in The Java Tutorial;
『Java Web サービス チュートリアル』の JSP ページの JavaBeans コンポーネント;
0.5.1 リフレクションとイントロスペクションのメカニズム
リフレクションは、オブジェクトのどのメンバー変数またはメソッドが使用可能かを決定する処理メカニズムです。イントロスペクションは、JavaBean API で使用される特別な形式のリフレクションです。イントロスペクションを使用すると、他のオブジェクトが JavaBean のどのメソッドにアクセスできるかを知ることができます。
Struts フレームワークは、イントロスペクション メカニズムを使用して HTTP パラメータを JavaBean プロパティに変換し、JavaBean プロパティを使用して HTML フォーム フィールドを組み立てます。このテクノロジにより、JavaBeans と HTML フォーム フィールド間のプロパティへの「双方向アクセス」が容易になります。
リフレクションとイントロスペクションの詳細については、以下を参照してください:
.The Reflection Trail;
.JavaBeans API仕様の第8章;
0.5.2 Maps
JavaBeansは、プロパティを使用して他のメソッドにデータを保存します このデータを操作します。 JavaBean は便利で強力なオブジェクトですが、プログラマがデータを保存するために使用できる唯一の選択肢ではありません。もう 1 つの人気のあるオブジェクトは Map [java.util.map] です。マップは、名前と値のペアの単純なコレクションです。マッピングは、多くの場合、動的データを保存する便利な方法として「舞台裏」で機能します。
0.5.3 Dynamic Beans (DynaBeans)
Dynamic Beansは、JavaBeansのスケーラビリティとMapsの柔軟性を兼ね備えています。単純な JavaBean を定義したい場合でも、新しいクラスを作成し、属性変数を定義し、各属性に対応する 2 つのアクセス メソッド (setXXX と getXXX) を記述する必要があることがわかっています。動的 Bean は、XML 構成ファイルを通じてプロパティを定義できます。動的 Bean の仮想プロパティは、通常の Java メソッドのように呼び出すことはできませんが、リフレクションおよびイントロスペクション メカニズムを使用してコンポーネントを通じてアクセスする必要があります。
Strutsフレームワークでは、動的Beanを使用してHTMLフォームを記述することができます。この戦略により、単純なフォーム フィールドに対して正式な JavaBean サブクラスを作成する必要がなくなります。
上記は Struts ユーザーおよび開発ガイド (パート 1) の内容です。その他の関連記事については、PHP 中国語 Web サイト (www.php.cn) に注目してください。