SpringBoot Controller——Spring Boot后端学习(一)

运行环境

jdk 1.8
spring boot 2.6.1
maven 3.9.1
编译器 idea
参照1天搞定SpringBoot+Vue全栈开发的学习笔记

Maven

核心配置文件 pom.xml

server.port=80:配置默认端口为80

控制器

@Controller:返回页面+数据

@RestController:返回数据,默认会将返回的对象数据转换为JSON格式,便于前端处理

控制器前面不要忘记加这个,不然就报错了😭

路由映射

@RequestMapping注解负责URL的路由映射

@RequestMapping (value = “/hello”,method = RequestMethod.GET) <=>
@GetMapping(“/hello”)

常用参数

value:请求URL路径,支持URL模板,支持正则表达
(“/user”) (“/getJson/*.json”)

  • "*"代表任意字符
  • "**"匹配任意路径 优先级弱于
  • "?"匹配单个字符

method:HTTP请求方式
consumes:请求媒体类型(Content-Type)

GET请求

GET请求可以通过地址栏传递参数

@RequestParam:解决变量名称不匹配的问题
如传递变量名是nickname,但后台的命名时name,可以通过这个注解把nickname映射为name。但这个操作后,如果地址栏没有传递参数,也会报错,这就需要添加required的参数,required = false,地址栏设置为非必须传递参数

//http://localhost:8080/getTest2?nickname=xxx
@RequestMapping(value = "/getTest3",method = RequestMethod.GET)
public String getTest3(@RequestParam(value = "nickname",required = false) String name){
    System.out.println("nickname:"+name);
    return "GET请求";
}
POST请求

POST请求无法直接通过地址栏传递数据,此时可以通过postman模拟前端页面传递数据,进行后台调试。

前端传递的数据常见的有两种情况

x-www-form格式
在这里插入图片描述

JSON格式

JSON格式的请求模式与之前不同
如果传递JSON格式,必须要写@RequestBody

@RequestMapping(value = "/postTestJSON",method = RequestMethod.POST)
public String postTestJSON(@RequestBody User user){
    System.out.println(user);
    return "POST请求2";
}

封装

通过定义实体类User,可以方便地传递一组数据

public class User {
    private String username;
    private String password;

    public String getUsername(){return username;}
    public String getPassword(){return password;}
    public void setPassword(String password){this.password = password;}
    public void setUsername(String username){this.username = username;}

    @Override
    public String toString(){
        return "User{username="+getUsername()+",password="+getPassword()+"}";
    }
}

然后通过控制器进行控制

@RequestMapping(value = "/postTest",method = RequestMethod.POST)
public String postTest(User user){
    System.out.println(user);
    return "POST请求";
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值