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

2022年01月13日 阅读数:3
这篇文章主要向大家介绍springboot-只能用于web服务开发?不建立web服务也能使用sprnig bean,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

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

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

假设咱们如今写好了但愿运行的Sevice,以及相应内部实现,假设是HelloService.hello()方法spring

咱们如何启动一个main方法去运行它呢数据库

使用也很是简单,咱们只须要对springboot生成的代码作略微的修改便可。 使用SpringApplicationBuilder来建立SpringApplication,而且配置WebApplicationType为NONE,这样即便有tomcat依赖也不会建立http server, 执行run方法以后咱们就获得了spring里的ApplicationContext,经过ApplicationContext.getBean可以拿到咱们的任意一个bean,获得bean以后再调用咱们想调用的方法,而不须要启动http server再用http接口去触发调用。tomcat

@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场景。springboot