Spring MVC 注解说明

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35008719/article/details/53241190

基于注解的控制器
优点:
1.一个控制器类可以处理多个动作(而一个实现了Controller接口的控制器只能处理一个动作)。这 样就可以吧相关的操作写在同一个控制器类中了,减少了应用程序中类的数量。
2.基于注解的控制器的请求映射不需要存储在配置文件中。使用RequestMapping注释类型,就可以对一个方法进行请求处理。

@Controller

@Controller 负责注册一个bean 到spring 上下文中,bean 的ID 默认为
类名称开头字母小写,你也可以自己指定,如下

方法一:
@Controller
public class TestController {}

方法二:
@Controller(“tmpController”)
public class TestController {}

@RequestMapping

1.@RequestMapping用来定义访问的URL,你可以为整个类定义一个@RequestMapping,

或者为每个方法指定一个@RequestMapping。

把@RequestMapping放在类级别上,这可令它与方法级别上的注解协同工作,取得缩小选择范围的效果。

例如:
@RequestMapping(“/test”)
public class TestController {}
则,该类下的所有访问路径都在/test之下。

2.将@RequestMapping用于整个类不是必须的,如果没有配置,所有的方法

的访问路径配置将是完全独立的,没有任何关联。

3.完整的参数项为:@RequestMapping(value=”“,method ={“”,”“},headers={},params={“”,”“}),

各参数说明如下:
value :String[] 设置访问地址

method: RequestMethod[]设置访问方式,字符数组,查看RequestMethod
类,包括GET, HEAD, POST, PUT, DELETE, OPTIONS, TRACE,常用
RequestMethod.GET,RequestMethod.POST

headers:String[] headers一般结合method = RequestMethod.POST使用

params: String[] 访问参数设置,字符数组 例如:userId=id

@Autowired

将依赖注入到Spring MVC控制器的最简单的方法就是通过注解@Autowired到字段或方法。

Autowired注释类型属于org.springframework.beans.factory.annotation包。

@Service

为了能被作为以来注入,类必须要注明为@Service。

该类型是org.springframework.stereotype包的成员。

Service注释类型指示类是一个服务。

@ModelAttribute

  1. 带@ModelAttribute注解的方法会将其输入的货创建的参数对象添加到Model对象中(若方法中没有显示添加)。
  2. 标注一个非请求的处理方法。被@ModelAttribute注释的方法会在每次调用该控制器的请求方法是被调用。这意味着,如果一个控制器类有两个请求处理方法,以及一个有@ModelAttribute注解的方法,该方法的调用次数会比每个处理请求方法更频繁。
  3. Spring MVC会在调用请求处理方法之前调用带@ModelAttribute注解的方法。带@ModelAttribute注解的方法可以返回一个对象或一个void类型。如果返回一个对象,则返回对象会自动添加到Model中。若方法返回void,则还必须添加一个Model类型的参数,并自行将实例添加到Model中。

未完待续…….

猜你喜欢

转载自blog.csdn.net/qq_35008719/article/details/53241190