Więc Uczę się wiosną w par tygodnia, śledził ten tutorial"Pole wymagało fasoli typu, której nie można znaleźć". Błąd wiosna spokojny API użyciu MongoDB
Building a RESTful Web Service
Wszystko było dobrze, dopóki nie próbował zintegrować go do MongoDB. Więc postępuję zgodnie z tym samouczkiem.
Ale moja praktyka jest częściowo nadal używa się pierwszy. Tak więc moja struktura katalogów projektu jest taka.
src/
├── main/
│ └── java/
| ├── model/
| | └── User.java
| ├── rest/
| | ├── Application.java
| | ├── IndexController.java
| | └── UsersController.java
| └── service/
| └── UserService.java
└── resources/
└── application.properties
To mój modelu/User.java plik
package main.java.model;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;
@Document(collection="user")
public class User {
private int age;
private String country;
@Id
private String id;
private String name;
public User() {
super();
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
}
To mój reszta/UsersController.java plik
package main.java.rest;
import java.util.List;
import main.java.service.UserService;
import main.java.model.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping(value = "/users")
public class UsersController {
@Autowired
UserService userService;
@RequestMapping(method = RequestMethod.GET)
public List<User> getAllUsers() {
return userService.findAll();
}
}
To mój usługa/UserService .java plik
Mogłem je skompilować (używam gradle do kompilacji, ponieważ śledzę samouczek), ale kiedy uruchamiam plik jar, to zgłaszałem ten błąd.
APPLICATION FAILED TO START
Description:
Field userService in main.java.rest.UsersController required a bean of type 'main.java.service.UserService' that could not be found.
Action:
Consider defining a bean of type 'main.java.service.UserService' in your configuration.
Nie wiem co jest nie tak zacznę googling wokół i okazało się, że muszę to Beans.xml
plik i zarejestrować userService w nim. Zrobiłem to, ale to nie działa. Jestem na to nowy, więc naprawdę nie mam pojęcia, co się dzieje.
ten sam problem tutaj, rozwiązany? – GuoJing
Rozwiązany, to będzie odpowiedź :) @GuoJing –