Spring boot是JAVA-Web端使用的一个容器框架,对于spring boot的学习,最好是有SSM架构的基础,ssm说的spring 、spring mvc 、mybatis三个架构,当然现在市面上这三个架构一起使用的概率相当小,一般只会出现在教培机构教学使用或者是相当老的系统,所以在正式工作中,基本不会用到,也不须要钻牛角尖,就算找工作碰到了那万分之一的概率,工作需要使用SSM框架,也可以选择不去嘛
直接的说Spring boot其实就是spring架构的二次封装,有基础的朋友可以想一想,在你配置SSM架构的时候,是不是有相当多的配置文件和相当多的bean实例,而spring boot就解决了这一烦恼,将开发中能节省的全部砍掉了,能够让开发者更便捷、更快速、更标准的,完成一个web项目的开发
这里要解释一下为什么要使用标准来形容Spring boot框架,我们技术人员都知道任何东西,封装的越好,能实现的功能就越定向,好处就是不同的人,在开发的时候,很少会出现变数,就像一个标准的流水线一样,但是这样也有坏处。就是有很多弱封装的框架能够实现的东西,用在强封装的框架上,反而就不容易去实现,多数情况下,需要依赖其他的手段辅助
因此总结来说,要学习spring boot,最好是拥有SSM的基础,这样在学习的时候就很快很轻松,而本篇知识点我们的目的很简单,除了上面初步认识spring boot到底是个什么东西之外,我们另一个目标是学习如何创建一个最简单的spring boot项目Demo,以及如何使用它。
这里也顺带介绍一下,spring boot的开发一般使用idea,一是idea的项目架构简洁明了,二是idea自带了spring boot项目的创建插件,无需另外下载。
第一步:点击新建项目
第二步:在打开的界面中,选择spring initializr插件,并输入项目信息
第三步:选择spring boot容器版本。需要注意的是springboot框架本身更新的比较快,并且随着安装的idea版本不同,可以选择的springboot版本也不同,按需求选择即可,如果没有需要的版本,可以先暂时选择一个,项目生成后在pom文件中手动更改即可。
第四步:点击finish,即可完成项目的创建
到此项目就已经创建完成,但有几个点要注意需要知道
第一点:在很极端的情况下,一般不可能遇到
的一个问题,真遇到了只能说你自己倒霉,就是你的Maven依赖会报错拉取不到spring-boot-maven-plugin
这个插件,此时你需要修改maven的配置文件,添加或在已有的profiles
标签中添加如下内容
<profiles>
<profile>
<id>spring plugins</id>
<activation>
<jdk>spring plugins</jdk>
</activation>
<pluginRepositories>
<pluginRepository>
<id>spring plugins</id>
<name>Spring plugins</name>
<url>https://maven.aliyun.com/repository/spring-plugin</url>
<layout>default</layout>
<snapshots>
<updatePolicy>always</updatePolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
随后删除maven仓库中的spring-boot-maven-plugin
插件的空文件夹,重新加载maven依赖
第二点:初学阶段你要知道,spring boot自动创建的两个文件是什么
如上图例子中TtdemoApplication
这个类,如果有spring基础一看就可以明白,这个类是整个程序的启动类,但在spring boot中它还有一个特殊的作用,它作为整个程序的启动点,就是说我们后续写的bean、controller、service等默认
都需要延续它的包路径,固定前面要包含为com.wy.ttdemo
,但注意
我说的是默认,可以变,至于怎么变在后面的知识点篇章中会提到,application.properties
是spring boot项目默认的配置文件
到此初学阶段我们知道这些即可,下面我们创建一个controller,学习如何让这个spring boot程序启动
第一步:延续包路径,创建com.wy.ttdemo.controller
包,在其下创建TestControllerT
类
package com.wy.ttdemo.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.Map;
@RestController
public class TestControllerT {
@RequestMapping("/getMap")
public Map<String,String> getMap(){
HashMap<String,String> map = new HashMap<>();
map.put("test","getMap");
return map;
}
}
这里解释一下上面的注解,RestController是spring boot的注释,它的作用是Controller+ResponseBody,Controller是spring用来标注控制层中控制器的注解,ResponseBody是spring用来注解某个控制器将返回json数据,RequestMapping是spring用来注解控制器web访问路径的
第二步:如普通程序那样直接运行TtdemoApplication
类
在输出内容中可以看到没有报错,并启动了spring boot内部自带封装的tomcat,我们访问即可,访问的时候注意,由于是框架封装的所以访问的时候不需要带项目名,直接访问控制器的虚拟路径就行
到此本篇知识点讲解结束,此外 本次整体讲解的spring boot项目已上传github