我正在使用spring-data-rest,我有一个像这样的MongoRepository:
@RepositoryRestResource
interface MyEntityRepository extends MongoRepository<MyEntity, String> {
}
我想允许GET方法,但禁用PUT、POST、PATCH和DELETE(只读Web服务)。
根据http://docs.spring.io/spring-data/rest/docs/2.2.2.RELEASE/reference/html/#repository-resources.collection-resource的说明,我应该像这样做:
@RepositoryRestResource
interface MyEntityRepository extends MongoRepository<MyEntity, String> {
@Override
@RestResource(exported = false)
public MyEntity save(MyEntity s);
@Override
@RestResource(exported = false)
public void delete(String id);
@Override
@RestResource(exported = false)
public void delete(MyEntity t);
}
看起来不起作用,因为我仍然可以进行PUT、POST、PATCH和DELETE请求。
List<MyEntity> findAll();
中没有任何效果。 - avandecremeMongoRepository
继承了PagingAndSortingRepository
,因此您需要重新声明并注释findAll(Pageable pageable)
。 - Oliver Drotbohm