私はJava Web開発に従事してきましたが、Javaオブジェクト指向の思考とMVC開発モデルに精通しています。私が現在関わっているフレームワークは、春、SpringMVC、冬眠です。以下に、wulin.comの編集者がチュートリアルをコンパイルして、Javaweb関連の知識を学ぶのに役立ちます。興味のある友達はそれを参照できます。
1。基本概念
1.1。 Web開発に関する関連知識
Web、英語では、WebはWebページの意味を意味し、外部アクセスのためにインターネットホストのリソースを表すために使用されます。
インターネット上の外部アクセスのためのWebリソースは、次のように分割されます。
1。StaticWebリソース(HTMLページなど):人々が閲覧できるWebページのデータを参照します。
2。ダイナミックWebリソース:Webページのデータを参照してください。閲覧する人はプログラムによって生成され、さまざまな時点でWebページにアクセスするときに表示されるコンテンツは異なります。
静的Webリソース開発技術:HTML
一般的に使用される動的Webリソース開発技術:JSP/サーブレット、ASP、PHPなど。
Javaでは、動的なWebリソース開発技術は総称してJavawebと呼ばれています。
1.2。 Webアプリケーション
Webアプリケーションとは、通常はWebアプリケーションと呼ばれるブラウザアクセスのためのプログラムを指します。たとえば、A.HTML、B.HTML .....などの複数のWebリソースがあり、これらの複数のWebリソースは、外の世界にサービスを提供するために使用されます。現時点では、これらの複数のWebリソースをディレクトリに配置して、Webアプリケーション(またはWebアプリケーション)を形成する必要があります。
Webアプリケーションは、HTML、CSS、JSファイル、JSファイル、Javaプログラム、JARパッケージ、構成ファイルなどの複数の静的Webリソースと動的Webリソースで構成されています。
Webアプリケーションが開発された後、外の世界にアクセスする場合は、Webアプリケーションが管理のためにWebサーバーに配置されているディレクトリを渡す必要があります。このプロセスは、仮想ディレクトリのマッピングと呼ばれます。
1.3。 Web開発の歴史
Web開発の2つの段階:静的および動的
1.4。静的Web
*HTMと *HTMLは、Webページの接尾辞です。これらのコンテンツが現在サーバーで直接読まれている場合、これらのWebページのコンテンツがWebサーバーを介してユーザーに提示されることを意味します。静的Web操作全体のプロセス図は次のとおりです。
静的Webプログラムでは、クライアントはWebブラウザー(IE、Firefoxなど)を使用してネットワーク(ネットワーク)を介してサーバーに接続し、HTTPプロトコルを使用してリクエスト(リクエスト)を開始し、サーバーに今すぐ取得する必要があるかを伝え、すべてのリクエストをWebサーバーに渡します。次に、Webサーバーは、ユーザーのニーズに応じて、ファイルシステム(すべての静的ページを保存するディスク)からコンテンツを取り出します。次に、Webサーバーを介してクライアントに返されます。クライアントがコンテンツを受信した後、表示された効果を取得するためにブラウザによってレンダリングおよび解析されます。
静的Webにはいくつかの欠点があります。
1. Webページのコンテンツは動的に更新することはできず、すべてのユーザーが常に表示するコンテンツと最終効果は同じです。
Static Webディスプレイをより美しくするために、JavaScriptを追加してページの表示効果を完了することができますが、これらの効果はブラウザを介してクライアントのユーザーに表示されるため、サーバー自体に変更はありません。
静的Webクライアントの動的効果を実現するための手段:
•JavaScript
•vbscript
JavaScriptは実際の開発で最も使用されます。
2. Static Webはデータベースに接続できず、ユーザーとのやり取りを実現できません。
データを使用してデータを保存することは、データベースでデータを簡単に管理できるため、現在のシステムの選択であり、標準のSQLステートメントを使用して追加、削除、変更、検索操作を完了することができます。
1.5。ダイナミックウェブ
いわゆるダイナミクスは、ページが移動することを意味しません。主な機能は、「TIMEごとにWeb変更のページ表示効果」であり、動的Webはインタラクティブであり、Webのページのコンテンツを動的に更新できます。動的Web操作全体のプロセス図は次のとおりです。
ダイナミックWebでは、プログラムは引き続きクライアントとサーバーを使用し、クライアントはブラウザ(つまり、Firefoxなど)を使用し、ネットワーク(ネットワーク)を介してサーバーに接続し、HTTPプロトコルを使用して要求(要求)を開始します。すべてのリクエストは、最初にWeb Serverプラグイン(サーバープラグイン)によって処理されます。このプラグインは、要求が静的リソース( *.htmまたは *.htm)か動的リソースであるかを区別するために使用されます。
Webサーバープラグインが、クライアントが静的リソース( *.htmまたは *.htm)を要求していることを見つけた場合、要求をWebサーバーに直接転送し、Webサーバーがファイルシステムからコンテンツを取り出し、クライアントブラウザーに送信して解析と実行を行います。
Web Serverプラグインが、クライアントが動的リソース( *.jsp、 *.asp/ *。ASPX、 *.PHP)を要求していることを見つけた場合、最初にリクエストをWebコンテナ(Webコンテナ)に転送し、Webコンテナのデータベースを接続し、データベースからデータを取り出し、ページの表示コンテンツを動的に断片化します。ページの表示コンテンツをつなぎ合わせた後、すべてのディスプレイコンテンツがWebサーバーに引き渡され、Webサーバーを介して解析と実行のためにコンテンツをクライアントブラウザに送り返します。
1.6。動的Webアプリケーションの実装方法
現在、動的なWebを実装する方法はたくさんありますが、最も一般的なものは次のとおりです。
•Microsoft ASP、ASP.NET
•PHP
•Javaサーブレット/JSP
1。MicrosoftASP、ASP.NET
Microsoftの動的なWeb開発は比較的早く、国内で最初のWeb開発はASPでした。 ASPはVBスクリプトをHTML言語に追加しますが、標準開発アプリケーションではASP+COMを使用する必要があります。ただし、実際には、ASPを開発する場合、基本的に何百ものコードが1つのページに記述されており、ページコードは非常に混oticとしています。
ASP自体には、Windows+IIS+SQL Server/Accessの開発プラットフォームに制限があります。 ASPはWindowsオペレーティングシステムでのみ実行できます。 ASPは基本的に現在排除されています。現在、基本的にASP.NETを使用して開発されています。 ASP.NETはパフォーマンスを大幅に改善し、急速に発展していますが、プラットフォームによって制限されています。 C#言語は主にASP.NETで使用されます。
2.PHP
PHPは非常に速く開発されており、強力な機能、クロスプラットフォーム(プラットフォームは実行されるオペレーティングシステムを指します)を備えており、コードも簡単です。
3.Servlet/JSP
これは、Sunによって促進されたB/Sアーキテクチャの実装言語です(Sunは現在Oracleによって獲得されています)。 Java言語は十分にシンプルで非常にきれいであるため、Java言語に基づいて開発されています。
サーブレット/JSPテクノロジーのパフォーマンスも非常に高いです。プラットフォームによって制限されておらず、基本的にすべてのプラットフォームで使用できます。さらに、操作中にマルチスレッド処理方法を使用するため、パフォーマンスは非常に高くなります。
Sunの最初のWebテクノロジーが発売されたのは、サーブレットプログラムでした。サーブレットプログラム自体を使用するときにいくつかの問題がありました。すべてのプログラムは、Java Code + HTML、つまりJava出力ステートメントを使用してすべてのHTMLコードラインをラインごとに出力するために記述されました。その後、SunはASPに触発され、JSP(Java Serverページ)を開発しました。 JSPコードの執筆効果は、ASPの執筆効果と非常に似ています。これにより、一部のASPプログラマーがJSP学習に目を向け、市場の競争力を高めることができます。
2。Webサーバー
2.1。 Webサーバーの紹介
1. Webサーバーとは、インターネット上の何らかのタイプのコンピューターにあるプログラムを指し、リクエストを行うブラウザにドキュメントを提供できるプログラムです。 Webブラウザ(クライアント)がサーバーに接続してファイルを要求すると、サーバーはリクエストを処理し、ファイルをブラウザに戻し、付随する情報はブラウザにファイルの表示方法(ファイルタイプ)を表示します。
2。サーバーはパッシブプログラムです:サーバーは、リクエストを送信するインターネットでブラウザが実行されている場合にのみ応答します。
2.2。一般的なWebサーバーの紹介
1。ウェブロジック
WebLogicは、American Bea Companiesが生産するアプリケーションサーバーです。 Bea Weblogicは、大規模な分散Webアプリケーション、ネットワークアプリケーション、およびデータベースアプリケーションを開発、統合、展開、および管理するためのJavaアプリケーションサーバーです。 Javaの動的関数とJava Enterprise Standardsのセキュリティを、大規模なネットワークアプリケーションの開発、統合、展開、および管理に紹介します。現在、最も広く使用されているWebサーバーであり、J2EE仕様をサポートしており、新しい開発要件に適応するために常に改善されています。スタートアップインターフェイスを図に示します
2。WebSphere
WebSphere Application Serverは、IBMのeコマースプランの中核部分である完全に機能するオープンWebアプリケーションサーバーです。これは、インターネットおよびイントラネットのWebアプリケーションを構築、展開、および管理するためのJavaベースのアプリケーション環境です。この完全な一連の製品は、シンプルから高度なレベルに至るまで、Webアプリケーションサーバーのニーズを満たすために拡張されています。スタートアップインターフェイスを図に示します。
3。トムキャット
Tomcattomcatは、Java EE標準を実装する最小限のWebサーバーであり、Apache Software FoundationのJakartaプロジェクトのコアプロジェクトであり、Apache、Sun、および他の企業や個人によって開発されました。 Tomcatは高度なテクノロジー、安定したパフォーマンスを持ち、オープンソースフリーであるため、Java愛好家に深く愛されており、一部のソフトウェア開発者に認識されており、現在人気のあるWebアプリケーションサーバーになっています。 Javaweb開発の学習は一般に、すべてのJSPおよびサーブレットの仕様をサポートするTomcatサーバーを使用します。スタートアップインターフェイスを図に示します。
4。IIS
MicrosoftのWebサーバー製品は、インターネット情報サービス(IIS)です。これは、パブリックイントラネットまたはインターネットに関する情報を公開できるWebサーバーです。 ⅱsは現在最も人気のあるWebサーバー製品の1つであり、多くの有名なWebサイトがⅱSプラットフォームに構築されています。 IISは、Internet Information Services Managerと呼ばれるグラフィカルなインターフェイス管理ツールを提供します。これは、構成を監視し、インターネットサービスを制御するために使用できます。
IISは、Webサーバー、FTPサーバー、NNTPサーバー、SMTPサーバーなどのWebサービスコンポーネントであり、それぞれWebブラウジング、ファイル転送、ニュースサービス、電子メール送信に使用されます。ネットワークで情報を簡単に公開することができます(インターネットおよびローカルエリアネットワークを含む)。 Webサーバーの機能を拡張するためのプログラミングインターフェイスとしてISAPI(Intranet Server API)を提供します。同時に、クエリを有効にしてデータベースを更新できるインターネットデータベースコネクタも提供します。
Web開発を学習するには、最初にWebサーバーをインストールし、ユーザーがブラウザを使用してアクセスできるように対応するWebリソースをWebサーバーに開発する必要があります。
3. Javawebアプリケーション開発環境を構築する-Tomcatサーバー
3.1。質問:Web開発を学習するときに最初にWebサーバーをインストールする必要があるのはなぜですか?
ユーザーがアクセスできないローカルコンピューターでWebページを作成しますが、Tomcatサーバーを起動してWebページをTomcatサーバーに配置すると、ユーザーはアクセスできます。これはどういう意味ですか?
1.リモートコンピューターでどのWebリソースにアクセスしたい場合でも、対応するネットワーク通信プログラムが必要です。ユーザーがアクセスすると、ネットワーク通信プログラムはWebリソースデータを読み取り、訪問者にデータを送信します。
2。Webサーバーはそのようなプログラムであり、基礎となるネットワーク通信を完了するために使用されます。これらのサーバーを使用して、WEアプリケーションの開発者は、リソースがクライアントに送信される方法ではなく、Webリソースの作成方法に注意を払う必要があります。これにより、開発者の開発ワークロードが大幅に削減されます。
3.2。 Tomcatサーバーをダウンロードしてインストールします
Tomcat公式サイト:http://jakarta.apache.org
Tomcatインストールパッケージをダウンロード:http://tomcat.apache.org/
[ダウンロード]をクリックして、下の図に示すダウンロードページにジャンプします
3.3。 Tomcatサーバーを起動してテストします
Tomcatサーバーを開始します
BINディレクトリの起動up.batファイルをダブルクリックして、Tomcatサーバーを起動する
Tomcatサーバーのテスト
ブラウザを開き、http:// localhost:8080/を入力します。次のインターフェイスを表示して、インストールが成功したことを示すことができます。
3.4。 Tomcat Startup FAQ
Tomcatサーバーが正常に開始できない理由は、一般に次の2つの理由です。
1. Java_home環境変数の設定に問題
BINディレクトリのBATファイルをダブルクリックしてTomcatサーバーを起動するには、TomcatサーバーがこのJava_home環境変数を使用して開始する必要があるため、WindowsでJava_home環境変数を設定することです。 Java_home環境変数がWindowsに存在しない場合、Tomcatサーバーを開始できません。
ウィンドウでjava_home変数の構成
操作手順(WIN7システム):コンピューター→[プロパティ]→[高度なシステム設定]→[高度なシステム設定]→[高度→環境変数を右クリックします。
システム変数の下に「[new]」をクリックすると、[新しいシステム変数]ダイアログボックスが表示されます。まず、java_homeを変数名に書きます。名前が示すように、java_homeの意味はJDKのインストールパスであり、変数値にJDKのインストールパスを書き込みます。たとえば、ここで設定された変数値は「D:/プログラムファイル(x86)/java/jdk1.7.0」です。変数値を設定した後、[OK]ボタンをクリックすると、下の図に示すようにJava_home環境変数が設定されています。システム変数に追加の「Java_home」変数があります。
通常、Java開発を学習する最初のステップは、パス環境変数を構成することです。より良い構成方法は、最初にjava_home環境変数を構成し、次にパス変数で「%java_home%」を使用してjava_home変数の値を参照することです。
したがって、このJava_home環境変数は通常、ウィンドウで構成されています。 java_home環境変数の構成を忘れた場合、上記の方法を使用して構成できます。
2。港の占有の問題
Tomcatサーバーは、開始時にデフォルトでポート8080を使用する必要があるため、このポート8080が他のアプリケーションで占有されている場合、Tomcatサーバーは正常に開始できません。あなたが見るこの現象は、「Tomcat Server Startup Interfaceが例外エラーメッセージを印刷し、その後自動的に閉じられる」です。
起動からこのウィンドウの閉鎖までの時間は非常に短いため、Tomcatがこのウィンドウを開始するときにエラー例外情報を確認することは困難です。したがって、通常、Tomcatサーバーによって記録されたログ(ログ)情報を介してTomcatサーバーの操作のみを表示できます。
Tomcatサーバーのルートディレクトリにログフォルダーがあります。
ログフォルダーは、Tomcatのログファイルを保存します。ログフォルダーを開くと、内部のログファイルが表示されます。 「catalina.yyyy-mm-dd.log」という名前のログファイルがあります。たとえば、「Catalina.2014-05-17.log」ログファイルは、2014-05-17にTomcatサーバーの操作を記録します。
ログ情報は、Tomcatサーバーの操作を明確に記録しています。ポート8080を占有しているために正常に開始できない場合、上記の図に示す例外情報が記録されます。例外情報をチェックすることで、Tomcatサーバーが正常に開始できない理由がわかります!
概要:Tomcatサーバーが正常に開始できない場合は、最初にJava_home環境変数が構成されているかどうかを確認し、Tomcatサーバーのポートが他のアプリケーションで占有されているかどうかを確認します。
これは、Java Web Developmentの入門書の例分析に関するこの記事の終わりです(要約1)。それがあなたに役立つことを願っています!