明確ではないものがあります。
@ModelAttribute
注釈は、jsp内のフォームをコントローラにバインドして、html形式で記述されたすべてのフィールドをコントローラで使用できるようにするために使用されます。
What is @ModelAttribute in Spring MVC?
そこで、基本的@ModelAttribute
アノテーションを付けるメソッドはPOSTリクエスト(フォーム送信)した後、landing point
方法として作業する必要があります。
<form:form action="/greeting" >
<form:input path="name" />
<form:input path="lastName" />
<input type="submit" value="Submit" />
</form:form>
public class ModelAttrExample {
String name;
String lastName;
///getter and setter...
}
JSP indexForm.jspとフォーム一度SpringController
@Controller
public class GreetingController {
@RequestMapping(value="/greeting", method=RequestMethod.GET)
public String greetingForm(Model model) {
model.addAttribute("", new ModelAttrExample());
return "indexForm";
}
@RequestMapping(value="/greeting", method=RequestMethod.POST)
public String greetingSubmit(@ModelAttribute ModelAttrExample example, Model model) {
example.getName();//same form value
example.getLastName(); //same form value
//do your logic here...
}
}
:
それでは、例を見てみましょう、次の2つの変数を持つPOJOを持っています提出されたgreetingSubmit()
メソッドがトリガーされ、ModelAttrExample
フォームのデータで満たされ、メソッド内で利用可能になります。
so ... @ModelAttributeは、HTMLフォームフィールドから値を取り出し、このデータをクラスインスタンス変数に入れるために使用されます。
私はのために... :)
出典
2016-03-24 10:57:18
daN
おかげ卿に依頼することを躊躇しないでそれは非常によく書かれて、あなたがより多くの情報が必要な場合は
を理解することは非常に簡単です 、あなたはSpringからこのチュートリアルに従うことをお勧めあなたの返信。実際には、リスト画面からレコードを開くときです。 FormControllerに移動し、そこからmodelAttribute関数に移動します。@ ModelAttribute( "modelAttrVar") public ModelAttr function(){} これは、dbから特定のレコードを抽出します。 func2()の後、modelAndViewを受け取り、最後にjspに行きます。そして、jspで、$ {modelAttrVar.var1}のようなmodelAttrVarモデルの属性を取得します。 –
これは、レコードを開くときに、ModelAndViewにModelAttrVarを追加することはありませんが、それでもjspに行き、modelAttrVarオブジェクトのデータがjspページの関連フィールドを埋めていることを意味します。どうやって? –
私はまだあなたの流れを理解していない、あなたは言った "func2()後に私たちはmodelAndView"を受信した、誰func2()を呼び出している?その方法でモデルとビューをどのように受け取るのですか?レコードのselectecをリストから表示するだけで済む場合、たとえばidを取得して渡すメソッドをトリガーし、dbからデータを取り出し、抽出された値をmodelでレンダリングすることができます。addAttribute( "modelAttrVar"、youExtracteInstanceOfmodelAttrVar); jspで$ {modelAttrVar.var1}の値を取得してください。コード全体を表示し、何をすべきかを正確に説明してください – daN