【发布时间】:2019-04-20 21:49:46
【问题描述】:
我有两个项目,一个用于用户,另一个用于部门。
现在我想从另一个 REST API 调用一个 REST API。怎么打电话?
我遇到了问题,因为与用户相关的课程不适用于部门,反之亦然。
这是我的 UserController 类。
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
UserService userService;
@GetMapping(value="/get", headers="Accept=application/json")
public List<User> getAllUser() {
List<User> tasks=userService.getUser();
return tasks;
}
这是我的 DepartmentController 类。
@RestController
@RequestMapping("/dept")
@Configurable
public class DeptController {
@Autowired
DeptServiceImpl deptService;
@GetMapping(value="/get", headers="Accept=application/json")
public List<User> getDept() {
List<Department> tasks=deptService.getDept();
return tasks;
}
请告诉我如何在 getDept() 中调用 getUser() 方法,以及如何使类彼此可用。
【问题讨论】:
-
如果您正在构建微服务,您不会调用 Java 中的方法,而是像任何其他客户端一样使用 HTTP 请求调用它们。共享类还会引入可能不可取的耦合。
-
通过例子告诉你什么?如何从 Spring 应用程序发出 HTTP 请求?通过搜索引擎进行研究似乎相对容易。
-
基本上,如果用户应用程序在 localhost 8080 上运行,那么您必须从您的部门应用程序调用 localhost:8080/user。
-
RestTemplateclass 你要找的
标签: spring rest spring-boot microservices