SpringBoot系列(1)基础入门

简介: 相信你还在为SSM框架繁琐的搭建过程而苦恼,还在为复杂的配置文件而忧心,现在SpringBoot终于来了,它化繁为简,让开发变得极其简单而快速,短短几年时间已经成为了开发的主流框架。作为一个与时俱进的程序员,当然要把握时代的潮流,因此将从这篇文章开始,由基础到进阶,开始对springboot进行一个全面的分析。

一、什么是Springboot


其实Springboot是Spring家族中的一个全新的框架,它是用来简单应用程序的创建和开发过程,化繁为简,简化SSM框架的配置。比如说在使用SSM框架开发的时候,我们需要配置web.xml,配置spring,配置mybatis,并将它们整合到一起,而是用Springboot就不同了,它采用了大量的默认配置来简化这些文件的配置过程。我们在百度指数看看这几年springboot和SSM框架的搜索指数:

v2-09a78eeccd84d15b54ac1a3344d87482_1440w.jpg

在2017年下半年,spingboot就是出于一个喷发的状态,因此学习springboot是多么的有必要。


说实话在学习springboot的时候千万不要把他想象的太麻烦,因为它确实太简单,而且也不是什么全新框架,只是把很多其他的框架整合了进来,不需要自己去配置而已。有了这个概念,你就可以带着轻松的心情去学习了。


二、springboot的特点


其实上面已经对其特点进行了一个总结,那就是简化程序搭建过程和开发过程,现在对其细说一下:


(1)可以不使用xml配置文件,全部采用注解的方式开发

(2)能快速构建spring的web程序

(3)可以使用内嵌的Tomcat、jetty等服务器去运行SpringBoot程序

(4)使用maven来配置依赖

(5)可以对程序进行健康检查

(6)等等


既然Springboot这么厉害,我相信你已经迫不及待的想要去看看它到底长什么样了吧,下面我们在我们的开发工具IDEA中创建一个springBoot项目,如果你使用的是eclipse,那么你需要去安装一个spring Tool suite插件就好了


三、创建一个springBoot项目


当然在创建项目之前,我们要先做一些预备工作,开发工具使用IDEA,要提前掌握maven的知识,java版本推荐是8,springboot的版本使用最新的就好了。

由于IDEA工具中封装了Springboot,因此我们可以直接拿来创建,创建的过程我使用了一张gif图来演示一下。如果看不懂配合着图下面的解释多看几遍,自己动一下手基本上就能搞定。

网络异常,图片无法展示
|

上面的动图已经很详细了,为了你看着混乱,我们再去梳理一下:


第一步:选择 File -> New —> Project


第二步:选择 Spring Initializr—>Next 会出现Idea 帮我们集成好的配置界面,我们在这一步选中java版本、语言等配置信息,接着点击最下面的next。


第三步:Dependencies界面—>web—>选择SpringWebStarter—>finish即可

上面点击finish之后,idea会自动下载和配置,等一会就创建项目成功了,


下面我们介绍一下创建好的项目结构:

v2-4f3312388ce564f95e4b08115b17e746_1440w.jpg

从上往下我们挨个分析:


(1)Spring Boot 的基础结构共三个文件夹:

  • src/main/java:程序开发文件夹,我们的在这里写程序代码。
  • src/main/resources:配置文件
  • src/test/java:测试程序


(2)src/main/java下的DemoApplication.java


主要作用就是主程序的入口,相当于main函数。


(3)src/main/resources下的static

里面保存了一些配置资源,比如图片等等。


(4)src/main/resources下的application.proties

它是全局配置文件,在这里定义一些接口的端口号等等各种信息。


(5)pom文件

这个文件极其重要,他定义了一些项目的依赖信息,


(6)mvnw和mvnw.cmd

一个是在linux下的shell执行脚本,一个定义了在windows下的bat执行脚本。


(7)其他的不重要我们这里就不说了

到目前为止我们已经能够创建一个项目了,也知道了项目的基本结构,现在我们就来演示一个案例看一下SpringBoot开的便捷性,同时也给出一些必要文件的信息。


四、第一个SpringBoot案例


1、简单小例子


