ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

spring web 常用注解01

2021-05-13 10:01:50  阅读:184  来源: 互联网

标签:web 01 RequestMapping RequestParam spring value ResponseBody user String


常用注解01

@RequestMapping

@RequestMapping(“url”)

一般作用在Controller的方法上,作为请求的映射地址。
@RequestMapping(value = “/test1”)//类级别映射,可以没有,一般用于减少书写量

@RequestMapping("test1")
public class myController {
    //方法级别映射,必须有,那么这个方法的访问地址就是/test1/aaa
    @RequestMapping(value = "/aaa")
    public String test1() {
        return "test1";
    }
}

@RequestParam

@RequestParam(value=“参数名”,required=“true/false”,defaultValue="")

value:参数名
required:是否包含该参数,默认为true,表示该请求路径中必须包含该参数,如果不包含就报错。
defaultValue:默认参数值,如果设置了该值,required=true将失效,自动为false,如果没有传该参数,就使用默认值

处理 Content-Type 为 application/x-www-form-urlencoded 编码的数据。
将请求参数绑定到控制器的方法参数上(是springmvc中接收普通参数的注解)。

@RequestMapping("/test2")
public ModelAndView test2(@RequestParam("name") String name){
    ModelAndView mv = new ModelAndView();
    mv.setViewName("hello");
    mv.addObject("msg", "接收的请求参数:" + name);
    return mv;
}

@RequestBody

处理非 Content-Type: application/x-www-form-urlencoded编码格式的数据,比如:application/json、application/xml等类型的数据。
作用在形参列表上,用于将前台发送过来xml或json格式的数据封装为对应的JavaBean对象,封装时使用到的一个对象是系统默认配置的HttpMessageConverter进行解析,然后封装到形参上。
@RequestBody 将 HTTP 请求正文插入方法中,使用适合的 HttpMessageConverter 将请求体写入某个对象。

@RequestMapping("/logintest1")
@ResponseBody
public Object logintest1(@RequestBody User loginUser, 
					HttpSession session) {
    user = userService.checkLogin(loginUser);
    session.setAttribute("user", user);
    return new JsonResult(user);
}

@ResponseBody

作用在方法上的,@ResponseBody 表示该方法的返回结果直接写入 HTTP response body 中,一般在异步获取数据时使用(Ajax),在使用 @RequestMapping后,返回值通常解析为跳转路径,但是加上 @ResponseBody 后返回结果不会被解析为跳转路径,而是直接写入 HTTP response body 中。 比如异步获取 json 数据,加上 @ResponseBody 后,会直接返回 json 数据。

@RequestMapping("/logintest2")
@ResponseBody
public Object logintest2(String name, String password, 
					HttpSession session) {
    user = userService.checkLogin(name, password);
    session.setAttribute("user", user);
    return new JsonResult(user);
}

@PathVariable

识别URL里面的参数。

// 对应http://localhost:8080/hello/666?param1=111&param222
@RequestMapping("/hello/{id}")
public String getDetails(@PathVariable(value="id") String id,
  @RequestParam(value="param1", required=true) String param1,
  @RequestParam(value="param2", required=false) String param2){
   // xxxx
}

标签:web,01,RequestMapping,RequestParam,spring,value,ResponseBody,user,String
来源: https://blog.csdn.net/HappyDyer/article/details/116737370

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有