sql >> Base de Datos >  >> NoSQL >> MongoDB

'El campo requería un bean de tipo que no se pudo encontrar.' API de descanso de primavera de error usando mongodb

Resuelto. Entonces, de forma predeterminada, todos los paquetes que se incluyen en @SpringBootApplication se escaneará la declaración.

Suponiendo que mi clase principal ExampleApplication que tiene @SpringBootApplication la declaración se declara dentro de com.example.something , luego todos los componentes que se incluyen en com.example.something se escanea mientras com.example.applicant no se escaneará.

Por lo tanto, hay dos formas de hacerlo en función de esta pregunta. Usar

@SpringBootApplication(scanBasePackages={
"com.example.something", "com.example.application"})

De esa manera, la aplicación escaneará todos los componentes especificados, pero creo que ¿y si la escala fuera cada vez más grande?

¡Así que utilicé el segundo enfoque, reestructurando mis paquetes y funcionó! Ahora la estructura de mis paquetes se volvió así.

src/
├── main/
│   └── java/
|       ├── com.example/
|       |   └── Application.java
|       ├── com.example.model/
|       |   └── User.java
|       ├── com.example.controller/
|       |   ├── IndexController.java
|       |   └── UsersController.java
|       └── com.example.service/
|           └── UserService.java
└── resources/
    └── application.properties