@PathVariable、@RequestParam等常用SpringMVC注解


   作者蓝石榴    由lan16转载自网络    更新于2015-10-03 22:18    已被浏览915次

1.代码:
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

/***
* 注解示例
* @author lan16 www.lan16.com
*
*/
@RequestMapping("/api")
@Controller
public class TestController {
  @RequestMapping(value="/test/{moblie}/{name}")
  public @ResponseBody String test(HttpServletRequest request,
    HttpServletResponse response,
    @PathVariable String moblie, @PathVariable String name,
    /**
     * required=false表示不传的话,会给参数赋值为null,required=true就是必须要有,
     * 如果用@RequestMapping注解的参数是int基本类型,但是required=false,这时如果
     * 不传参数值会报错,因为不传值,会赋值为null给int,这个不可以
     */
    @RequestParam(value = "id", required = false) Integer id){

    return null;
  }

}

2.说明:

  Controller控制器是通过服务接口定义的提供访问应用程序的一种行为,它解释用户的输入,将其转换成一个模型然后将试图呈献给用户。Spring MVC使用 @Controller定义控制器,它还允许自动检测定义在类路径下的组件并自动注册。
  我们可以 @RequestMapping注解将类似 “/api”这样的URL映射到整个类或特定的处理方法上。一般来说,类级别的注解映射特定的请求路径到表单控制器上,而方法级别的注解只是映射为一个特定的HTTP方法请求。
  在Spring MVC中,可以使用 @PathVariable注解方法参数并将其绑定到URI模板变量的值上,其中参数是不能为空的,可以有多个注解,例如代码中的参数moblie和参数name
  @RequestParam将请求的参数绑定到方法中的参数上。其实,即使不配置参数,注解也会默认使用该参数。required=false表示不传的话,会给参数赋值为null,required=true就是必须要有,如果用@RequestMapping注解的参数是int基本类型,但是required=false,这时如果不传参数值会报错,因为不传值,会赋值为null给int,这个是不可以的。
  @ResponseBody它的作用是将返回类型直接输入到HTTP response body中。@ResponseBody在输出JSON格式的数据时,会经常用到。

豫ICP备13022176号-2   鄂公网安备 42010602000416号   Copyright © 2013 - 2020 蓝石榴. All Rights Reserved  联系我 联系我 蓝石榴技术社区