Spring Cloud REST Repositories

2024-01-11 15:06 更新

使用Spring Boot运行时,只需将此依赖项添加到pom文件即可将存储库公开为REST服务:

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-data-rest</artifactId>
</dependency>

如果您希望配置参数(例如path),则可以使用@RepositoryRestResource批注:

@RepositoryRestResource(collectionResourceRel = "trades", path = "trades")
public interface TradeRepository extends SpannerRepository<Trade, String[]> {
}

例如,您可以使用curl http://<server>:<port>/trades检索存储库中的所有Trade对象,也可以通过curl http://<server>:<port>/trades/<trader_id>,<trade_id>检索任何特定交易。

在这种情况下,主键组件idtrader_id之间的分隔符在默认情况下是逗号,但是可以通过扩展SpannerKeyIdConverter类将其配置为在键值中找不到的任何字符串:

@Component
class MySpecialIdConverter extends SpannerKeyIdConverter {

    @Override
    protected String getUrlIdSeparator() {
        return ":";
    }
}

您也可以使用curl -XPOST -H"Content-Type: application/json" -d@test.json http://<server>:<port>/trades/进行交易,其中文件test.json包含Trade对象的JSON表示形式。

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号