Spring-MVC/ステップ・バイ・ステップ/Convention over configuration
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
[[Spring-MVC/ステップ・バイ・ステップ]]
#contents
2008/04/09からのアクセス回数 &counter;
** Spring-MVCの規約 [#y6b6dbdb]
Convention over configurationは、日本語では「規約は設定に...
設定に適切なデフォルト値を用意することによって、規約を守...
面倒な設定が不要になるということです。
また、Configurationには配置という意味もあり、ディレクトリ...
で定めることにより、適切なデフォルト値を用意することがで...
ように思えます。
Spring MVCでは、Model View Controllerにデフォルト値の規約...
** Controllerのデフォルトマッピング [#b6035539]
HTTPのURLで指定された要求を規約に従って振り分けているのが...
クラスです。
- MultiActionController以外のContollerクラスのサブクラス...
名前でHandlerMappingに登録されます。
例)WelcomeControllerなら/welcome*にマッピングされ、URL...
- MultiActionControllerの場合には、クラス名からController...
を指定します。
例)AdminControllerのloginメソッドの場合/admin/*にマッピ...
** Modelのデフォルトマッピング [#z178c8c8]
ModelAndViewクラスは、オブジェクトに名前をづけしないで登...
プログラム例
#pre{{
public ModelAndView handleRequest(HttpServletRequest ...
User user = // get the User doing the shopping ...
ModelAndView mav = new ModelAndView("displayShopp...
mav.addObject(user); <-- ここで、オブジェクト名が...
return mav;
}
}}
- オブジェクトが単一のオブジェクトの場合
例)x.y.Userのインスタンスが追加された場合、userがキーと...
- ハッシュマップの場合
例)java.util.HashMapの場合、hashMapがキーとなります。
- 配列の場合
例)x.y.Userの配列が追加された場合、userListがキーとなり...
- ArrayListが追加された場合
例) x.y.User要素のjava.util.ArrayListが追加された場合、u...
- HashSetが追加された場合
例)x.y.Foo要素のjava.util.HashSetが追加された場合、fooL...
''注意:空の配列、リスト、セットは登録されません。''
** Viewのデフォルトマッピング [#lf5ae557]
viewの名前が明示的に指定されていない場合、DefaultRequestT...
論理名を決定します。
Bean定義ファイルでviewNameTranslatorを指定します(マニュ...
#pre{{
<!-- this bean with the well known name generates vie...
<bean id="viewNameTranslator" class="org.springframew...
<bean class="x.y.RegistrationController">
<!-- inject dependencies as necessary -->
</bean>
<!-- maps request URLs to Controller names -->
<bean class="org.springframework.web.servlet.mvc.supp...
<bean id="viewResolver" class="org.springframework.we...
<property name="prefix" value="/WEB-INF/jsp/"/>
<property name="suffix" value=".jsp"/>
</bean>
}}
ここで、以下のようなRegistrationControllerの場合
#pre{{
public class RegistrationController implements Controller...
public ModelAndView handleRequest(HttpServletRequest ...
ModelAndView mav = new ModelAndView();// ビューの...
// 必要に応じてモデルにオブジェクトを登録
return mav;
}
}
}}}
ControllerClassNameHandlerMappingのマッピングキー(registr...
以下のURL
http://localhost:8080/registration.htm
のビュー名は、/WEB-INF/jsp/registration.jspとなります。
** コメント [#q137dcef]
この記事は、
#vote(おもしろかった[4],そうでもない[0],わかりずらい[1])
皆様のご意見、ご希望をお待ちしております。
#comment_kcaptcha
}}
終了行:
[[Spring-MVC/ステップ・バイ・ステップ]]
#contents
2008/04/09からのアクセス回数 &counter;
** Spring-MVCの規約 [#y6b6dbdb]
Convention over configurationは、日本語では「規約は設定に...
設定に適切なデフォルト値を用意することによって、規約を守...
面倒な設定が不要になるということです。
また、Configurationには配置という意味もあり、ディレクトリ...
で定めることにより、適切なデフォルト値を用意することがで...
ように思えます。
Spring MVCでは、Model View Controllerにデフォルト値の規約...
** Controllerのデフォルトマッピング [#b6035539]
HTTPのURLで指定された要求を規約に従って振り分けているのが...
クラスです。
- MultiActionController以外のContollerクラスのサブクラス...
名前でHandlerMappingに登録されます。
例)WelcomeControllerなら/welcome*にマッピングされ、URL...
- MultiActionControllerの場合には、クラス名からController...
を指定します。
例)AdminControllerのloginメソッドの場合/admin/*にマッピ...
** Modelのデフォルトマッピング [#z178c8c8]
ModelAndViewクラスは、オブジェクトに名前をづけしないで登...
プログラム例
#pre{{
public ModelAndView handleRequest(HttpServletRequest ...
User user = // get the User doing the shopping ...
ModelAndView mav = new ModelAndView("displayShopp...
mav.addObject(user); <-- ここで、オブジェクト名が...
return mav;
}
}}
- オブジェクトが単一のオブジェクトの場合
例)x.y.Userのインスタンスが追加された場合、userがキーと...
- ハッシュマップの場合
例)java.util.HashMapの場合、hashMapがキーとなります。
- 配列の場合
例)x.y.Userの配列が追加された場合、userListがキーとなり...
- ArrayListが追加された場合
例) x.y.User要素のjava.util.ArrayListが追加された場合、u...
- HashSetが追加された場合
例)x.y.Foo要素のjava.util.HashSetが追加された場合、fooL...
''注意:空の配列、リスト、セットは登録されません。''
** Viewのデフォルトマッピング [#lf5ae557]
viewの名前が明示的に指定されていない場合、DefaultRequestT...
論理名を決定します。
Bean定義ファイルでviewNameTranslatorを指定します(マニュ...
#pre{{
<!-- this bean with the well known name generates vie...
<bean id="viewNameTranslator" class="org.springframew...
<bean class="x.y.RegistrationController">
<!-- inject dependencies as necessary -->
</bean>
<!-- maps request URLs to Controller names -->
<bean class="org.springframework.web.servlet.mvc.supp...
<bean id="viewResolver" class="org.springframework.we...
<property name="prefix" value="/WEB-INF/jsp/"/>
<property name="suffix" value=".jsp"/>
</bean>
}}
ここで、以下のようなRegistrationControllerの場合
#pre{{
public class RegistrationController implements Controller...
public ModelAndView handleRequest(HttpServletRequest ...
ModelAndView mav = new ModelAndView();// ビューの...
// 必要に応じてモデルにオブジェクトを登録
return mav;
}
}
}}}
ControllerClassNameHandlerMappingのマッピングキー(registr...
以下のURL
http://localhost:8080/registration.htm
のビュー名は、/WEB-INF/jsp/registration.jspとなります。
** コメント [#q137dcef]
この記事は、
#vote(おもしろかった[4],そうでもない[0],わかりずらい[1])
皆様のご意見、ご希望をお待ちしております。
#comment_kcaptcha
}}
ページ名:
SmartDoc