从 RepositoryRestConfiguration
我可以看到设置 spring.data.rest.default-media-type=application/json
可以更改 服务的默认媒体类型@RepositoryRestResource
.
@SuppressWarnings("deprecation")
public class RepositoryRestConfiguration {
private MediaType defaultMediaType = MediaTypes.HAL_JSON;
}
问题:由于该类处于弃用
状态,设置/覆盖默认类型的正确方法是什么?
最佳答案
您可以通过 RepositoryRestConfiguration
或简单地使用您的 application.properties 中的属性来执行此操作。请参阅文档 here .
RepositoryRestConfiguration
类未弃用。其中有一些方法已被弃用。类上的 @SuppressWarnings("deprecation")
注释并不意味着该类本身已被弃用。这只是一个注释,用于告诉 IDE 不要在 IDE 中显示弃用警告。
最简单的方法是在 application.properties 中。但是,您的属性名称有误。您不会将其设置为 spring.data.rest.default-media-type
。它期望的实际属性是 spring.data.rest.defaultMediaType
。所以在你的 application.properties 中,你可以:
spring.data.rest.defaultMediaType=application/json
使用 RepositoryRestConfiguration
,您可以完成同样的事情:
@Configuration
class CustomRestMvcConfiguration {
@Bean
public RepositoryRestConfigurer repositoryRestConfigurer() {
return new RepositoryRestConfigurerAdapter() {
@Override
public void configureRepositoryRestConfiguration(RepositoryRestConfiguration config) {
config.setDefaultMediaType(MediaType.APPLICATION_JSON);
}
};
}
}
关于java - 如何设置 spring-data-rest 的默认媒体类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35205524/