大家好我是苏麟 今天带来Rest Template .
spring框架中可以用restTemplate
来发送http连接请求, 优点就是方便.
Rest Template 使用
Rest Template 使用步骤
java
/**
* RestTemple:
* 1.创建RestTemple类并交给IOC容器管理
* 2. 发送http请求的类
*/
1.注册RestTemplate对象
java
@SpringBootApplication
public class OrderApplication {
public static void main(String[] args) {
SpringApplication.run(OrderApplication.class, args);
}
/**
* 创建RestTemple类并交给IOC容器管理
*
* @RestTemple 是发送http请求的类
*
* @LoadBalanced 负载均衡注解
*/
@Bean
@LoadBalanced
public RestTemplate restTemplate() {
return new RestTemplate();
}
}
2.发送HTTP请求
java
@Service
public class OrderService {
@Autowired
private OrderMapper orderMapper;
//引入
@Autowired
private RestTemplate restTemplate;
public Order queryOrderById(Long orderId) {
// 1.查询订单
Order order = orderMapper.findById(orderId);
//2.利用RestTemplate发起http请求,查询用户信息
//2.1 url
String url = "http://userserver/user/" + order.getUserId();
//2.2 发送http请求,实现远程调用
User u = restTemplate.getForObject(url, User.class);
//3.封装到order里
order.setUser(u);
// 4.返回
return order;
}
}
主要代码就是
java
//2.利用RestTemplate发起http请求,查询用户信息
//2.1 url
String url = "http://userserver/user/" + order.getUserId();
//2.2 发送http请求,实现远程调用
restTemplate.getForObject(url, User.class);
发送Get请求用 getForObject
参数: 第一个参数: 发送请求的路径 , 第二个参数 : 返回的类型
发送Post请求 postForObject
参数: 第一个参数: 发送请求的路径 , 第二个参数 : 请求数据对象 , 第三个参数 : 返回的类型
这期就到这里下期见!