Spring Data REST中的动态基本路径

时间:2016-06-01 01:31:50

标签: rest spring-mvc spring-boot spring-data spring-data-rest

如何使用动态基本路径配置Spring Data REST(SDR)存储库?

正如我asked earlier,我想要以下URI空间:

/api/{tenant}/
/api/{tenant}/people
/api/{tenant}/products
/api/{tenant}/services
...
/api/{tenant}/foo

其中每个存储库(人员,产品,服务,...,foo)是典型的(或尽可能接近典型的)Spring Data REST存储库,例如:

@RepositoryRestResource(collectionResourceRel = "people", path = "people")
public interface PersonRepository 
    extends PagingAndSortingRepository<Person, Long> {
}

@Data
@Entity
@NoArgsConstructor
public class Person {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private long id;

    private String email;
}

在运行时添加租户,每个租户使用相同的存储库实现,并将租户信息隐式传递到存储库。

使用Spring Boot 1.3在Spring Data REST中有一种“简单”的方法吗?

今天,Spring Data REST休息了一个静态URL空间(即基本路径),例如:

/api/people
/api/products
/api/services
...
/api/foo

虽然我们可以向此模型添加Tenant实体和存储库,并将模型限制添加到每个实体,但如果我们可以传达租户信息而不将其明确编码到域模型中,那将会“更好” 。所以问题是,我们如何用SDR做到这一点?

0 个答案:

没有答案