以下是我的项目结构。

我的主类是DemoApplication.java,它有“扫描基础包”。
@SpringBootApplication(scanBasePackages={"com.demo.ex"})
public class DemoApplication{
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}在我将我的JPA存储库替换为Mongo存储库之前,它一直工作得很好。
我的BookRepository看起来像下面这样。
@Repository
public interface BookRepository extends MongoRepository<Book, String>{
public Book findOneById(String id);
}我的BookServiceImpl看起来像下面这样。
@Service("bookService")
public class BookServiceImpl implements BookService{
@Autowired
BookRepository bookRepository;
.......
}现在应用程序无法启动,并出现如下所示的错误消息。
***************************
APPLICATION FAILED TO START
***************************
Description:
Field bookRepository in com.demo.ex.service.BookServiceImpl required a bean of
type 'com.demo.ex.repository.BookRepository' that could not be found.
Action:
Consider defining a bean of type 'com.demo.ex.repository.BookRepository' in
your configuration.我不想使用@EnableMongoRepositories注解,因为它要求我创建一个mongo-template。
解决此问题的最佳方法是什么?
发布于 2017-10-09 07:22:24
我不想使用@EnableMongoRepositories注解,因为它要求我创建一个mongo模板。
您需要该注释,但是如果您在application.properties (或类似的)中定义了Mongo连接设置,Spring将为您创建模板。
https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html
请参阅MONGODB (MongoProperties)部分。
更多信息:
https://stackoverflow.com/questions/46636952
复制相似问题