Warum ist das Spring @Autowired-Feld null und wie kann ich das beheben?
Hallo zusammen. Ich bin neu bei Spring und habe ein unverständliches Problem. Ich habe einen Service `UserService`, den ich über die Annotation `@Autowired` in einen Controller injecten möchte. Aber beim Versuch, eine Methode des Services aufzurufen, erhalte ich eine `NullPointerException` – das Feld `userService` ist `null`.
Hier ist mein Code:
```java
public class UserController {
@Autowired
private UserService userService;
public void handleRequest() {
userService.getUser(1); // Hier NullPointerException
}
}
@Service
public class UserService {
public String getUser(int id) {
return "User " + id;
}
}
```
Ich habe auch versucht, `@Component` auf dem Controller zu verwenden, aber das hat nicht geholfen. In der `applicationContext.xml` habe ich nichts konfiguriert – ich dachte, Spring Boot würde alles automatisch erkennen. Das Projekt