SpringBoot01: 初涉

一、导引

1、简介

​ Spring Boot 是由Pivotal团队提供的全新框架,其设计目的是 用来简化 Spring 应用的初始搭建以及开发过程 。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。Spring Boot致力于在快速应用开发领域(rapid application development)成为领导者。

2、开发流程

​ 相比于传统的 Spring 开发流程,Spring Boot 要方便快捷得多。

  • Spring 应用开发流程

    配置环境 =》创建工程 =》构件目录结构 =》组件依赖管理 =》配置Web容器 =》设置组件参数 =》业务开发 =》测试与构建 =》 手动部署 =》运维与监控

  • Spring Boot 应用开发流程

    配置环境 =》Spring Initializr =》配置参数(可选)=》业务开发 =》自动构建 =》自动部署 =》运维与监控

3、Spring 核心特性
  1. 是独立运行的 Spring 项目
  2. “习惯优于配置”,极大的提高了开发效率
  3. 极简的组件依赖,自动发现与自动装配
  4. 提供运行时的应用监控
  5. 与分布式架构和云计算的天然集成(Spring DataSpring Cloud

二、Maven 构件Spring Boot 应用

1、环境要求

​ JDK 8.0 及以上、IntelliJ集成开发平台

2、Spring Boot 目录结构
目录描述
/src/main项目根目录
/javaJava 源代码目录
/resources资源目录
/resources/static静态资源目录
/resources/templates表示层页面目录
/resources/application.propertiesSpring Boot 配置文件
/test测试文件目录
3、Maven 构建 SpringBoot 项目

​ 创建空的Maven项目,创建如上的目录结构,在 pom.xml 中添加如下三部分配置即可。

<!-- 创建Spring Boot 的基础引用 -->
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.1.RELEASE</version>
</parent>

<dependencies>
    <!-- 使用starter启动器:向当前项目中添加支持Java web 的组件,使用预制的版本 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

</dependencies>

<!-- 定义 Spring Boot 构建、打包方式(插件方式) -->
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>
4、SpringInitialize 构建 SpringBoot 项目

​ IntelliJ 新建项目选择【Spring Initializr】即可自动完成创建。

三、SpringBoot 启动流程与配置

1、Spring Boot 入口类
  1. 入口类命名通常以 *Application 结尾
  2. 入口类上增加 @SpringBootApplication 注解
  3. 利用 SpringApplication.run() 方法启动应用
2、SpringBoot 启动流程

在这里插入图片描述

3、SpringBoot 属性文件配置
  • SpringBoot 支持两种配置文件
    • 属性文件: application.properties
    • YAML格式: application.yml
  • application.properties 配置方式
配置名称描述默认值
server.port端口号8080
server.servlet.context-path设置上下文/
logging.file日志文件输出路径
logging.level最低日志输出级别info
debugfalse开启/关闭调试模式
spring.datasource.*与数据库相关的配置
  • 示例
# 配置访问端口(默认8080)
server.port=800
# 设置应用上下文
server.servlet.context-path=/springboot
# 配置日志输出到指定的文件中
logging.file=e:/mySpringboot.log
# 配置日志的输出级别 (默认 info)
# 日志的输出级别:debug --> info --> warn --> error --> fatal
logging.level.root=info
# 配置是否开启调试模式 (默认 false)
debug=false

# 配置 JDBC 驱动类
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
# 配置数据库连接地址
spring.datasource.url=jdbc:mysql://localhost:3306/test
# 设置数据库访问用户名
spring.datasource.username=root
# 用户密码
spring.datasource.password=root

4、SpringBoot YAML方式配置

YAML 是一种简洁的非标记语言。YAML以数据为中心,使用空白,缩进,分行组织数据,从而使得表示更加简洁易读。

  • YAML语法格式
  1. 标准格式:key:(空格)value
  2. 使用空格代表层级关系,以":"结束
  • 示例配置
# 是否开启debug
debug: false

# 日志相关
logging:
  level:
    root: info
  file: /local/user/app-prd.log

# 数据库相关
spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://155.21.5.88:3308/prd
    username: root2
    password: 102

# 自定义配置项
mall:
  config:
    name: 优美商城
    description: 这是一家化妆品特卖网站
    hot-sales: 203
    show-advert: true

# 应用端口
server:
  port: 80
5、Spring Boot 自定义配置项

​ Spring Boot允许我们自定义应用配置项,在程序运行时允许动态加载,这为程序提供了良好的可维护性。在实际项目开发中,我们通常将项目的自定义信息放在配置文件中。

  • 在上面的 YAML 配置文件在添加如下自定义配置项
# 自定义配置项
mall:
  config:
    name: 美美商城
    description: 这是一家化妆品销售网站
    hot-sales: 203
    show-advert: true
  • 控制器类访问方式
@Controller
public class MyController {
    // @Value 注解会自动扫描 YAML 文件进行注入
    // 注入时会自动进行类型转换
    @Value("${mall.config.name}")
    private String name;
    @Value("${mall.config.description}")
    private String description;
    @Value("${mall.config.hot-sales}")
    private Integer hotSales;
    @Value("${mall.config.show-advert}")
    private Boolean showAdvert;

    @RequestMapping("/info")
    @ResponseBody
    public String info() {
        return String.format("name: %s, description: %s, hot-sales: %s, show-advert: %s", name, description, hotSales, showAdvert);
    }
}
6、环境配置文件
  1. SpringBoot 可针对不同的环境提供不同的 Profile 文件,即多个 .yml文件
  2. Profile文件的默认命名格式为 application-{env}.yml
  3. 使用 spring.profiles.active 选项来指定不同的 profile

在这里插入图片描述

  • 选择配置文件

    可以在 application.yml 选择使用哪一个配置文件。

spring:
  profiles:
    # 指定使用的配置文件
    active: prd

三、打包与运行

1、利用 Maven 的 package命令,生成可独立运行的 Jar包

​ 使用 Maven 的打包命令,在填写的指定目录会生成对应的 Jar 包。

在这里插入图片描述

2、cmd 中利用 java -jar xxx.jar 命令 启动 SpringBoo t应用

​ 在 cmd 中使用 java -jar xxx.jar 即可启动 SpringBoo t应用。

3、Jar包可自动加载同目录的 application配置文件

​ 运行Jar包生成的项目,会优先加载同目录的 application配置文件,如果想要修改 application配置,直接在同目录下复制 application配置文件,直接修改即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值