1.使用在方法上
使用在方法上,则被修饰的方法将会在当前类的任意控制器方法执行之前执行,该方法返回的返回值会自动存入model供后续使用
@ModelAttribute("mk1")
public String mx(){
System.out.println("mx...");
return "abc";
}
2.使用在控制器方法参数之前
使用在控制器方法参数之前,则会从model中获取属性值赋值到被修饰的方法参数上
@RequestMapping("/test02.action")
public void test02(@ModelAttribute("mk1") String mk1){
System.out.println(mk1);
}
3.完整代码
package cn.tedu.web;
import org.springframework.stereotype.Component;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Map;
@Component
@RequestMapping("/my04")
public class MyController04 {
@ModelAttribute("mk1")
public String mx(){
System.out.println("mx...");
return "abc";
}
@RequestMapping("/test02.action")
public void test02(@ModelAttribute("mk1") String mk1){
System.out.println(mk1);
}
}