restTemplate 远程调用

RestTemplate是spring-web-xxx.jar包中提供的Http协议实现类,与之前学习的HttpClient功能类似。也就是说导入spring-boot-starter-web的项目可以直接使用RestTemplate。
在该类中主要针对6类请求方式封装的方法。

在这里插入图片描述

调用方代码

   //map传参
    @RequestMapping("/demo1")
    public void  testForMap(@RequestParam(value = "name") String name,@RequestParam(value = "age") String age){
        System.out.println("name+age = " + name + age);
    }
    //restful风格传参
    @RequestMapping("/demo2/{name}/{age}")
    public void  testForRestFul(@PathVariable String name, @PathVariable String age){
        System.out.println("name+age = " + name + age);

    }
    //不定项参数
@RequestMapping("/demo3")
public String demo2(String name,int age){
    return "name:"+name+",age:"+age;
}
  @Test
    void testRestForMap(){
        RestTemplate restTemplate = new RestTemplate();
        Map<String, String> map = new HashMap<>();
        map.put("name","zs");
        map.put("age","18");
        String forObject = restTemplate.getForObject("http://localhost:8080/demo1?name={name}&age={age}", String.class, map);
        System.out.println("forObject = " + forObject);
    }
    @Test
    void testRestForRestful(){
        RestTemplate restTemplate = new RestTemplate();
        String forObject = restTemplate.getForObject("http://localhost:8080/demo2/cxx/29", String.class);
        System.out.println("forObject = " + forObject);
    }
    //不定项参数
@Test
void testGetForObjectWithParam(){
    RestTemplate restTemplate = new RestTemplate();
    String result = restTemplate.getForObject("http://localhost:8080/demo3?age={1}&name={2}", String.class, 123, "张三");
    System.out.println(result);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值