IntelliJ IDEA中的Spring Boot集成

使用Initializr创建项目

idea.jpg

IntelliJ IDEA通过提供用于执行前面步骤的GUI,使其变得更加简单。转到文件   项目…。选择 Spring Initializr并按照向导进行操作。

spring-initializr.jpg
该向导不能脱机工作,它需要访问start.spring.io(或至少访问使用的Spring Initializr实例)。

Spring Boot运行/调试配置

完全可以使用标准的应用程序配置来运行Spring Boot应用程序。

但是,专用的Spring Boot配置允许特定选项:

  • 启用调试输出
  • 隐藏横幅
  • 启用启动优化
  • 启用JMX代理
  • 设置活动配置文件
  • 覆盖参数
run-configuration.jpg

要创建此类配置,请转到“运行”  编辑配置…。然后,在右上角,单击 +按钮。最后,充分填写字段。

应用程序配置属性自动完成

在该 application.properties文件中,标准属性可以自动完成。例如,如果开始键入“log”,则会自动显示可用选项。

更好的是,如果不承认财产,IntelliJ IDEA会发出警告。

check-properties.jpg

如果关联 XXXProperties类位于类路径上(并由a引用 spring-configuration-metadata.json),则“已识别”属性。但是,由于 spring-boot-autoconfigure.jar具有所有属性和后一个文件,因此对标准JAR没有多大帮助:例如,可以在类路径上使用不 spring.jpa属性 spring-data-jpa.jar

如果在JAR中打包Properties类和配置文件,它将适用于您自己的工作。

应用程序配置YAML自动完成

application.yml 受益于与属性相同的自动完成功能。

应用程序配置文件setter

可以在项目设置中设置常规Spring项目的上下文文件。如果默认值 application.properties不合适,也可以设置Spring Boot配置属性。

右键单击该项目。选择开放式模块设置…。在打开的窗口中,选择模块  <应用程序    春天。单击底部的Spring Boot图标。

configuration-file.jpg

应用程序配置文件的模式可以设置为覆盖默认模式。

这与设置应用程序配置文件是运行时不同。这允许IntelliJ IDEA在编译时管理它。

执行器集成

我相信Actuator是Spring Boot中最好的功能之一,如果不是最好的话。IntelliJ IDEA提供了很好的集成。

Run仪表板能够显示从Actuator获取的大量数据:

dashboard-beans.jpg
健康
dashboard-health.jpg
控制器映射
dashboard-mappings.jpg

触发DevTools

这不是集成功能,而是我找到的解决方法。

DevTools是一个依赖项,允许在开发期间更新Spring Boot应用程序,而无需重新启动整个Tomcat(以及更多)。它的工作原理是检测何时编译和替换类并重新加载部分上下文。默认情况下,IntelliJ IDEA会自动保存已更改的文件,但不会编译(与Eclipse相反,需要显式保存然后编译)。

因此,要触发重新加载,每次都需要在Build Project按钮上单击。相反,我分配了键盘快捷键, Shift+S,它模拟Eclipse行为。

结论

虽然Spring Tools Suite是“官方”Spring IDE,但IntelliJ IDEA提供了许多细节,可加快Spring Boot应用程序的开发时间。