一、Spring Boot是什么?
Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。
Spring Boot基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。
SpringBoot所具备的特征有:
(1)可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs;
(2)内嵌Tomcat或Jetty等Servlet容器;
(3)提供自动配置的“starter”项目对象模型(POMS)以简化Maven配置;
(4)尽可能自动配置Spring容器;
(5)提供准备好的特性,如指标、健康检查和外部化配置;
(6)绝对没有代码生成,不需要XML配置。
SpringBoot框架中还有两个非常重要的策略:开箱即用和约定优于配置。
二、使用idea创建Spring Boot项目
1、新建project
在新建项目project页面找到Spring Initializr,相关配置如下:
点击下一步next,添加Spring web依赖
实际应用中, Template Engines根据自己的需要勾选即可。
点击完成finish,就创建成功啦。
2.初步配置
由于SpringBoot已经把几乎所有的东西完全配置好了,只需要下载相关的依赖就好,可以通过点击页面下方的build让软件帮忙自动下载,然后等待二三十分钟就好了(第一次要下载的东西比较多所以比较慢)
下载完以后,在pom.xml文件中可以看到一些依赖,以后还需要添加依赖就在这里面写。
3.编写简单代码及运行
在com.example.springbootproj文件夹下新建一个Controller文件夹,在Controller文件夹下新建一个HelloWorld类
package com.example.springbootproj.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@RequestMapping("/hello")
public class HelloWorld {
@GetMapping("/hello")
@ResponseBody
public String hello(){
return "Hello World!";
}
}
最后在浏览器输入以下网址就可以看到结果啦
http://localhost:8080/hello/hello
4、更改端口
(1)idea的默认端口号是8080,不过我们也可以人为改动这个端口号,只需要在resources文件夹下的application.properties里面写一句话即可,比如我改成8082
D:\springbootproj\src\main\resources\application.properties
添加:
server.port=8082
在浏览器中访问时就要修改相应的端口号。
5、定制Spring启动图案
启动 SpringBoot 时,控制台会打印 SpringBoot Logo 以及版本信息;这个操作是可以通过 SpringBoot的banner自定义实现
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.7.0)
这个图案也是可以自己更改的,首先在百度搜索Springboot banner,进入下面这个网站
进去之后自己找一个喜欢的图案点击拷贝,复制下来写入到D:\springbootproj\src\main\resources\banner.txt或者banner.location
org.springframework.boot.ResourceBanner文本格式,SpringBoot 会读取配置项banner.txt
和banner.location
,从配置项中获取真实的文件地址;如果配置中没有配置,会把配置项作为文件去加载;
org.springframework.boot.ImageBanner图片格式,SpringBoot 加载配置项banner.image.location
,从配置项中获取真实的路径,SpringBoot 会根据配置项的路径加载文件。
如果没有配置banner.image.location
,转而依次加载banner.gif
、banner.jpg
、 banner.png
这三个中存在的文件;
_
__ ____ ____ ____| |_ ___ _ ___ ___ _ __ ___ ___ _ __
\ \ /\ / /\ \ /\ / /\ \ /\ / / _` \ \ / / | | | / __/ _ \| '_ ` _ \ / __| '_ \
\ V V / \ V V / \ V V / (_| |\ V /| |_| || (_| (_) | | | | | || (__| | | |
\_/\_/ \_/\_/ \_/\_(_)__,_| \_/ \__, (_)___\___/|_| |_| |_(_)___|_| |_|
|___/
如果上面两种都没有配置,SpringBoot 就会加载默认的 Banner。