SpringBoot搭建非web应用的两种方式
方式一:
在 直接在 main 方法中,根据 SpringApplication.run() 方法获取返回的 Spring 容器对象context上下文,再获取业务 bean 进行调用。
@SpringBootApplication
public class Application {
public static void main(String[] args) {
/**
* SpringBoot程序启动后,返回值是ConfigurableApplicationContext,它也是一个Spring容器
* 它其实相当于原来Spring容器中的ClasspathXmlApplicationContext
*/
// 获取SpringBoot容器
ConfigurableApplicationContext applicationContext = SpringApplication.run(Application.class, args);
// 从Spring容器中获取指定的对象
StudentService studentService = (StudentService) applicationContext.getBean("studentServiceImpl");
BrokerConfig brokerConfig = applicationContext.getBean(BrokerConfig.class);
// 调用业务方法
String str = studentService.sayHello();
System.out.println("str = " + str);
}
}
方式二:
Spring boot 的入口类实现 CommandLineRunner 接口
@SpringBootApplication
public class App implements CommandLineRunner {
@Autowired
BrokerConfig config;
@Override
public void run(String... args) throws Exception {
System.out.println(config.getPort());
}
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}
© 2017-2020 版权属于 QXQZX &
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具