0

ライン1:

public ModelAndView viewCustomerDetails(@RequestParam("custId") Integer customerId, @RequestParam("categoryName") String categoryName, HttpServletRequest request) throws BusinessException{

2行目:

public ModelAndView viewCustomerDetails(@RequestMapping("custId") Integer customerId, @RequestMapping("categoryName") String categoryName, HttpServletRequest request) throws BusinessException{

私は自分のプロジェクトコードを徹底的に調べており、いくつかの混乱が@RequestParamあり@RequestMapping、時には見つけ@RequestParamたり、時には混乱したりしてい@RequestMappingます。custId私の理解では、両方とも値をcustomerIdデータメンバーに割り当てます。

私のjspファイルの一部:

<form:input mandatory="true" id="CustNameTxt" path="custName" cssClass="txtfield controlWidth" readonly="false" />

私の問題をよりよく理解するために、Line2で編集を行いました

4

2 に答える 2

6

あなたはリンゴをナシと比較します。どちらのアノテーションにも共通点はありませんが、これは Spring MVC アノテーションであり、 の使用法@RequestMapping("categoryName")間違っています。

  • @RequestMappingリクエスト URL を Java メソッドにマップするためのクラスまたはメソッドのアノテーションです。
  • @RequestParamリクエスト パラメータをメソッド パラメータにバインドするための (メソッド) フィールド アノテーションです。

たぶんあなたは とマッシュアップ@RequestMapping@PathVariable、あなたの質問は と の違いについてです@RequestParam-@PathVariableそして、この答えを見てください。

于 2015-07-14T06:05:36.563 に答える
1

@RequestMappingリクエストを resource にマップします。パラメータに含まれていないメソッドで使用されます

@Controller は、クラスが web-application-context.xml の context:component-scan によって自動的に登録される Spring MVC コントローラー ステレオタイプであることを示します。メソッドの @RequestMapping アノテーションは、value 属性を使用してメソッドをパスにマップします。method 属性は、HTTP 要求タイプ (例: GET、POST、DELETE) を示すために使用されます。

@RequestParamリソース URL のパラメータをメソッドの引数にバインドします。

于 2015-07-14T05:53:17.813 に答える