zoukankan      html  css  js  c++  java
  • Spring Boot学习——Controller的使用

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

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

  • 相关阅读:
    ThinkPHP框架 做个简单表单 添加数据例子__ACTION__ __SELF__
    ThinkPHP框架 系统规定的方法查询数据库内容!!同时也支持原生的SQL语句!
    ThinkPHP框架 基础 链接数据库
    ThinkPHP框架 3.2.2 获取系统常量信息 连接数据库 命名空间的理解
    ThinkPHP框架 自定义 Empty 方法保护本地信息不被暴露!!!
    Smarty模板保留缓存
    this指向
    phpcms v9 的表单向导功能的使用方法 附多个案例
    phpcms标签整理_当前栏目调用
    转载]PhpCms V9调用指定栏目子栏目文章的两种方法
  • 原文地址:https://www.cnblogs.com/aston/p/7242151.html
Copyright © 2011-2022 走看看