1 Java中Get和Post的使用-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Java中Get和Post的使用

jf_96884364 来源:jf_96884364 作者:jf_96884364 2023-01-12 15:38 次阅读

1 Get请求数据

项目地址:https://github.com/Snowstorm0/learn-get-post

1.1 Controller

文件名MyController,内容为:

@RestController
@RequestMapping("/homepage")
public class MyController {
    @Autowired
    MyService myService;

    @GetMapping("/learnGet")
    public String learnGet(){
        return myService.learnGet();
    }
}

1.2 Service

文件名MyService,内容为:

@Service
@EnableScheduling
public class MyService {
    public String learnGet(){
        Long timeLong = System.currentTimeMillis();
        SimpleDateFormat timeFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //设置格式
        String timeString = timeFormat.format(timeLong);
        return timeString;
    }
}

1.3 Application

在application.properties配置:

# 设置端口号
server.port=8888

1.4 Postman

配置Get,地址为: http://localhost:8888/homepage/returnTime 。

即可获得当前时间戳。

2 Post接收数据

项目地址:https://github.com/Snowstorm0/learn-get-post

2.1 Controller

文件名MyController,内容为:

@RestController
@RequestMapping("/homepage")
public class MyController {
    @Autowired
    MyService myService;
    @PostMapping("/postReceive")
    public Map postReceive(@RequestParam("number") int number, @RequestParam("name") String name) {
        return myService.postReceive(number, name);
    }
    @PostMapping("/postReceiveByMap")
    public Map postReceiveByMap(@RequestParam Map map) {
        System.out.println("map:" + map + "\\n");
        return myService.postReceiveByMap(map);
    }
}

2.2 Service

文件名MyService,内容为:

@Service
@EnableScheduling
public class MyService {
    public Map postReceive(int number, String name){
        Map res = new HashMap<>();
        res.put("number", number);
        res.put("name", name);
        return res;
    }
    public Map postReceiveByMap(Map map){
        int number = map.get("number") == null ? 0 : Integer.parseInt((String) map.get("number"));
        String name = map.get("name") == null ? "" : (String)map.get("name");
        Map res = new HashMap<>();
        res.put("number", number);
        res.put("name", name);
        System.out.println("map:" + map + "\\n");
        System.out.println("res:" + res + "\\n");
        return res;
    }

2.3 Application

在application.properties配置:

# 设置端口号
server.port=8888

2.4 Postman

配置Get,地址为: http://localhost:8888/homepage/returnTime 。

即可获得输出。

3 Post发送数据

项目地址:https://github.com/Snowstorm0/learn-post-send

需要注意,RestTemplate在postForObject时,用MultiValueMap,不可使用HashMap。

3.1 Controller

文件名MyController,内容为:

@RestController
@RequestMapping("/homepage")
public class MyController {

    @Autowired
    MyService myService;

    @PostMapping("/postSend")
    public Map postSend() {
        return myService.postSend();
    }
}

3.2 Service

文件名MyService,内容为:

@Service
@EnableScheduling
public class MyService {
    @Resource
    private RestTemplate restTemplate;
    String URL = "http://localhost:8888/homepage/postReceiveByMap";

    public Map postSend(){
        Map sendData = new HashMap<>();
        sendData.put("number", 3);
        sendData.put("name", "张三");
        ResponseEntity responseData = restTemplate.postForEntity(URL, sendData, ResponseResult.class);
        Map returnData = new HashMap<>();
        returnData.put("StatusCode:", responseData.getStatusCode());
        returnData.put("Body:", responseData.getBody());
        return returnData;
    }
}

3.3 ResponseResult

public class ResponseResult {

    private int number;
    private String name;

    public ResponseResult(){
    }

    public int getNumber() {
        return number;
    }
    public void setNumber(int number) {
        this.number = number;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "ResponseResult [number=" + number + ",name=" + name + "]";
    }
}

3.4 Config

@Configuration
public class Config {
    @Bean
    public RestTemplate restTemplate(RestTemplateBuilder builder){
        return builder.build();
    }
}

3.5 Application

在application.properties配置:

# 设置端口号
server.port=8889

3.6 Postman

配置Post,地址为: http://localhost:8889/homepage/postSend

即可获得输出。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    19

    文章

    2966

    浏览量

    104700
  • Controller
    +关注

    关注

    0

    文章

    397

    浏览量

