Avatar ·

لماذا حقل Spring `@Autowired` يساوي null وكيفية إصلاح ذلك؟

مرحباً بالجميع. أنا مبتدئ في Spring وواجهت مشكلة غير مفهومة. لدي خدمة `UserService`، أريد حقنها في المتحكم (Controller) باستخدام التعليمة `@Autowired`. ولكن عند محاولة استدعاء دالة الخدمة، أحصل على `NullPointerException` — الحقل `userService` يساوي `null`. إليك الكود الخاص بي: ```java public class UserController { @Autowired private UserService userService; public void handleRequest() { userService.getUser(1); // هنا يحدث NullPointerException } } @Service public class UserService { public String getUser(int id) { return "User " + id; } } ``` لقد جربت أيضاً استخدام `@Component` على المتحكم، لكن ذلك لم يساعد. لم أقم بتكوين أي شيء في `applicationContext.xml` — ظننت أن Spring Boot سيلتقط كل شيء تلقائياً. المشروع