Spring MVC学习笔记(一)

在方法上使用@ModelAttribute

@ModelAttribute注解可以使用在方法或方法的参数上。

@ModelAttribute注解表明方法的目的是添加一个或多个model属性。这样的方法和@RequestMapping方法支持同样类型的参数,但是不能被直接映射给请求。在控制器中@ModelAttribute方法在@RequestMapping方法之前执行。

@ModelAttribute方法用普通必须属性填充model,比如使用国家、宠物类型或回收一个类似于代表HTML表单数据的Accountcommand对象来填充drop-dwon

@ModelAttribute方法有两种模式。首先是方法添加属性并隐式的返回,其次,方法接收一个Model并向其中添加多个model属性。两种模式可以根据需要选择。

一个控制器可以有多个@ModelAttribute方法。所有这些方法都在@RequestMapping方法之前被执行。

@ModelAttribute方法还可以定义在一个@ControllerAdvice-annotated类中并作用于所有的控制器。@ControllerAdvice注解是一个组件注解,允许实现类通过classpath搜索自动加载。

@ModelAttribute注解同样可以用在@RequestMapping方法上。这种情况下@RequestMapping方法的返回值将被解释为一个model属性而不是view的名字。view名字有view名约定得出,方法相当于无返回类型。


你可能感兴趣的:(java,spring,mvc,@ModelAttribute)