    57090
  • GitHub
    +关注

    关注

    3

    文章

    468

    浏览量

    16427
收藏 人收藏

    评论

    相关推荐

    请问GSM模块POST方式发送数据失败,GET请求却成功了是怎么回事?

    POST请求数据写进去失败了,GET请求成功,不知道是不是POST指令写错了,求原子哥解答POST请求:AT+HTTPPARA="URL","http
    发表于 06-11 04:35

    labview实现登录微信(不用Python节点,直接面向底层post协议)

    就会一通百通,不光python可以登录微信,C,VB,Java,labview,下面来展示原理: 核心关键点:http的post请求,get请求,字符转码,根据接口解说实现功能, 注意:请求不能太快,0.5秒左右
    发表于 06-20 18:18

    GETPOST的请求示例流程

    WebClient软件包提供两个HTTPClient示例程序,分别用于演示软件包支持的GETPOST功能,完成数据的上传与下载。
    发表于 04-02 06:34

    如何通过GETPOST请求控制pwm占空比?

    我已经将我的 ESP 设置为访问点,并尝试通过 GETPOST 请求控制 pwm 占空比。我在 html 端使用以下 jquery 代码:代码:全选$.post("http
    发表于 02-28 08:03

    如何在POST标注设置正文?

    我有一个连接到 esp8266 的湿度和温度传感器,现在我想将数据发送到云端。我无法上班的是 POST 电话。下面的 POST 请求在 Auth() 函数返回一条错误消息,告诉我正文没有按预期发送
    发表于 05-08 06:24

    ESP8266 AT模式开发GETPOST怎么填写?

    ESP8266AT模式开发GETPOST怎么填写?
    发表于 11-09 07:40

    什么是POST

    什么是POST POST指系统在接通电源后执行一个自我检查的例行程序,包括对CPU、主板、基本的640K内存、1M以上的扩展内存、系统的ROM BI
    发表于 05-24 23:27 7150次阅读

    http请求 get post

    ; importjava.util.List; importjava.util.Map;publicclassHttpRequest{/** * 向指定URL发送GET方法的请求 * *@paramurl * 发送请求
    发表于 09-27 10:36 16次下载

    PHPREQUEST和POSTGET有什么区别

    PHP中有$_REQUEST与$_POST、$_GET用于接受表单数据。 一、$_REQUEST与$_POST、$_GET的区别和特点 $_REQUEST[]具用$_
    发表于 02-19 14:26 2次下载
    PHP<b class='flag-5'>中</b>REQUEST和<b class='flag-5'>POST</b>及<b class='flag-5'>GET</b>有什么区别

    getpost的请求一些区别

    今天再次看到这个问题,我也有了一些新的理解和感触,临时回顾了一下 getpost 的请求的一些区别。
    的头像 发表于 09-07 10:00 1393次阅读

    JavarestTemplate携带Header请求

    :userName}" ); 创建请求方式: HttpEntity POST请求 restTemplate发送POST请求时可以通过如下方法获取 ResponseEntity
    的头像 发表于 03-09 14:43 1158次阅读

    HTTP请求报文:GETPOST的区别

    GETPOST 其实都是 HTTP 的请求方法。除了这 2 个请求方法之外,HTTP 还有 HEAD、PUT、DELETE、TRACE、CONNECT、OPTIONS 这 6 个请求方法。
    发表于 04-10 10:11 2340次阅读

    HTTPGETPOST的区别是什么?

    GETPOST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。 最直观的区别就是GET把参数包含在URLPO
    发表于 08-05 12:21 483次阅读

    所有接口都用post请求的原因

    查看上面的区别,就会发现post在发送数据量大的请求时优势很显示,get则更适合获取静态资源、简单的查询等接口。 我个人在开发接口的时候也会注意,将简单的查询请求使用get方法,其他增、删、改、复杂的查询请求都可以使用
    发表于 08-24 10:06 406次阅读
    所有接口都用<b class='flag-5'>post</b>请求的原因

    HTTP GETPOST 的区别

    一、概述 HTTP 的请求报文 GET 方法的特点 POST 方法的特点 GETPOST 的区别 二、HTTP 的请求报文 首先我们要解决的第一个问题是:
    的头像 发表于 11-11 14:40 990次阅读
    HTTP <b class='flag-5'>中</b><b class='flag-5'>GET</b> 和 <b class='flag-5'>POST</b> 的区别