我正在使用此代码在我的Reposioptory界面上使用@RepositoryResource注释:
@RepositoryRestResource(collectionResourceRel = "rest", path = "rest")
public interface HoliDayRepository extends CrudRepository<HoliDayEntity, Integer> {
HoliDayEntity findOne(Integer id);
}
我还在控制器类
中添加了RequestMapping(“rest”)@RestController
@RequestMapping("/rest")
public class DayController {}
但是当我启动Spring启动应用程序并尝试此链接时:http://localhost:8080/rest我在构建应用程序时遇到404错误我有ResourceNotFoumd异常应该如何管理这些错误?
答案 0 :(得分:0)
application.properties
spring.data.rest.base-path: /api
中进行设置
看一下这个例子:
public interface PersonRepository extends JpaRepository<Person, UUID> {
List<Person> findByAddress(String address);
}
只需使用此代码,您就可以在此处访问spring数据存储库:http://localhost:8080/api以及此处的人员端点http://localhost:8080/api/person
请查看本教程:https://spring.io/guides/tutorials/react-and-spring-data-rest/或此示例:https://github.com/Paizo/SpringBootCamelStreamsExample
答案 1 :(得分:-2)
您需要一种在您点击终点时应该调用的方法。
尝试以下并查看spring示例: https://spring.io/guides/tutorials/bookmarks/
@Autowired
private HoliDayRepository holiDayRepository; //your repository to execute the query
@GetMapping(value = "/{id}")//you can use @RequestMapping(method = RequestMethod.GET, value = "/{holida}")
public ResponseEntity<HoliDayEntity > getHolidayById(@PathVariable("id") Integer id) {
HoliDayEntity holiDayEntityresponse = productOperations.getProductById(id);
return new ResponseEntity<>(holiDayEntityresponse , HttpStatus.OK);
}
编辑: 正如Gimby所指出的,当使用@RepositoryRestResource时,这不适用。附加的代码和教程都是通过创建控制器来引用创建新的REST服务