SpringBoot通过RestTemplate远程调用其他微服务

      Spring框架提供的RestTemplate类可用于在应用中调用rest服务,它简化了与http服务的通信方式,统 一了RESTful的标准,封装了http链接, 我们只需要传入url及返回值类型即可。
     相较于之前常用的HttpClient,RestTemplate是一种更优雅的调用RESTful服务的方式。
在Spring应用程序中访问第三方REST服务与使用Spring RestTemplate类有关。RestTemplate类的设计 原则与许多其他Spring 模板类(例如JdbcTemplate、JmsTemplate)相同,为执行复杂任务提供了一种具 有默认行为的简化方法。
    RestTemplate默认依赖JDK提供http连接的能力(HttpURLConnection),如果有需要的话也可以通过 setRequestFactory方法替换为例如 Apache HttpComponents、Netty或OkHttp等其它HTTP library。
   考虑到RestTemplate类是为调用REST服务而设计的,因此它的主要方法与REST的基础紧密相连就不足 为奇了,后者是HTTP协议的方法:HEAD、GET、POST、PUT、DELETE和OPTIONS。例如,RestTemplate类具有headForHeaders()、getForObject()、postForObject()、put()和delete()等方法。下面介绍一下其使用方法......

1、首先在oracle数据库中创建产品product的表,其SQL语句如下。

CREATE TABLE "GPP"."TB_PRODUCT" 
   (	"ID" NUMBER(11,0), 
	"PRODUCT_NAME" VARCHAR2(40), 
	"STATUS" NUMBER(2,0), 
	"PRICE" NUMBER(10,2), 
	"PRODUCT_DESC" VARCHAR2(255), 
	"CAPTION" VARCHAR2(255), 
	"INVENTORY" NUMBER(11,0), 
	 CONSTRAINT "TB_PRODUCT_PK" PRIMARY KEY ("ID")
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
  TABLESPACE "GPP"  ENABLE
   ) SEGMENT CREATION IMMEDIATE 
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
  TABLESPACE "GPP" 
 
   COMMENT ON COLUMN "GPP"."TB_PRODUCT"."PRODUCT_NAME" IS '名称'
 
   COMMENT ON COLUMN "GPP"."TB_PRODUCT"."STATUS" IS '状态'
 
   COMMENT ON COLUMN "GPP"."TB_PRODUCT"."PRICE" IS '单价'
 
   COMMENT ON COLUMN "GPP"."TB_PRODUCT"."PRODUCT_DESC" IS '描述'
 
   COMMENT ON COLUMN "GPP"."TB_PRODUCT"."CAPTION" IS '标题'
 
   COMMENT ON COLUMN "GPP"."TB_PRODUCT"."INVENTORY" IS '库存'
 
   COMMENT ON TABLE "GPP"."TB_PRODUCT"  IS '商品表';

并插入一条数据

2、使用idea创建一个空的maven父工程,然后创建一个名为product_service的maven子工程。其父pom文件代码如下.

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.flyrain</groupId>
    <artifactId>spring_cloud_parent</artifactId>
    <packaging>pom</packaging>
    <version>1.0-SNAPSHOT</version>
    <modules>
        <module&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值