第一步:我们在src/main/java文件夹下建立Controller包,新建HelloWorld类

@RestController
public class HelloWorld {
    @RequestMapping("/hello")
    public String hello(){
        return "Hello World!";
    }
}

第二步:点击DemoApplication文件运行

第三步:在浏览器中直接访问

v2-b7970555de5d9ef9e80eae032607fd3c_1440w.jpg

就是这么简单。当我们创建一个web项目之后,写一下controller的短短几行代码,就能直接访问,没有了ssm框架那种繁琐的配置过程了,现在你应该能体验到springboot的快捷性了吧。不过学习知识就是要深入进去。现在我们来分析一下springboot项目的流程。


2、分析小例子


(1)项目入口DemoApplication


首先我们先从项目的入口类DemoApplication说起,它是整个项目的入口,相当于main函数。

@SpringBootApplication
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

在这个类中我们可以看到最上面有一个@SpringBootApplication注解,它就相当于是一个入口的标志。应用程序启动之后看到这个注解就知道这是一个SpringBoot项目


(2)pom.xml文件


如果你是新手,你暂且可以这样理解(其实不是),项目启动demoApplication入口之后,就检查是否包含了必要的依赖。我们给出最核心的一段:

<dependencies>
        <!--web项目核心依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!--测试依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
</dependencies>

也就是说我们在pom文件中的dependencies结构下,添加我们所需要的依赖就可以了。


(3)application.properties文件


在上面添加完依赖之后,我们可以在这个文件添加一些配置,比如说我们的8080端口被占用,那么我们修改项目的端口是8888,或者是项目的根目录我们更改成test。

server.port=8888
server.servlet.context-path=/test

我们再去去访问上面的controller的时候就会发生变化了

v2-ae2f2eb04f2e94d0314887611c78eb99_1440w.jpg

4)controller、service等文件


对于我们具体的业务逻辑,我们只需要在相应的文件编码就可以和SSM框架一样。

OK,这就是SpringBoot,用起来超级简单。对于SpringBoot和其他框架的整合文章也将陆续推出,如有问题还请批评指正。

相关文章
|
JSON Java 关系型数据库
springboot基础入门之json转换框架 、全局异常捕捉以及JPA连接数据库
springboot基础入门之json转换框架 、全局异常捕捉以及JPA连接数据库
|
JSON Java 数据格式
springboot基础入门之返回json数据
springboot基础入门之返回json数据
|
XML JSON 安全
Springboot基础入门之helloword
Springboot基础入门之helloword
|
Java Spring Maven
|
NoSQL Java 数据库连接
Idea创建SpringBoot多模块项目
我们可以定义一个维度,以此来划分模块,例如上述商城、可以划分成商品、库存和订单模块。也可以目录结构分层,`Controller`层,只不过没人这样做。这样就引申出了下一个问题`拆分策略`。
926 0
Idea创建SpringBoot多模块项目
|
Java 应用服务中间件 Maven
传统maven项目和现在spring boot项目的区别
Spring Boot:传统 Web 项目与采用 Spring Boot 项目区别
496 0
传统maven项目和现在spring boot项目的区别
|
XML Java 数据库连接
创建springboot项目的基本流程——以宠物类别为例
创建springboot项目的基本流程——以宠物类别为例
154 0
创建springboot项目的基本流程——以宠物类别为例
|
存储 机器学习/深度学习 IDE
SpringBoot 项目与被开发快速迁移|学习笔记
快速学习 SpringBoot 项目与被开发快速迁移
SpringBoot 项目与被开发快速迁移|学习笔记
|
Java Spring
自定义SpringBoot项目的启动Banner
``Banner``是``SpringBoot``框架一个特色的部分,其设计的目的无非就是一个框架的标识,其中包含了版本号、框架名称等内容,既然``SpringBoot``为我们提供了这个模块,它肯定也是可以更换的这也是``Spring``开源框架的设计理念。
|
前端开发 Java 应用服务中间件
基于springboot+mybatisplus+vue-科技项目评审及专家库管理系统
基于springboot+mybatisplus+vue-科技项目评审及专家库管理系统
262 0
基于springboot+mybatisplus+vue-科技项目评审及专家库管理系统