本文主要记录几个注释的使用方法。

1. @Controller : 处理http请求

2. @RequestMapping : 配置URL映射

3. @RestController : 组合注解,spring 4之后新加的注解,相当于@Controller和@ResponseBody配合使用

4. @PathVariable : 获取URL中的数据

5. @RequestParam : 获取请求的参数的值

6. @GetMapping/@PostMapping : 组合注解

使用方法:

1. @Controller

需要与模板配合使用。

pom.xml 中添加模板依赖,代码如下:

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

在resources下创建文件夹templates,在templates下创建index.html,index.html内容随便写。

编辑Java类,代码如下:

@Controller
public class HelloController {
@RequestMapping(value="/say", method=RequestMethod.GET)
public String sayHello(@PathVariable("id") int myId){
return "index";
}
}

在浏览器中访问http://127.0.0.1:8080/say即可看到index.html页面内容

2. @RequestMapping

上面代码已经使用了该注解。

3. @RestController

组合注解,相当于@Controller和@ResponseBody配合使用

4. @PathVariable

获取URL中的数据,代码如下:

@RestController
public class HelloController {
@RequestMapping(value="/say/{id}",method=RequestMethod.GET)
public String sayHello(@PathVariable("id") int myId){
return "myId is " + myId;
}
}

在浏览器中访问http://127.0.0.1:8080/say/111即可查看结果

5. @RequestParam

获取请求的参数的值,代码如下:

@RestController
public class HelloController {
@RequestMapping(value ="/say", method=RequestMethod.GET)
public String sayHello( @RequestParam("id") int myId){
return "myId is " + myId;
}
}

在浏览器中访问http://127.0.0.1:8080/say?id=111即可查看结果

也可以设置参数的默认值,代码如下:

@RestController
public class HelloController {
@RequestMapping(value ="/say", method=RequestMethod.GET)
public String sayHello( @RequestParam( value = "id", required = false, defaultValue = "0") int myId){
return "myId is " + myId;
}
}

这样可以不传参数id。在浏览器中访问http://127.0.0.1:8080/say即可查看结果

6. @GetMapping/@PostMapping

组合注解

@GetMapping(value = "/say") 相当于 @RequestMapping(value = "/say", method = RequestMethod.GET)

@PostMapping(value = "/say") 相当于 @RequestMapping(value = "/say", method = RequestMethod.POST)

除此之外,还有组合注解@PutMapping、@DeleteMapping等等。

最新文章

  1. jQuery 跨域访问的三种方式 No &#39;Access-Control-Allow-Origin&#39; header is present on the reque
  2. python 去掉列表(list)中的所有空元素
  3. [转] MySql 优化 大数据优化
  4. code blocks 如何实现一键代码格式化
  5. 谷歌上不了?hoststool一键搞定host 支持在线更新
  6. wp8 自定义相机+nokia滤镜+录制amr音频
  7. RESTLET开发实例(三)基于spring的REST服务
  8. Excel2003读取sqlserver数据库表数据(图)
  9. [转]How To Use CSS3 Media Queries To Create a Mobile Version of Your Website
  10. hdu_5754_Life Winner Bo(博弈)
  11. 框架和css基础
  12. vue 2.0 路由切换以及组件缓存源代码重点难点分析
  13. ThinkPhp3.2.3 使用phpExcel导入数据
  14. JavaScript 数组方法
  15. python_MySQL
  16. vue 全局变量
  17. JMS的P2P和PUB/SUB区别和应用场景介绍【转】
  18. chrome flash
  19. js 浏览器页面切换事件
  20. Linux环境PHP5.5以上连接SqlServer2008

热门文章

  1. [转载]win10(64bit)上安装MySQL-python
  2. python3.7 random模块
  3. 权限组件(12):自动发现项目中有别名的URL
  4. 从0到n-1中随机等概率输出m个不同的数
  5. Codeforces Round #271 (Div. 2) D Flowers【计数dp】
  6. Maven 用Eclipse创建web项目后报错的解决方式
  7. Centos7 使用 Supervisor 守护进程 Celery
  8. linux学习(三) -- lnmp环境切换php版本,并安装相应redis扩展
  9. Web 安全问题 rel=&quot;noopener nofollw&quot;
  10. SQL Server2012使用导入和导出向导时,用sql语句作为数据源,出现数据源类型会变成202或者203