我正在关注Spring RESTfull API教程。本教程要求在某个时候使用Spring HATEOAS。但是,我的IDE STS无法找到方法的引用linkTo和methodOn。
@GetMapping("/employees/{id}")
Resource<Employee> one(@PathVariable Long id) {
Employee emp = repository.findById(id)
.orElseThrow(() -> new EmployeeNotFoundException(id));
return new Resource<>(emp,
linkTo(methodOn(EmployeeController.class).one(id)).withSelfRel(),
linkTo(methodOn(EmployeeController.class).all()).withRel("employees")
);
}
Spring HATEOAS依赖项也位于此处:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-hateoas</artifactId>
</dependency>
我尝试过的事情:
更新Maven项目
最佳答案
在这里,linkTo
和methodOn
是org.springframework.hateoas.mvc.ControllerLinkBuilder
类的两个静态方法。您只需要在类下面添加两个静态导入语句:
import static org.springframework.hateoas.mvc.ControllerLinkBuilder.linkTo;
import static org.springframework.hateoas.mvc.ControllerLinkBuilder.methodOn;
或仅导入
ControllerLinkBuilder
并将其用作:ControllerLinkBuilder.linkTo
ControllerLinkBuilder.methodOn