你好朋友,
如果您以前使用过Spring框架,则必须意识到,即使要开始使用基本的Spring功能也需要付出一些真正的努力。有了Spring Boot,最初的麻烦就消失了,您可以在数分钟内开始使用。
欢迎来到Spring Boot的世界!!!
在本教程中,我们将看到创建Spring Boot项目的各种方法。
基本上,我们可以通过以下四种方式创建Spring Boot Project:
1.使用Spring.io初始化程序
2.使用Eclipse或任何类似的IDE和Maven简单项目
3.使用Spring Tool Suite
4.使用CLI
本教程将重点介绍使用Spring.io初始化程序创建Spring Boot项目。
1.使用Spring.io初始化程序的Spring Boot项目
脚步 :
步骤1:
开启网址:http://start.spring.io/
正如我们在上面的屏幕快照(您可以在下面引用摘录的部分)中看到的那样,默认情况下,它表示使用<Java>和Spring Boot <1.5.0>生成<Maven Project>。
但是,根据我们的要求,也可以选择使用<Kotlin> / <Groovy>和Sprig Boot <较低版本>生成<Gradle Project>。
在本教程中,我们将重点介绍带有Java和Spring Boot 1.5.10的Maven。
第2步:
在创建Maven项目时,我们知道每个Maven项目都有组和工件ID,因此此接口为我们提供了占位符,可在其中输入组和工件ID。
我们将输入以下内容作为组和工件ID:
组:nl.blogspot.javasolutionsguide.springboot
工件ID:springBootApp
第三步:
单击“生成完整版本”超链接,该超链接位于“生成项目”按钮下方。
第四步:
您会注意到以下附加字段:
描述 :这只是项目的描述。您可以对其进行适当更改,但与技术方面没有区别。
软件包名称:这是默认情况下将由Spring创建的软件包名称,当使用start.spring.io的GUI创建Spring引导项目时。
包装:这表示将项目打包为可交付成果的方式,这里有两个选择:
Jar – Java存档
战争–网络存档
我们首先使用Jar选项,在本教程的后面部分还将看到War。
Java版本:
在撰写本教程时,我们有三个选项7,8和9。我将使用默认选项Java 8。
步骤5:
在start.spring.io网页上向下滚动,您会在下面找到一个依赖项列表,您可以根据需要在应用程序中添加依赖项。在这里,我们将仅添加Web依赖项。为此,您只需要勾选该依赖项然后单击“生成项目”,此依赖项将添加到生成的项目中。
步骤6:
单击Generate Project,您将看到该项目将被下载并以您在Artifact文本框中输入的名称压缩到您的硬盘上。
步骤7:
使用WinZip提取项目,并在Package Explorer中右键单击,然后将Eclipse作为Maven项目导入,然后选择import…-> Existing Maven project-> Next->从硬盘驱动器中选择提取的项目->单击Finish。
步骤8:
您将在eclipse中看到一个符合Maven标准的Java项目。并且,您已经在Eclipse.Easy中设置了一个Spring Boot项目。 对。
步骤9:
让我们探索已创建的项目。
–打开Pom.xml,您会发现使用以下在GUI中定义的项目坐标创建了Pom。
<groupId>nl.blogspot.javasolutionsguide.springboot</groupId><artifactId>springBootApp</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>springBootApp</name><description>Demo project for Spring Boot</description>
–后面的parent也被自动添加(注意,这是Spring Boot的魔力:)。
<parent><groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId><version>1.5.10.RELEASE</version> <relativePath/> <!-- lookup parent from repository --></parent>
它将确保将以下Maven依赖项添加到项目中。您可以尝试从pom.xml中删除spring-boot-starter-parent并保存该项目,您会注意到所有以下依赖项都将消失。
–在上面的依赖性列表中,您必须已经注意到,Spring Boot还为嵌入式Tomcat添加了依赖性,因此您无需在Eclipse中显式安装或配置tomcat。
–同样,您会发现自动添加了以下属性,依赖项和插件。请记住,当我们在start.spring.io GUI中选择Web时,依赖项spring-boot-starter-web已添加到POM文件中。
<properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build>
–如果打开src / main / java,您将看到我们在start.spring.io GUI中提到的包已创建,即“ nl.blogspot.javasolutionsguide.springboot.springBootApp”
–在上述软件包中,您将找到一个SpringBootAppApplication类。因此,在指定的软件包中将创建一个名称为<Project of Name>的类,并在其后附加“ Application”字样。
@SpringBootApplication
public class SpringBootAppApplication {public static void main(String[] args) {SpringApplication.run(SpringBootAppApplication.class, args);}}
–上面的类级别使用的@SpringBootApplication注释基本上等效于以下三个注释的组合:
@Configuration
@EnableAutoConfiguration
@ComponentScan
我们将在后续教程中讨论有关这些注释的更多信息。
–从SpringBootAppApplication的主要方法中,调用SpringApplicaiton类的run方法。此方法可确保初始化Spring应用程序的applicationContext(Spring容器)。SpringBoot使用AnnotaionConfigApplicationContext。
public static void main(String[] args) {SpringApplication.run(SpringBootAppApplication.class, args);}
步骤10:
运行SpringBootAppApplication的main方法,您会注意到jar已自动部署到嵌入式Tomcat服务器,并且Tomcat服务器已在端口8080处启动。
查看Eclipse的控制台日志:
步骤11:
现在,当我们的代码已部署在Tomcat上并且Tomcat已启动并正在运行时,让我们尝试打8080。
哦……错误页面,上面写着:“此应用程序没有/ error的显式映射,因此您将其视为后备。”
步骤12:
让我们继续,通过在新包下创建ErrorHandlerController为/ error添加映射
nl.blogspot.javasolutionsguide.springboot.controller。
@RestController
public class ErrorHandlerController implements ErrorController{private static final String PATH = "/error";@RequestMapping(value=PATH)public String error() {return "Error Handling";}@Overridepublic String getErrorPath() {return PATH;}}
请注意,此控制器需要实现Spring Boot提供的ErrorController接口,而我们需要实现它的getErrorPath()方法。
就像我之前告诉的@SpringBootApplication已经包含@EnableAutoConfiguration一样,这意味着我们不需要做所有配置,否则我们将不得不通过Rest控制器来处理请求,例如配置DispatcherServlet。
还要注意,由于我们已经在新程序包中创建了该控制器,并且默认情况下,Spring只会检查nl.blogspot.javasolutionsguide.springboot.springbootapp程序包,因此我们需要告诉Spring也应该扫描这个新程序包。需要在类级别的SpriingBootAppApplication类中添加以下内容:
@ComponentScan({"nl.blogspot.javasolutionsguide.springboot.springBootApp","nl.blogspot.javasolutionsguide.springboot.controller"})So SpringBootAppApplicaiton class will look like below now :@ComponentScan({"nl.blogspot.javasolutionsguide.springboot.springBootApp","nl.blogspot.javasolutionsguide.springboot.controller"})
@SpringBootApplication
public class SpringBootAppApplication {public static void main(String[] args) {SpringApplication.run(SpringBootAppApplication.class, args);}}
步骤13:
现在再次运行SpringBootApplication类,现在如果达到8080,我们将在网页上显示“错误处理”,如下所示:
同样,根据项目需求,我们可以有n个控制器,并且可以处理请求并将有效响应发送回网页。
这就是如何使用Spring Initializer创建Spring Boot项目的所有朋友。在后续教程中,我们将通过其他方式创建Spring Boot项目。订阅以在您的邮箱中获取下一个教程。
感谢您的阅读。如果您喜欢它,请喜欢我们的Facebook页面并分享这篇文章,以支持我。
翻译自: https://www.javacodegeeks.com/2018/02/create-spring-boot-project-spring-initializer.html