Spring Boot Initilizr 使用IDE或IDE插件

这是我之前的帖子的延续。在阅读这篇文章之前,请先阅读我在“ Spring Boot Initilizr Web界面 ” 上的帖子。

目录[ 隐藏 ]

  • 1简要发布内容
  • 2带有IDE / IDE插件的Spring Boot Initilizr
  • 3执行Spring Boot应用程序
  • 4 “SpringApplication”类的内部和重要性

简要内容

  • 使用IDE / IDE插件的Spring Boot Initilizr
  • 使用IDE / IDE插件执行Spring Boot应用程序
  • “SpringApplication”类的内部和重要性

Spring Boot Initilizr用于快速启动新的Spring Boot Maven / Gradle项目。它生成初始项目结构并构建脚本以减少开发时间。

正如我在上一篇文章中所讨论的,Spring Boot Initilizr有以下几种形式:

  1. 带Web界面的Spring Boot Initilizr
  2. 使用IDE / IDE插件的Spring Boot Initilizr
  3. 使用Spring Boot CLI的Spring Boot Initilizr
  4. 使用ThirdParty工具的Spring Boot Initilizr

我们在之前的文章中已经讨论过Spring Boot Initilizr With Web Interface。现在我们将讨论“如何将Spring Boot Initilizr与IDE / IDE插件一起使用”。几乎所有Java IDE都提供Spring Boot插件。

我们将使用Spring STS Suite开发所有Spring Boot程序。默认情况下,Spring STS Suite附带Spring Boot Plugins,无需安装/配置它。

使用IDE / IDE插件的Spring Boot Initilizr

请按照以下步骤使用Spring STS Suite创建Spring MVC Maven项目。(与其他IDE几乎相似的步骤。)

如果您不直接在“新建”菜单中选择“Spring Stater Project”选项,则从“文件>>新建>>其他”下的“Spring”类别中选择此选项。

弹簧引导initilizer-IDE-例1

弹簧引导initilizer-IDE-例题

弹簧引导initilizer-IDE-示例3

在这里,我们可以选择项目类型:Maven项目或Gradle项目,语言:Java或Groovy,Java版本,包装:Jar或War等。

弹簧引导initilizer-IDE-范例4

在这里,我们可以选择Spring Boot Framework Version:1.2.5以及我们所有需要的Project Stack。

弹簧引导initilizer-IDE-例5

  • 请从“File >> New”菜单中选择“Spring Stater Project”菜单选项,如下所示。
  • 我们将获得以下“New Spring Stater Project”向导,以提供我们的项目相关信息
  • 请提供我们的Spring MVC Maven WebApplication Project详细信息,如下所示,然后单击“下一步”按钮
  • 选择我们的项目相关技术堆栈,如下所示,然后单击“完成”按钮创建我们的新Spring Boot项目
  • 现在,Spring STS Suite创建了一个Maven项目,并将所有必需的Jars下载到我们的Maven Local Repository。
  • 如果我们观察这个项目结构,pom.xml和Java Source文件,它们都类似于我们使用“ Spring Boot Initilizr With Web Interface ” 创建的文件。

注意: -
以同样的方式,我们可以创建JAR,Gradle项目,Spring Web服务,Spring REST API,Spring Cloud等。

执行Spring Boot应用程序

我们使用Spring STS IDE创建了Spring Boot WebApplication。是时候运行这个应用程序并观察结果。

弹簧引导initilizer-IDE-execute1

注意: - 为什么我们需要运行“SpringMvcMavenIdeProjectApplication.java”程序?
因为“SpringMvcMavenIdeProjectApplication.java”程序有Java的main()方法。我们很快就会看到“SpringApplication.run()”方法的重要性。

弹簧引导initilizer-IDE-execute2

这里*表示任何URI或上下文路径

弹簧引导initilizer-IDE-execute3

由于我们没有提供任何映射或查看页面(例如: - JSP),因此我们看到了默认错误页面。

  • 鼠标右键单击“SpringMvcMavenIdeProjectApplication.java”文件并从“运行方式”菜单中选择“Spring Boot App”选项以将此程序作为Spring Boot Application运行,如下所示
  • 当我们执行“SpringMvcMavenIdeProjectApplication.java”程序时,Spring Boot会自动执行以下操作:
    1. 创建一个Spring MVC应用程序
    2. 使用默认端口号启动嵌入式Tomcat服务器:8080
    3. 将我们的Spring MVC应用程序部署到Tomcat Sever中
  • 使用“http:// localhost:8080 / SpringMVCMavenIDEProject”或“http:// localhost:8080 / *”访问我们的Spring MVC应用程序并观察结果

