Webアプリの設計JavaのWebアプリケーション開発フレームワークによる、Webサイト開発の顛末記です。備忘録的に記録しています。実際に動くソースコードを多用して説明していますので、これからEclipseや、Spring-MVCを始めたいと思っている人にとって、少しでも参考になれば幸いです。Webアプリの設計3-1)Webアプリの基本設計ここからいよいよプログラミングの世界に入っていきます。MVCって何なのかを、ものすごく大雑把に数行で解説しておきます。大まかな動作手順として、ユーザー(ブラウザ)からリクエストされたURLとパラメータ(入力データ)はまず、Spring-MVCのDispatcherServletにより処理されます。パラメータは、データモデル(Model)化されます。URLは、HandlerMappingに渡され、マッピングされたControllerクラスを起動します。Controllerは、受け取ったパラメータ(データモデル)を適切に処理し、その処理結果であるデータを、Modelを介してHTML(View)に返却します。これがModel-View-Controllerの基本動作原理です。非常に丁寧に詳しく解説されている秀逸なサイトがあるので、ご紹介しておきます。Frameworkを熟読されることをお勧めします。次に、soracaneさんのホームページとてもためになるお話がたくさん載っているので、是非一読されることをお勧めします。Javaでコーディングを始めたいとお思いでしょうが、そうは問屋が卸しません。崖から転落する事だってあるかもしれません。安全に散策を楽しむためには、あらかじめ地図とコンパスとそれに基づく計画が必要になります。頭を冷やして、これから自分の進む道を冷静に見渡しましょう。プログラム開発における地図とコンパスに基づく計画は、いわゆる「基本設計」と呼ばれるものです。アプリケーション全体の「憲法」にあたる部分で、プログラム開発にとって一番重要な部分です。基本設計書の出来次第で、アプリケーションの性能や品質に直結しますので、まず、しっかりとこれからの方針を計画しましょう。それでは、あらためて今回のSpring-MVC散策の目的を、基本設計書という目線で確認することにします。今回の散策の目標は、Spring-MVCとThymeleafとMyBatisを使ってWebアプリケーションを作ることです。大雑把ですが、今回の目標のロードマップを図にしてみました。自分で何か作る必要はありませんが、アプリケーション全体の関連性を把握する目的で書いてあります。自分で作らないといけないのが。白抜きの枠の部分となります。この内今回もっとも注目する部分は、Spring-MVCの処理に直結する、view(HTML)とコントローラとなります。うーん、こうやって眺めると、随分遠出の散歩になる予感がしますねぇ。次は、これをもう少し実装レベルに落とし込んだ詳細設計を考えてみます。詳細設計といっても、今回は業務フローとかはないので、これから作成するプログラムやコンテンツをどこにどう配置するかというフォルダの整理を行います。以下が、今回開発する予定の具体的なフォルダ階層図です。このフォルダ階層の構成は、あくまで私が日常使用している自分スタイルの構成で人によってスタイルは様々なので、自由に構成を決めてもなんら問題はありません。詳細設計を決めたところで、Eclipseの「ナビゲータ」でフォルダを設計通りに作成しましょう。「/src/main/java」を選択して、マウス右ボタンクリックします。「新規」ー「フォルダ」を選択します。「新規フォルダー」画面が開くので、フォルダー名にまず「jp」を入力して「完了」ボタンをクリックします。この要領で、上のパッケージ構成/コンテンツ構成のフォルダ構成を全て作成します。作成完了後の「ナビゲーター」の図は以下のようになります。^^);細かいことを言えば、他にもまだ細々決めることはありますが、他は大体定型的なものなので場面に応じて、おいおい説明してゆきます。次は、JavaプログラムをSpring-MVCで動作させるための、重要な部分Spring-MVCの初期設定を行います。え~!、まだプログラム書けないの?はい、残念ながら。これをやらないと、せっかく、プログラム書いてもSpring-MVCが動かないので、あきらめて頑張りましょう。3-1)Webアプリの基本設計HOME4-1)web.xml。