1. Spring Boot 的第一个程序 HelloWorld spring-tool-suite-4下载安装及报错的解决办法

SprintBoot项目的创建方式有很多,可以通过idea,eclips,maven命令行等形式搭建,本系列教程采用STS快速搭建SprintBoot项目。

首先需要下载STS,下载方式可以参考文章:spring-tool-suite-4下载安装及报错的解决办法

双击打开STS图标

,

选择项目保存路径

点击 Lauch 按钮进入,STS工作界面。点击File>New>Project>Sprint Boot>Sprint Starter Project 创建项目:

 更改项目名称为HelloWorld,

 注意:因为我们建立的是web项目,所以需要勾选Spring web

 点击Finish,这时我们就会看到我们Project Explorer窗口里边出现了刚才我们建立的HelloWorld项目了。

 现在来看看我们刚才创建的项目中都有哪些目录和文件。

首先,src/main/java是我们项目开发源文件的存储文件夹,是我们添加,编辑代码类的地方。可以看到STS已经为我们创建了一个HelloWorldApplication.java的文件,这就是我们的主程序入口文件,是项目的启动类文件,所有代码的启动都是从这里开始。

  •  @ENableAutoConfiguration 注解表示开启自动化配置。由于项目中添加了spring-boot-starter-web依赖,因此在开启了自动化配置之后会自动进行Spring和Sprint MVC的配置。@springBootApplication包含了@EnableAutoConfiguration注解。
  • java项目的main方法,通过SpringApplication中的run方法启动项目,第一个参数传入App.class,高数Spring哪个是主要组件。第二个参数是运行时输入的其他参数。

接下来,src/main/resources是我们资源存储文件夹,我们以后的静态文件,模板文件都需要存放在这里。注意这里还有一个application properties,这个文件是项目属性配置文件,再以后的开发中非常重要,我们通过这个文件来配置程序需要的全局配置属性。

src/test/java 是测试文件夹

JRE System Libary 是JDK库

Maven Dependencies 是Maven库,STS其实是通过Maven来管理和创建项目的,只是通过图形化的方式,让我们创建SpringBoot项目更方便快捷。

pom.xml 是项目依赖配置文件,这个文件非常重要。通过pom.xml文件,我们能够很轻松的引入项目需要依赖的框架和第三方文件。如图:

 spring-boot-starter-parent是一个特殊的Starter,提供了一些Maven的默认配置,同时还提供了dependencey-management,可以使开发者在引入其他依赖时不必输入版本号,方便依赖管理。SprintBoot中提供的Starter非常多,这些Starter主要为第三方库提供自动配置,例如要开发一个web项目,就可以先引入一个Web的Starter:

下面,我们来创建一个Spring MVC中的控制器——HelloController

控制器中提供了一个“/hello”接口,此时需要在App启动类中配置包扫描才能将HelloController注册到SpringMVC容器中,因此在App类上面需要添加@EnableAutoConfiguration自动化配置注解和@ComponentScan包扫描注解。如图:

也可以直接使用组合注解@SpringBootApplication来代替@EnableAutoConfiguration 和 @ComponentScan,代码如下:

HelloController类编写好之后,我们来启动项目看看,通过在app主文件中点击鼠标右键,在弹出的菜单中选择调试,如图:

 当在console控制台中看到,下面信息,标明程序启动成功了。

 现在我们在浏览器里边输入: http://localhost:8080/hello 查看效果。

 出错了!为什么?

这里有一个坑,就是我们在建立controller文件夹的时候,必须注意,一定要把controller文件夹建立在我们的app启动类的包下边,比如我们这个app启动类所在包是com.example.demo,我们就必须把controller文件夹建立在com.example.demo这个包里边,这样app启动类才能通过@SprintBootApplication 里边的包扫描到controller文件夹中的自定义类。由于我们把controller文件夹创建在了com.example.demo包外,所以启动类扫描不到我们的自定义类helloController,所以无法通过接口 /hello 访问到。更改之后变成这样,就可以通过 http://localhost:8080/hello正常访问了。

 此时,我们的 第一个 Sprint Boot 程序 HelloWorld 运行成功!

猜你喜欢

转载自www.cnblogs.com/atomgame/p/12484307.html