Spring中请求数据传递和控制接受

举报
高彬滔 发表于 2023/03/30 22:46:11 2023/03/30
【摘要】 系统功能编码流程页面提交数据的方法直接通过url请求地址通过 “?” 拼接请求参数的方式通过页面的from表单submit类型的按钮提交的方式(get和post)通过JavaScrip(JQ),Ajax异步请求提交数据。(数据可以是通过form表单,或是通过其他方式获得的数据)当与前端获取参数一致的时候:@RestControllerpublic class HelloController ...

系统功能编码流程

image.png

页面提交数据的方法

  1. 直接通过url请求地址通过 “?” 拼接请求参数的方式
  2. 通过页面的from表单submit类型的按钮提交的方式(get和post)
  3. 通过JavaScrip(JQ),Ajax异步请求提交数据。(数据可以是通过form表单,或是通过其他方式获得的数据)

当与前端获取参数一致的时候:

@RestController
public class HelloController {

![image.png](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/8fd5e22cc3c94148897b6f5cfb3a85eb~tplv-k3u1fbpfcp-watermark.image?)
![image.png](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/cb87111dd2144d33809478519f96532a~tplv-k3u1fbpfcp-watermark.image?)
    @GetMapping("/hello")
    public String hello(String username){
        return "Hello"+username;
    }
}
复制代码

当输入自己本地地址和端口号后:

image.png

当与前端获取参数不一致的时候: 我们需要加上@RequestParam这个注解

@GetMapping("loginById")
public  void loginById(@RequestParam(value = "username",required = false) String userId,String password){
    System.out.println("userId"+userId);
    System.out.println("password:" +password);

}
复制代码

这时候可以获取到数据,而且当少一个参数的时候会返回Null

图中是两次获取的结果

image.png

也可以增加一个类:在这里面写代码逻辑

image.png

通过Http请求

@PostMapping("addWithReq")
public void addWithReq(HttpServletRequest req) {
    System.out.println(req.getParameter("username"));
    Map<String, String[]> paramMap = req.getParameterMap();
    System.out.println(paramMap.get("age")[0]);

}
复制代码

如果我想把密码等数据隐藏的时候,可以把GetMapping改为PostMapping,但是浏览器只能访问Get

image.png

这时候可以在Http中创建请求

image.png
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。