注意:-

  1. 使用此基础Spring Boot WebApplication项目并根据您的项目要求进行增强。
  2. 我们还可以使用Spring STE IDE生成的“SpringMvcMavenIdeProjectApplicationTests.java”类来执行和测试我们的Spring Boot应用程序
  3. 鼠标右键单击“SpringMvcMavenIdeProjectApplicationTests.java”类并选择“Run As >> JUnit Test”选项。

“SpringApplication”类的内部和重要性

现在,我们将讨论什么是SpringApplication?为什么我们需要这个?SpringApplication的重要性?SpringApplication的内部结构?

示例: -
Spring STS IDE生成的类:“SpringMvcMavenIdeProjectApplication”


package com.journaldev.springboot.sample;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class SpringMvcMavenIdeProjectApplication {public static void main(String[] args) {SpringApplication.run(SpringMvcMavenIdeProjectApplication.class, args);}
}

我们从SpringMvcMavenIdeProjectApplication类的main()方法调用SpringApplication.run()。

@SpringBootApplication = @Configuration + @EnableAutoConfiguration + @ComponentScan

@SpringBootApplication执行以下操作:

弹簧引导API1

弹簧引导API3

示例: -
默认情况下,Spring STS IDE将所有必需的Tomcat容器JAR添加到我们新创建的Spring Boot Project Classpath中。这就是“AnnotationConfigEmbeddedWebApplicationContext”实例创建“TomcatEmbeddedServletContainerFactory”类实例的原因。

弹簧引导API2

示例: -
默认情况下,Spring STS IDE创建“TomcatEmbeddedServletContainerFactory”类的实例。该工厂用于创建“TomcatEmbeddedServletContainer”类的实例。

Spring STS IDE中的“SpringApplication.run()”方法

  • “SpringApplication”是Spring Boot API类之一。
  • SpringApplication类用于引导将从“main()”方法启动的Spring应用程序
  • SpringMvcMavenIdeProjectApplication类使用@SpringBootApplication批注进行批注
    1. 由于@Configuration注释,它会扫描@Bean方法来创建bean。
    2. 由于@ComponentScan注释,它执行组件扫描(组件表示使用@ Component,@ Service,@ Repository,@ Controller等注释的Bean)。
    3. 由于@EnableAutoConfiguration注释,它会触发Spring Boot Auto-Configuration。
  • 默认情况下,SpringApplication类创建“AnnotationConfigEmbeddedWebApplicationContext”实例
  • “AnnotationConfigEmbeddedWebApplicationContext”实例在Project Classpath中搜索JAR文件。基于在Classpath中找到的JAR,它创建了一个实现类“EmbeddedServletContainerFactory”接口的实例
  • “EmbeddedServletContainerFactory”(“JettyEmbeddedServletContainerFactory”或“TomcatEmbeddedServletContainerFactory”)用于创建“EmbeddedServletContainer”实现的实例。
  • 当我们运行SpringMvcMavenIdeProjectApplication类的main()方法时,它会调用“SpringApplication.run()”方法。
    1. 此调用用于创建“AnnotationConfigEmbeddedWebApplicationContext”。
    2. 此“AnnotationConfigEmbeddedWebApplicationContext”实例用于创建“TomcatEmbeddedServletContainerFactory”类的实例。
    3. 这个“TomcatEmbeddedServletContainerFactory”用于创建“TomcatEmbeddedServletContainer”类的实例。
    4. “TomcatEmbeddedServletContainer”实例在默认端口号:8080处启动Tomcat容器并部署我们的Spring Boot WebApplication。

这是关于使用IDE / IDE插件的Spring Boot Initilizr以及“SpringApplication”类的重要性。

我将在后面的帖子中讨论“ Spring Boot Initilizr with Spring Boot CLI ”和“ Spring Boot Initilizr With ThirdParty Tools ”。

如果您有任何问题/建议,请给我发表评论。

