【发布时间】:2018-08-26 09:23:52
【问题描述】:
我想执行一个非常简单的示例来解释 Spring-Boot 中的 IoC 概念。
为此,我创建了一个 Bean,它将 @Autowired 连接到一个主类,该主类有一个对 bean 执行某些操作的方法。
豆子:
主要:
@Component
public class MyMain {
@Autowired
private MyBean bean1;
public void usingTheBean()
{
bean1.setName("Thats my first bean!");
bean1.setAttribute("And thats just an attribute");
System.out.println(bean1);
}
public static void main(String[] args) {
//MyMain main = new MyMain();
//main.usingTheBean();
}
}
我的 SpringBootApplication:
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
MyMain main = new MyMain();
main.usingTheBean();
}
}
如何开始主课?没有得到
java.lang.NullPointerException
对于@Autowired Bean“MyBean”在主?
我知道 NullPointer-Exception 的原因是我使用“new”关键字创建了主类。
但问题更多地集中在“如何使用 spring-boot 启动主类”的问题
【问题讨论】:
-
为什么你不能把你的 MyMain 类作为 spring boot 启动类。
-
我怎样才能调用“usingTheBean”-Method?
-
您可以在这篇文章中查看我关于如何创建基本 Spring Boot 应用程序的答案:stackoverflow.com/questions/43447798/…
-
@VNT 这个例子使用了 RestController-Annotation。这意味着,我们想要完成稍微不同的事情。但仍然感谢您的链接,我确实帮助了我!
-
顺便说一句,这就是为什么我总是推荐基于构造函数的依赖注入而不是单独注释每个成员的原因,它让 Spring 何时会或不会进行依赖注入变得非常清楚。如果您自己调用构造函数,则需要提供依赖项
标签: java spring spring-boot