spring boot 快速入门(一)创建一个简单的Spring Boot项目

1、什么是Spring Boot

  Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run".
  We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need very little Spring configuration.(来自spring官网)

   Spring Boot是一个简化Spring开发的框架。用来监护spring应用开发,约定大于配置,去繁就简,just run 就能创建一个独立的,产品级的应用。

简单的说就是Spring Boot集成了Spring框架该有的东西,当你想要使用时只需要配置相应的Spring Boot组件就能够使用,不用像之前搭建ssm项目配置一堆的xml。

2、Spring Boot特点

(1)可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs;
(2)内嵌Tomcat或Jetty等Servlet容器;
(3)提供自动配置的“starter”项目对象模型(POMS)以简化Maven配置;
(4)尽可能自动配置Spring容器;
(5)提供准备好的特性,如指标、健康检查和外部化配置;
(6)绝对没有代码生成,不需要XML配置
 
3、关于Spring Boot特性
 (1)开箱即用(out-of-box),在我理解开箱即用主要就是一个功能--自动,在我们创建一个Spring Boot项目时,可以通过在MAVEN项目的pom文件中添加相关依赖包,然后使用对应注解来代替繁琐的XML配置文件以管理对象的生命周期。这样就大大节省了配置xml的过程,虽然在开发新项目时可以直接套用之前用过的xml模版,但有的时候并不是每一个配置都是一样的,修改配置测试也需要花费一定程度的精力和时间,而使用Spring Boot就会使得我们在开发的过程中摆脱了复杂的配置工作以及依赖的管理工作,更加专注于业务逻辑。
 (2)约定优先于配置(Convention over configuration),也称作按约定编程是一种软件设计范式。目的在于减少软件开发人员所需要做出的决定的数量,从而获得简单的好处,而又不失去其中的灵活性(但是会降低部分灵活性),同时减少了大量的XML配置,并且可以将代码编译、测试和打包等工作自动化。开发人员仅仅需要规定应用中不符合约定的部分。例如,如果模型中有个名为Sale的类,数据库中对应的表就会默认命名为sales。只有在偏离这一约定的时候,比如将该表命名为"products_sold",才会需要写有关这个名字的配置。如果所用工具的约定与你的期待相符,便可省去配置;反之,你可以配置来达到你所期待的方式。
 

约定优于配置体现点:

引自 https://www.cnblogs.com/panxuejun/p/6710888.html
1.maven的目录文件结构  
  1)默认有resources文件夹,存放资源配置文件。src-main-resources,src-main-java默认的编译生成的类都在targetwen  
  2)默认有target文件夹,将生成class文件盒编程生成的jar存放在target文件夹下
2.spring boot默认的配置文件必须是,也只能是application.命名的yml文件或者properties文件,且唯一  
  spring boot默认只会去src-main-resources文件夹下去找application配置文件
快速创建一个Spring Boot项目
工具:Idea+maven+jdk(1.8)
小编以下配置主要针对于jdk版本是1.8的,因为更高的版本在使用的时候会有各种问题,目前我还没搞清楚

首先,使用的maven的setting.xml需要做一个修改,也就是将关联的jdk版本设置成1.8

spring boot 快速入门(一)创建一个简单的Spring Boot项目

如果jdk版本不一样,在编译的时候会报错

Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile

打开idea,进入创建项目,选择 Spring Initializr ,然后选择默认的 url 点击【Next】

spring boot 快速入门(一)创建一个简单的Spring Boot项目


 然后修改项目信息group和artifact,然后点击【Next】

spring boot 快速入门(一)创建一个简单的Spring Boot项目


 勾选以下配置web,否则在项目创建的时候会缺少spring-boot-starter-web依赖

spring boot 快速入门(一)创建一个简单的Spring Boot项目


 选择项目位置,点击FINISH完成创建

spring boot 快速入门(一)创建一个简单的Spring Boot项目 



 目录结构如下,如过是第一次配置的话可能会比较慢,因为要在远程*工厂下载相关依赖

spring boot 快速入门(一)创建一个简单的Spring Boot项目

默认生成的东西有几下几个

(1)SpringbootApplication: 一个带有 main() 方法的类,用于启动应用程序
(2)SpringbootApplicationTests:一个空的 Junit 测试了,它加载了一个使用 Spring Boot 字典配置功能的 Spring 应用程序上下文
(3)application.properties:一个空的 properties 文件,可以根据需要添加配置属性
(4)pom.xml: Maven 构建说明文件,添加依赖使用


NOW: 现在测试项目是否创建成功

首先:找到启动类所在的包,创建一个control包,并创建一个测试类。我写的是HelloWorld.java

如下图:

spring boot 快速入门(一)创建一个简单的Spring Boot项目

谨记在类名上添加注解@RestController。成功启动项目后,在浏览器页面输入http://localhost:8080/hello访问,输出Hello World即可算是成功;

spring boot 快速入门(一)创建一个简单的Spring Boot项目