1、为何要学 SpringBoot?
主要有 2 个原因:
第 1:高效
如果掌握了 springboot 的原理,那么使用 springboot 开发项目特别的高效,比如开发一个接口,在 sprinboot 未出世之前,我们可以使用 struts2、springmvc 或者其他 mvc 框架,需要很配置文件,而使用 springboot,可以说一行配置都不需要,就可以开发一个接口,使用 springboot 开发一个接口 1 分钟就可以搞定。
使用过 maven 的朋友,多数都有过这样的经历:版本冲突的问题,导致项目无法运行,需要花大量的时间解决这个问题,而 springboot 中,这个问题将不复存在,基本上我们需要用到的所有组件的 maven 配置,springboot 都帮我们定义好了,我们只需要引入组件的 groupId、artifactId 就可以了,无需考虑版本问题。
第 2:面试及工作需要
基本上 99.99%的企业都已采用 springboot,所以面试中都会问到 springboot,spingboot 吃透了,新增比别人多喊几千,也是相当容易的。
2、如何学习 SpringBoot
SpringBoot 中的所有技术点都是建立在 spring 的基础上的,比如 SpringBoot 中的各种注解,全部都来自于 Spring,还有 SpringBoot 中最强大的自动装配功能,也就是大家熟悉的 maven 中的各种 starter,就是依靠 Spring 中的@Import 注解来实现的,所以如果 Spring 的原理你是 ok 的,那么 SpringBoot 对你来说,用起来特别的容易,看源码也是特别的容易。
这里提醒下各位朋友,对 Spring 原理还不清楚的朋友,建议务必先看我的 Spring 系列,还有 SpringBoot 系列中会大量使用到 maven,这个也需要掌握好,2 个系列的连接如下
Maven系列:https://mp.weixin.qq.com/s/RfgETkcpLM_aSLUihGsJow
Spring高手系列:https://mp.weixin.qq.com/s/E7wNLtU-453b9YC3XoUvqQ
学习 SpringBoot 这里给大家介绍 3 种方式
1、跟着我的文章一起学,这个耗时可能比较长,整个系列的文章出来需要一段时间
2、网上找几套好的视频,反复看,多练
3、通过官网学习,地址如下
https://spring.io/projects/spring-boot/
https://docs.spring.io/spring-boot/docs/current/reference/html/howto.html
大家知道,学习技术,我一直强调要系统化的学习,系统化的学习确实需要花费很多时间,不过好处是无穷的。
3、关于 SpringBoot 系列软件版本
开发软件:idea2020.3.3
jdk:1.8
maven:3.6.1 或者以上版本
SpringBoot 版本:最新的 2.4.5
今天算是 SpringBoot 真正的第一篇了,今天来个简单的 helloword 案例,让大家感受下,SpringBoot 开发效率到底有多快。
4、案例:HelloWord
1、拉代码
SpringBoot 系列所有案例都在下面这个项目中,大家使用 git clone 下来,然后用 idea 打开。
https://gitee.com/javacode2018/springboot-series
2、创建一个 maven 模块
选中项目->右键->New->Module
如下:
点击 Next,按照下面配置输入信息
点击 Next,如下
点击上图中的 Next,如下图
点击 Finish,完成 helloword 模块的创建,如下图,将下图中框红的部分删掉
最终模块结构如下图,如果发现不一样,回头在看看上面的步骤,一步步来,如果还是有问题的,加我微信:itsoku 交流。
3、创建一个 Controller
在com.javacode2018.springboot.lesson004helloword
包中创建一个类,如下,内部有个 hello 方法,当收到浏览器的请求时,会输出“你好 SpringBoot”。
package com.javacode2018.springboot.lesson004helloword;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloWordController {
@RequestMapping("/hello")
public String hello() {
return "你好SpringBoot!";
}
}
注意这个类必须放在 Lesson004HellowordApplication 同级目录或者其子目录中,如下图:
4、启动 SpringBoot
运行 Lesson004HellowordApplication 的 main 方法
控制台输出如下图,运行上面的 main 方法,相当于把这个项目发布到 tomcat 了,端口在下图中有,是 8080
5、见证效果
浏览器中访问:http://localhost:8080/hello,输出如下,这个请求就是被HelloWordController
的hello
方法处理了。
有没有感觉到特别方便,没有任何配置信息,一个接口就搞好了,比如我们需要提供一个获取用户信息列表接口,只需要在 HelloWordController 中添加下面内容:
@RequestMapping("/userList")
public List<map> userList() {
List<map> list = new ArrayList<>();
for (int i = 0; i < 3; i++) {
Map user = new HashMap<>();
user.put("name", "路人甲Java-" + i);
user.put("age", 30 + i);
list.add(user);
}
return list;
}
</map</map
重新启动一下com.javacode2018.springboot.lesson004helloword.Lesson004HellowordApplication#main
,然后浏览器中访问
http://localhost:8080/userList
如下图,输出了 3 条用户的信息,
浏览器中按 F12,如下图,可以看到这个返回的结果是 json 格式的,是不是特别的方便,这就是 SpringBoot 最牛逼的地方,为程序员节约时间,让大家只需要关注与业务代码就可以了。
今天的内容,相对比较简单,大家下去了自己练练。
5、案例源码
git地址:https://gitee.com/javacode2018/springboot-series
本文案例对应源码:
spring-series\lesson-004-helloword
6、更多好文章
7、领取《Spring 系列高清 pdf》
获取方式,扫码发送:spring
8、领取《计算机必读电子书》
计算机必读电子书,进行了详细的分类,自己整理的,绝不是在网上那种打包下载的,而是自己需要学到某个方向的时候去网上挨个找的,最后汇总而成,这部分我是会不断把它完善的,当成自己的小电子书库,不多,但贵在精。
获取方式,扫码发送:计算机