簡體   English   中英

如何為 spring-data-rest 設置默認媒體類型?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM