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

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等等。

Spring Boot学习——Controller的使用的更多相关文章

  1. Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客

    ==他的博客应该不错,没有细看 Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客 http://blog.csdn.net/u012706811/article/det ...

  2. Spring boot学习1 构建微服务:Spring boot 入门篇

    Spring boot学习1 构建微服务:Spring boot 入门篇 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框 ...

  3. 转载:spring boot学习

    Spring Boot学习 Spring Boot是为了简化Spring应用的创建.运行.调试.部署等而出现的,使用它可以做到专注于Spring应用的开发,而无需过多关注XML的配置. 简单来说,它提 ...

  4. Spring Boot 学习方法论-如何正确的入门 Spring Boot

    想要入门 Spring Boot,那么什么样的教程是符合初学者学习的(没有太多的Java基础但有一些程序基础或者软件编程知识). 这恰好能够勾出很多问题,比如是文章图文教程适合还是视频教程适合零基础初 ...

  5. Spring Boot 学习笔记(六) 整合 RESTful 参数传递

    Spring Boot 学习笔记 源码地址 Spring Boot 学习笔记(一) hello world Spring Boot 学习笔记(二) 整合 log4j2 Spring Boot 学习笔记 ...

  6. Github点赞超多的Spring Boot学习教程+实战项目推荐!

    Github点赞接近 100k 的Spring Boot学习教程+实战项目推荐!   很明显的一个现象,除了一些老项目,现在 Java 后端项目基本都是基于 Spring Boot 进行开发,毕竟它这 ...

  7. Spring Boot学习大全(入门)

    Spring Boot学习(入门) 1.了解Spring boot Spring boot的官网(https://spring.io),我们需要的一些jar包,配置文件都可以在下载.添置书签后,我自己 ...

  8. spring boot 学习资料

    spring boot 学习资料: 学习资料 网址 Spring Boot Cookbook-极客学院 http://wiki.jikexueyuan.com/project/spring-boot- ...

  9. Spring Boot学习笔记2——基本使用之最佳实践[z]

    前言 在上一篇文章Spring Boot 学习笔记1——初体验之3分钟启动你的Web应用已经对Spring Boot的基本体系与基本使用进行了学习,本文主要目的是更加进一步的来说明对于Spring B ...

随机推荐

  1. 【PHP】php中json_decode()和json_encode()

    1.json_decode() json_decode (PHP 5 >= 5.2.0, PECL json >= 1.2.0) json_decode — 对 JSON 格式的字符串进行 ...

  2. tp5 修改自带success或error跳转模板页面

    tp5 修改自带success或error跳转模板页面 我们在使用tp5或者tp3.2的时候,用的成功或者失败跳转提示页面一般是用框架的.在后续开发过程中,根据实际项目需要,也是可以更改的,在此分享一 ...

  3. Django基于类的增删改查,简单逻辑都不用写

    Django是Python中一个非常牛逼的web框架,他帮我们做了很多事,里边也提前封装了很多牛逼的功能,用起来简直不要太爽,在写网站的过程中,增删改查这几个基本的功能我们是经常会用到,Django把 ...

  4. 43.VUE学习之--组件之使用.sync修饰符与computed计算属性超简单的实现美团购物车原理

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 动态规划:最长上升子序列之基础(经典算法 n^2)

    解题心得: 1.注意动态转移方程式,d[j]+1>d[i]>?d[i]=d[j]+1:d[i] 2.动态规划的基本思想:将大的问题化为小的,再逐步扩大得到答案,但是小问题的基本性质要和大的 ...

  6. 03015_JSTL技术

    1.JSTL概述 (1)JSP(JSP Standard Tap Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能.jstl出现的目的同el一样也是要替代js ...

  7. 了解JavaScript核心精髓(二)

    1.字符串操作 //声明字符串 var str = "abcd"; var str = new String("abcd") //截取字符串 console.l ...

  8. JVM(8):JVM知识点总览-高级Java工程师面试必备

    http://www.importnew.com/23792.html jvm 总体梳理 jvm体系总体分四大块: 类的加载机制 jvm内存结构 GC算法 垃圾回收 GC分析 命令调优 当然这些知识点 ...

  9. PHP共享内存的应用shmop系列

    简单的说明 可能很少情况会使用PHP来操控共享内存,一方面在内存的控制上,MC已经提供了一套很好的方式,另一方面,自己来操控内存的难度较大,内存的读写与转存,包括后面可能会用到的存储策略,要是没有一定 ...

  10. PHP算法面试题目

    1.使用PHP描述冒泡排序和快速排序算法,对象可以是一个数组 //冒泡排序(数组排序) functionbubble_sort($array){       $count = count($array ...