转载来源:https://www.journaldev.com/8596/spring-boot-initilizr-with-ides-or-ide-plugins

Spring Boot Initilizr - 使用IDE或IDE插件相关推荐

  1. Spring Boot Initilizr Web界面

    Spring Boot Initilizr Web界面 在这篇文章中,我们将讨论Spring Boot Initilizr Web Interface及其IDE或IDE插件.在阅读帖子之前,请查看我之 ...

  2. 使用Spring Boot CLI的Spring Boot Initilizr

    This is continuation to my two previous posts. Before reading this post, please go through my previo ...

  3. 带有第三方工具的Spring Boot Initilizr

    This is continuation to my two previous posts. Before reading this post, please go through my previo ...

  4. 具有IDE或IDE插件的Spring Boot Initilizr

    This is continuation to my previous post. Before reading this post, please go through my previous po ...

  5. Spring Boot Initilizr - 使用Spring Boot CLI

    Spring Boot Initilizr - 使用Spring Boot CLI 这是我之前的两篇文章的延续.在阅读本文之前,请先阅读我之前在" Spring Boot Initilizr ...

  6. Spring Boot Initilizr - 使用ThirdParty工具

    Spring Boot Initilizr - 使用ThirdParty工具 这是我之前的两篇文章的延续.在阅读本文之前,请先阅读我之前在" Spring Boot Initilizr We ...

  7. Spring Boot+MybatisPlus使用JQuery DataTables表格插件展示数据、实现分页和模糊查询等功能

    Spring Boot+MybatisPlus使用JQuery DataTables表格插件展示数据.实现分页和查询功能 一.部分技术选型 二.项目结构 三.功能需求和效果展示 四.关键代码 4.1页 ...

  8. spring boot 设置 wagon 自动打包部署插件在 debug 模式下运行就不打包部署

    <execution><id>upload-deploy</id><!-- 运行package打包的同时运行upload-single和sshexec --& ...

  9. 精选10个用于Java开发Spring Boot的Eclipse插件

    前言 作为从事Java多年的程序员,在此分享用于 Java 和 Spring Boot 开发的 10 大 Eclipse插件: 1. EGit - Eclipse 的 Git 集成 这可能是当今 Ja ...

最新文章

  1. fiddler 抓取winform wcf包
  2. 横向ListView(一) ——开篇,基础逻辑实现
  3. scrapy创建以及启动项目步骤!
  4. Vue cli3+Hubuilder将项目打包为App
  5. matlab实现非线性规划
  6. 【clickhouse】clickhouse 副本与分片 副本详解
  7. 关于vs2010调用python中Py_Initialize函数报错的原因
  8. 42.mysqldump
  9. MySQL中的join以及on条件的用法
  10. 在计算机中打开word2010三种方法,Word2019中打开文档的三种方式
  11. sca60c使用程序_第3部分:SCA应用程序的工作负载平衡的WebSphere MQ客户端连接
  12. python爬虫02 - 爬虫请求模块 request库 json数据
  13. php中hr标签的用法,HTML: hr 标签
  14. mysql table already_MySQL优化表时提示 Table is already up to date的解决方法
  15. 日天的终生大事(dp)
  16. JavaSE——Day1——计算机基础知识、Java语言基础、JRE与JDK
  17. -XX:+PrintGCTimeStamps 打印CG发生的时间戳
  18. Python 语法错误 except Exception, e: ^ SyntaxError: invalid syntax
  19. 怎样成为一位程序员大佬
  20. 【MOS】OCR/Vote disk 维护操作: (添加/删除/替换/移动) (文档 ID 1674859.1)

热门文章

  1. 一组PHP可逆加密解密算法
  2. 苹果编程语言Swift中文教程:Swift简介
  3. 视频跟踪——meanshift算法
  4. 背包——完全背包Warcraft III(哈理工1053)
  5. selinux + sudo +ssh +passwd
  6. java向上转型不能调用子类独有的方法
  7. 【AI视野·今日NLP 自然语言处理论文速览 第二十八期】Wed, 1 Dec 2021
  8. 【语义分割】论文代码资料汇总
  9. Julia常用包总结(深度学习、数据科学、绘图...updating...)
  10. JVM——Java对象是如何创建、存储和访问的?