2016-05-23 73 views
1

我正在使用Spring Boot开发一个简单的命令行应用程序。我需要它使用Spring的RestTemplate与一些REST API进行交互。我应该引用作为依赖项spring-boot-starter-webspring-web?这些类路径中的任何一个的存在是否会改变Spring Boot应用程序的行为,这应该是一个简单的命令行应用程序?哪个Spring模块应该用于命令行使用RestTemplate的Spring Boot应用程序?

+0

你也可以做。添加启动器并排除tomcat部分可能是最简单的。 –

回答

0

我会坚持https://spring.io/guides/gs/consuming-rest/的做法。

如果您不想创建Web服务器,请不要使用-starter-web。 使用普通-starter具有“裸露”引导应用程序并添加spring-web以访问RestTemplate

+0

因此,澄清,只是'春天网络'的存在不会改变“香草”春季启动应用程序到Web应用程序(与嵌入式服务器等)的行为? –

+0

在问这个问题之前,我实际上正在检查那个教程。我错误'spring-boot-starter'作为'spring-boot-starter-web',因为'spring-web'追随它。 –

+0

@PsychoPunch yep,'-starter-web'还为实际服务器添加了诸如'spring-boot-starter-tomcat'之类的附加依赖项。引导的自动配置部分(它是'spring-boot-autoconfigure'的一部分,初学者不包含代码)应该足够聪明,可以检测到你没有创建Web应用程序。尽管'spring-web'的存在似乎被用于检测。例如。在https://github.com/spring-projects/spring-boot/blob/master/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/condition/OnWebApplicationCondition.java – zapl

相关问题