springboot-只能用于web服务开发?不创建web服务也能使用spring bean

spring除了开发web服务外,在其他的需求中也是可以使用的,比如我们只想实现一个简单的爬虫,爬到数据之后写入数据库,我们一定要创建一个web服务来通过接口触发各个方法的调用吗,可能有很多小伙伴使用spring都是在公司的web项目中使用,如果脱离web环境都不会写代码了,今天我们就看一下,使用springboot怎么不启动web服务也能运行spring代码。

有了这个功能,我们在开发一些小的需求的时候非常方便,不用再去羡慕python等语言。

假设我们现在写好了希望运行的Sevice,以及相应内部实现,假设是HelloService.hello()方法

我们如何启动一个main方法去运行它呢

使用也非常简单,我们只需要对springboot生成的代码做略微的修改即可。 使用SpringApplicationBuilder来创建SpringApplication,并且配置WebApplicationType为NONE,这样即使有tomcat依赖也不会创建http server, 执行run方法之后我们就得到了spring里的ApplicationContext,通过ApplicationContext.getBean能够拿到我们的任意一个bean,得到bean之后再调用我们想调用的方法,而不需要启动http server再用http接口去触发调用。

@SpringBootApplication
public class DemoApplication {
	public static void main(String[] args) {
		ConfigurableApplicationContext applicationContext = new SpringApplicationBuilder(DemoApplication.class).web(WebApplicationType.NONE).run(args);
		applicationContext.getBean(HelloService.class).hello();
	}
}

有了这个方法,我们要实现一些小的数据处理等任务就能游刃有余了,springboot不再只局限于web场景。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

高级Java进阶之路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值