MENU

コントローラとビューの連携

はじめに

Webアプリケーションでは、画面での入力や画面遷移に合わせてサーバで処理をしその結果を画面に反映させる、というのが一連の流れになります。

そのための第一段階として、コントローラとビューの連携が必要になってきます。

ビュー→コントローラの値の受け渡し。

まずは画面操作によるサーバへの値の受け渡しです。
画面操作は何かフォームの入力などや、画面の遷移が当て余ります

今回は名前を入力し、コントローラに渡す機能を考えます。
まずはviewを準備します。

actionの後ろがURLになり、コントローラで受け取る際の目印になります。

それではこちらの画面からのフォーム送信を受け取る機能をコントローラに用意しましょう。
URLは/viewToControllerとします。

アノテーションの部分を見るとわかると思いますが、Get送信とPost送信の二種類用意しています。
一つは画面初期表示を行うためのものともう一つは画面の操作を受けとるためのものを用意しています。(今回でいえばindexが画面表示用でsendがフォーム送信受け取り用になります)

RequestPramで指定したnameは、フォームのテキスト欄の名称になります。

コントローラ→ビュー

上の画像に出ていたModelAndViewですが、こちらは遷移先のviewの名前や画面に送信するパラメータの設定をまとめることができます。
これによってコントローラからビューに値を渡すことができます。
ビュー側はコントローラから値を受け取るための準備が必要です。

ビュー側で記述したこの行がコントローラからの値を受け取る記述になります。
コントローラ側でmsgに値を入力しているので、それをビュー側で引っ張り出すイメージになります。

それではここまでのコードを実際に記述しビルドして実行してみてください。

その際のURLはhttp://localhost:8080/viewToControllerでフォーム入力画面を開くことができます。

課題

ここまでに作成した名前を入力するページに血液型を入力し、その結果が画面に表示されるという機能を実装してください。

目次