配置实体路径后requestmapping无效

时间:2018-12-15 14:49:39

标签: java spring spring-boot

我有一个名为models的项目,我通过maven导入,它由Hibernate Entities组成,

我将此模型项目设置为对已配置Spring的项目的依赖,它使用Spring Boot。

如果我尝试运行该项目,它将告诉我Not a managed type:,当我从模型项目中引用实体时。我设法使用以下注释对其进行了修复

@EnableJpaRepositories({"com.rajeeda.coopmis.models.*", "com.rajeeda.coopmis.web.*"})
@ComponentScan(basePackages = { "com.rajeeda.coopmis.web.*" , "com.rajeeda.coopmis.models.*"})
@EntityScan({"com.rajeeda.coopmis.models.*", "com.rajeeda.coopmis.web.*"})

```

一旦我设置了模型的路径,然后spring可以正常启动,但是没有到达spring的@RequestMapings。当我得到404屏幕时,我尝试使用

指定七个路径
server.servlet.contextPath=/mainstay`

还是没有运气,有没有办法我可以明确提供控制器的路径?

如果我从Application类中删除了上述批注,则端点可以工作,但出现非托管实体错误(当我删除以下类时,我会测试并确认控制器是否正常工作

 public interface UserRepository extends CrudRepository<ItUserMaster, Integer> {}

如果有人遇到相同的问题,请分享。预先感谢

1 个答案:

答案 0 :(得分:1)

不确定这是否可以解决问题,但是您可以尝试一下。

让我们使用basePackages并删除通配符,如下所示:

@EnableJpaRepositories(basePackages = {"com.rajeeda.coopmis.models", "com.rajeeda.coopmis.web"})
@ComponentScan(basePackages = { "com.rajeeda.coopmis.web" , "com.rajeeda.coopmis.models"})
@EntityScan(basePackages = {"com.rajeeda.coopmis.models", "com.rajeeda.coopmis.web"})