入力画面を作成するには当然ですが、入力画面用
のファイル(Html、jsp)とそのURLが必要になります。
【URLとファイル】
一覧表示用のURL(index.html) ファイル:index.jsp
検索条件入力用のURL(input.html) ファイル:input.jsp
そこで、いままでは指定をしていなかった
HandlerMappingの指定を行います。
※指定をしない場合はSpringMVCによって
自動的にBeanNameUrlHandlerMappingクラスが
使用されます。(今まではこれを使用していました)
BeanNameUrlHandlerMappingクラスはURLと1対1でマッピングするデフォルトの
マッピングクラスです。したがってURLと画面のマッピングの数だけ記述が必要に
なります。
SimpleUrlHandlerMappingクラスはコントローラのマッピングを一元管理するクラス
です。画面数が多くなる場合にまとめて管理できる便利なクラスです。さっそく使って
みましょう。
bookmng-1-servlet.xml
-------------------------------------------------------------------------------
'http://www.springframework.org/dtd/spring-beans.dtd'>
class='org.springframework.jdbc.datasource.DriverManagerDataSource'>
-------------------------------------------------------------------------------
input.htmlに対するコントローラはinputControllerで、以下のように単純にビューを
指定するだけのクラスです。
public class InputController implements Controller{
public ModelAndView handleRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception {
// 戻り値となるModelAndViewインスタンスを作成
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName('/WEB-INF/jsp/input.jsp');
return modelAndView;
}
}
input.jspは、isbn番号を入力して検索ボタンを押すだけの簡単な画面です。
(添付参照)
あとは、indexControllerクラスでinput.jspからリクエストからisbn番号を取得
して、今まで固定で指定していた部分へ代入するだけです。
以上で入力画面からisbn番号を入力して書籍を検索する簡単なアプリが出来
上がりました。 ただし、入力値チェックなどはまだ一切行っていません。
ソースファイル、プロジェクトの構成は専用HPで確認できます。
