[英]How to set the default media type for spring-data-rest?
從RepositoryRestConfiguration
我可以看到,設置spring.data.rest.default-media-type=application/json
可以改變默認介質類型由服務@RepositoryRestResource
。
@SuppressWarnings("deprecation")
public class RepositoryRestConfiguration {
private MediaType defaultMediaType = MediaTypes.HAL_JSON;
}
問題:由於此類deprecation
,設置/覆蓋默認類型的正確方法是什么?
您可以通過RepositoryRestConfiguration
或簡單地使用 application.properties 中的屬性來執行此操作。 請參閱此處的文檔。
不推薦使用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);
}
};
}
}
@Component public class CustomRestConfig implements RepositoryRestConfigurer { @Override public void configureRepositoryRestConfiguration(RepositoryRestConfiguration config) { config.setDefaultMediaType(MediaType.APPLICATION_JSON); } }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.