SpringBoot系列第5篇:从HelloWord开始!!!

共 4135字,需浏览 9分钟

 ·

2021-04-30 10:16


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,输出如下,这个请求就是被HelloWordControllerhello方法处理了。

有没有感觉到特别方便,没有任何配置信息,一个接口就搞好了,比如我们需要提供一个获取用户信息列表接口,只需要在 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、更多好文章

  1. Spring 高手系列(共 65 篇)
  2. Java 高并发系列(共 34 篇)
  3. MySql 高手系列(共 27 篇)
  4. Maven 高手系列(共 10 篇)
  5. Mybatis 系列(共 12 篇)
  6. 聊聊 db 和缓存一致性常见的实现方式
  7. 接口幂等性这么重要,它是什么?怎么实现?
  8. 泛型,有点难度,会让很多人懵逼,那是因为你没有看这篇文章!

7、领取《Spring 系列高清 pdf》

获取方式,扫码发送:spring

8、领取《计算机必读电子书》

计算机必读电子书,进行了详细的分类,自己整理的,绝不是在网上那种打包下载的,而是自己需要学到某个方向的时候去网上挨个找的,最后汇总而成,这部分我是会不断把它完善的,当成自己的小电子书库,不多,但贵在精。

获取方式,扫码发送:计算机

浏览 37
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报