与Spring Boot初次相识

  1. 云栖社区>
  2. 博客>
  3. 正文

与Spring Boot初次相识

luckyharry4 2018-07-14 19:13:00 浏览310 评论0

摘要: 前言 还记得那是2015年的第一场雪(也是本人刚上大二的时候),那时候虽然说磕磕绊绊的自己搭建了一个SSM框架,但是对很多东西还是没有什么很深的认知。当时我听说了Spring Boot 这个框架后,我并没有特别热衷于去学习它。

前言

还记得那是2015年的第一场雪(也是本人刚上大二的时候),那时候虽然说磕磕绊绊的自己搭建了一个SSM框架,但是对很多东西还是没有什么很深的认知。当时我听说了Spring Boot 这个框架后,我并没有特别热衷于去学习它。原因很简单,我当时稚嫩的觉得spring boot 这种框架,大多数的参数都是默认配置好的(Spring boot 核心思想:约定大于配置),但是真的出了问题,很难找出问题在哪?
但是经过时间推移,我发现我错了。随着社区的越来越完善,几乎想要的所有配置应有尽有,遇到的问题,只要去google或者必应搜一下,也有相当详细的回答。Spring Boot 在我看来就像是一个万能插头,它可以上连接各种各种模版引擎(例如说thymeleaf,freemark等等),下可以通过dao层连接各种数据库(无论是关系型数据库还是非关系型数据库。关系型数据库可以使用ORM框架进行连接,非关系型数据库则有一系列的spring - data- * 进行连接)。我面对如此强大的利器,怎么可能不好好的学习一下呢。于是我便开始了漫漫的Spring Boot 修仙之路。
之所以现在才拿出来总结,是因为现在总算是对Spring Boot 有所感悟,不再是单纯的ctrl+c,ctrl+v,时隔多年通过这篇文章,算是对我之前学习的一种总结,和对未知领域的一种探索。

准备工作

我们想要使用Spring boot 那么一个好的IDE,可以让我们更加快捷的得到一个空的Spring Boot项目。

  • 我们可以使用Intellij IDEA Intellij IDEA 下载地址
  • 我们还可以下载STS (这是一个为了spring 定制化的eclipse,使用度也比较高) STS下载地址
  • 最后一种也是我比较常用的IDE,那就是Eclipse。我对eclipse安装了spring 的插件,还有svn的插件,用起来和STS差不多,感兴趣的可以去下载(因为有的时候安装插件实在太慢了,所以这里给大家提供一下)。下面是百度网盘的地址:
    百度网盘地址(适用于Win) 密码为:r6e2,永久有效

开始第一个项目

在这里一共演示两种方法:

  • 第一种方法 使用网页进行下载空项目:下载网址
    演示图片如下,在这里我们可以依次选择用什么方式进行构建(Maven,Gradle)用什么语言进行编程,然后就是spring boot的版本。在这里的大版本分为了1.x和2.x,如果你想要尝试一些spring boot 的新功能,新特性,可以下载2.x版本。否则的话尽量使用1.x版本,因为他不会有那么多稀奇古怪难以解决的问题。
    下面依次填上group和artifact,大家可以初步的把group+artifact理解为项目根路径的包名。
    右半部分我感觉是最重要的了,也是spring boot 最惊人的地方,你可以选择自己想要的依赖,最起始的工程选择Web即可,如果你想要使用其他的依赖,那么可以在这里进行选择。如果你是一个新手,发现做了一阵子自己想添加新的依赖,但是起始的时候没有添加怎么办呢?如果你是一个maven项目只需要在pom.xml中添加对应的依赖,如果你是一个gradle项目只需要修改build.gradle 即可。
    img_07e00afb8d8532dfcf1cf1262fcfbebf.jpe
    页面下载Spring Boot项目
  • 第二种方式是在IDE 中进行下面,我这里使用安装好spring 插件的eclipse 进行演示。
    首先我们点击file然后选择new,然后选择other。也就是下面的第一步。紧接着我们点击 Spring starter project


    img_324a04b1cd0c955fb3272a740a29d4cb.png
    第一步

    然后我们又到了这个熟悉的步骤,就像是在网页定制化一样,我们填写自己需要的配置后,就可以next了。


    img_ab375aef5b5a0a5b0a88b7c2b6730a77.png
    第二步

    下面的图片显示的是引入依赖。
    img_e67b2c0b9d260a9d947d9dd66909553f.png
    tips

    最后点击finish即可完成,呈现在我们面前的就是一个spirng boot 项目了。
    img_99b6218699ea259c98bd5638ef60d12e.png
    spring boot 目录结构

我们来看一下这个目录结构:
src/main 中添加的都是自己项目需要的coding代码,java下理所当然的放着Java代码,resources中放着需要的资源文件,templates下面放着自己的前端html界面,static放着类似于图片,css文件,js文件的。
application.properties 在这里有必要重点的讲一下,如果大家在之前开发过SSM框架的话,就会知道当时要配spring.xml,然后spring-service.xml,spring-web.xml还有mybatis-config.xml这类的文件,但是现在不用了,我们如果什么都不配的前提下,spring boot 会给我们一套默认的配置,在没有需要定制化的情况下,直接使用,超级方便(properties的文件,可以替换成yml文件,yml比properties更加简洁,清新。详细的信息可以看下面这篇博客application.properties与application.yml的区别
src/test中存放的就是单元测试使用的代码(例如说junit之类的)
创建好了之后,会自动产生这样一个文件*Application.java。可以给他大概理解成我们第一次写的 hello world 程序中的那个main函数的类,他就是这个spring boot 项目的入口。

img_7cef6603a8a25f9ed18d76b07dd3b360.png
启动类

我在这里创建了 controller ,service,dao ,和entity层。这是最基本的分层结构,为了以后的代码具有层次性,方便维护。
多说一点:spring boot 那个启动的类需要放在和上面说的这些包在同一级别下,Spring boot启动类默认情况下会去读和他同级的文件,和他同级包下的自文件。
我在controller层创建了一个类,用于作为一个api接口。代码如下

@RestController
public class HelloController {
    
    @GetMapping("/hello")
    public String HelloTest() {
        return "you are success visit the spring boot project";
    }

}

img_a3a350a8b7a66e9321e364f83369ec0b.png
测试api接口代码

我们去启动我们的项目:在启动类上面右键=>run as=>spring boot app。
img_72f975279bd767b8a5af8b22f94d5cd8.png
启动项目

如果看到在console下有以下log,就说明启动成功了。
img_074e6cec46bbf622c5501150a4cf7434.png
启动成功

我们接下来可以在浏览器输入url地址:url地址
img_c00832ffb4e84e0f6410b8cbda0f1139.png
验证url地址

大功告成!
我会在接下来的博客里,把自己原来积累的知识,漫漫道来。也会把最近新学的技术点,漫漫更新出来。
谢谢大家,本文纯亲自手打。如需转载说明出处与作者。

【云栖快讯】阿里巴巴小程序繁星计划,20亿补贴第一弹云应用免费申请,限量从速!  详情请点击

网友评论