Java架构技术栈

Springboot快速入门篇,图文并茂

2020-08-09  本文已影响0人  若丨寒

写在前面:2020年面试必备的Java后端进阶面试题总结了一份复习指南在Github上,内容详细,图文并茂,有需要学习的朋友可以Star一下!
GitHub地址:https://github.com/abel-max/Java-Study-Note/tree/master

image

一、Springboot概述

1.1 Springboot简介

SpringBoot是由Pivotal团队研发的,SpringBoot并不是一门新技术,只是将之前常用的Spring,SpringMVC,data-jpa等常用的框架封装到了一起,帮助你隐藏这些框架的整合细节,实现敏捷开发。简单来说,SpringBoot就是一个启动器。

1.2 Springboot的特点

二、快速构建Springboot

2.1 Spring官方快速构建

New Project

image

Spring Initializer Project Setting

image

选择版本和所需依赖

image

填写项目名称和本地存储路径

image

2.2 aliyun快速构建(解决加载失败)

如果Spring官方的快速构建加载出现问题,可以使用aliyun提供的Spingboot快速构建。

aliyun快速构建Springboot

image

其他步骤与Spring官方构建一致

2.3 Spring与aliyun差别

使用Spring官方和aliyun快速构建的Springboot项目是有一些差距的,其实项目结构上没有本质的差距,只是在pom.xml文件中会出现一系列差距!

注意:两者没有本质差别,我们只需要使用即可!

2.4 导入核心依赖

此核心依赖有着Spring的大多数web依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

2.5 编写Controller直接测试

直接访问路径即可出现页面并响应在浏览器上!

@RestController
public class TestController {
    @GetMapping("/test")
    public String test(){
        return "Hello SpringBoot!";
    }
}

三、Springboot目录结构说明

Springboot目录结构

image

四、Springboot的三种启动方式

4.1 运行启动类的main方法

运行启动类的main方法

image

4.2 使用Maven启动

使用Maven启动(mvn spring-boot:run)

image

4.3 使用Springboot打包的jar文件启动

首先,Springboot打包方式是jar的方法。默认使用maven 的package打包,而随之也会触发springboot内置的 springboot:repackage ,而springboot的内置再次打包会在此jar文件的基础上内置一个tomact,也即是说使用Springboot打包的jar文件是可以执行的!

打包展示

image

DOS命令行执行java -jar jar文件路径/jar包名字

五、Springboot入门注解

5.1 @Configuration和@Bean

如下,举例子。

@Configuration   // 代表当前类是一个配置类
public class UserConfig {
    @Bean(name = "user1")       // 构建一个实例,放到spring容器中
    public User user(){
        User user = new User();
        user.setId(1);
        user.setName("张三");
        return user;
    }
    /* 与其相同作用
    <beans ....>            @Configuration
        <bean id="user1" class="com.ziphtracks.firstspringboot.bean.User" />
    </beans>
     */
}

5.2 @SpringBootApplication

@SpringBootApplication就是一个组合注解:

注意:你完全可以通过上述所说去翻看以下该注解的源码

源码

image

5.3 @SpringBootTest

该注解用于测试启动项中,用于启动测试的注解

测试启动项注解配置

image

六、Springboot配置文件

6.1 配置文件规范

SpringBoot的配置文件支持properties和yml,甚至他还支持json。

更推荐使用yml文件格式:

  1. yml文件,会根据换行和缩进帮助咱们管理配置文件所在位置
  2. yml文件,相比properties更轻量级一些

yml文件的注意事项:

  1. 严格遵循换行和缩进
  2. 在填写value时,一定要在: 后面跟上空格

6.2 多环境配置

在application.yml文件中添加一个配置项:

可以使用逗号( , )来激活多个环境

如下我创建了两个开发配置,一个用来开发的配置(dev)、另一个用来测试的配置(test),随后使用总的配置来激活这两个配置环境。

多环境配置

image

6.3 引入外部配置文件信息

和传统的SSM方式一样,通过@Value的注解去获取properties/yml文件中的内容。

如果在yml文件中需要编写大量的自定义配置,并且具有统一的前缀时,采用如下方式

// Java程序
@ConfigurationProperties(prefix = "aliyun")
@Component
@Data
public class AliyunProperties {

   private String name;
   private Integer age;
}

// 配置文件
aliyun:
  name: Ziph
  age: 18

6.3 重新构建工程

build

image

6.4 Springboot热部署

在做SSM项目时,我们会用到IDEA插件JRebel热部署神器来方便开发。因为热部署很受大家爱戴,所以Springboot也提供了热部署功能。如下:

导入依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <optional>true</optional>
</dependency>

IDEASetting相关配置

image

Springboot启动项设置

image

七、Springboot创建web目录

static文件夹是存储静态资源的,而我们的动态资源还是需要web目录结构存储的,于是我们创建一个web目录结构!

导入JSP以及JSTL核心依赖

<!--JSP核心引擎依赖-->
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<!--JSTL-->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
</dependency>

创建webapp以及WEB-INF等web目录结构

image

添加web.xml

image image

展示web目录结构

image

来源:https://www.tuicool.com/articles/zeaimu7

欢迎关注微信公众号【慕容千语

上一篇下一篇

猜你喜欢

热点阅读