Java SpringMVC 在哪里放置 RepositoryRestMvcConfiguration (@Configuration) 文件

标签 java spring rest spring-mvc spring-rest

我遇到过很多关于 java SpringMVC 项目配置文件的教程,并且通常在其类名中包含 @Configuration,但他们从未提到这些文件的具体放置位置。

例如,我了解到我可以通过扩展 RepositoryRestMvcConfiguration 来更改 Spring Data Rest Rest api。

1) 我希望能够拥有更长的存储库网址,这样我就可以拥有 api/amazon/products,而不是 api/amazonproducts。显然这是不可能的。我最终得到了;

@RepositoryRestResource(collectionResourceRel = "amazonproducts", path = "amazonproducts")
@CrossOrigin
public interface AmazonProductRepository extends PagingAndSortingRepository<AmazonProduct, Long> { 

https://docs.spring.io/spring-data/rest/docs/current/api/org/springframework/data/rest/webmvc/config/RepositoryRestMvcConfiguration.html

我所要做的就是创建类似的类;

class CustomRestMvcConfiguration extends RepositoryRestMvcConfiguration {

  @Override
  @Bean
  public HateoasPageableHandlerMethodArgumentResolver pageableResolver() {

    HateoasPageableHandlerMethodArgumentResolver resolver = super.pageableResolver();
    resolver.setOneIndexedParameters(true);
    return resolver;
  }
}

我不知道将该代码放置在哪个文件/文件夹中。我正在使用 Eclipse Java EE Oxygen。我已经创建了一个 Maven 项目,目前正在 spring-boot 上测试它

最佳答案

您可以将 @Configuration 注解的类放置在您想要的任何包中,只要该包包含在组件扫描中即可。

在 Spring Boot 中,默认情况下意味着与 @SpringBootApplication 的类位于同一包中或其任何子包,与 Spring 管理的所有其他类相同。

除此之外,Spring 不关心包名称。

关于Java SpringMVC 在哪里放置 RepositoryRestMvcConfiguration (@Configuration) 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46503206/

相关文章:

java - 如何将InputStream对象转换为File对象?

java - GitHub 上托管的 maven 项目的 groupId

java - user.dir 在 Intellij IDEA 中没有正确解析

rest - 允许使用 3rd 方 API 从我在 Golang 中的 REST 端点下载文件

java - 两个数相加得到一个值的算法

java - 是否可以注释导出的函数名称?

java - 无法将部件的内容 (Flux<DataBuffer>) 读取到单个字符串中

java监听ContextRefreshedEvent

PHP Curl for Rest API 不起作用

json - Microsoft.Net.Http与Microsoft.AspNet.WebApi.Client