03_springboot

一、简介

SpringBoot提供了一种快速使用Spring的方式,基于约定优于配置的思想,可以让开发人员不必在配置与逻辑业务之间进行思维的切换,全身心的投入到逻辑业务的代码编写中,从而大大提高了开发的效率,一定程度上缩短了开发周期。

  • Spring的缺点
    配置繁琐
    依赖繁琐
  • SpringBoot的功能
    自动配置
    起步依赖
    辅助功能:嵌入式服务器、安全、指标,健康检测、外部配置等。

小结:Spring Boot 并不是对 Spring 功能上的增强,而是提供了一种简化使用 Spring 的方式。

二、概述

1、起步依赖原理

  • 版本锁定
  • 依赖传递

2、配置文件

  • 分类
properties、yml 、yaml,


在同一级目录下==优先级为:properties>yml > yaml==
  • yml数据格式
**对象(map)**:键值对的集合。
person:  
   name: zhangsan
# 行内写法
person: {name: zhangsan}


**数组**
address:
  - beijing
  - shanghai
# 行内写法
address: [beijing,shanghai]


**纯量**:单个的、不可再分的值
msg1: 'hello \n world'  # 单引忽略转义字符
msg2: "hello \n world"  # 双引识别转义字符

**参数引用**
name: lisi 
person:
  name: ${name} # 引用上边定义的name值
  • 获取配置数据

@Value
Evironment
@ConfigurationProperties

  • profile
多profile文件方式
application-dev.properties/yml 开发环境
application-test.properties/yml 测试环境
application-pro.properties/yml 生产环境


yml多文档方式
spring:
  profiles:
    active: dev
---
# 开发环境
server:
  port: 8081
spring:
  profiles: dev
---
# 生产环境
server:
  port: 8082
spring:
  profiles: pro
---
# 测试环境
server:
  port: 8083
spring:
  profiles: test
---



profile激活方式
配置文件: 在配置文件中配置:spring.profiles.active=dev
虚拟机参数:在VM options 指定:-Dspring.profiles.active=dev
命令行参数:java –jar xxx.jar  --spring.profiles.active=dev
  • 配置文件加载顺序
内部文件加载顺序
1. 【file】./config/:当前项目下的/config目录下

2. 【file】./:当前项目的根目录

3. 【classpath】/config/:classpath的/config目录

4. 【classpath】./:classpath的根目录


外部文件加载顺序

指定配置文件位置
 java -jar myproject.jar --spring.config.location=e://application.properties

外部不带profile的properties文件
classpath:/config/application.properties
classpath:/application.properties

三、使用

1、快速入门

  • pom文件
 <dependencies>
        <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>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.16</version>
            <scope>provided</scope>
        </dependency>


        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>

        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.2.6</version>
        </dependency>

        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.2.0</version>
        </dependency>

    </dependencies>


    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.5.2</version>
            </plugin>
        </plugins>
    </build>
  • 配置文件
server:
  port: 80
spring:
  datasource:
    url: jdbc:mysql:///db1?serverTimezone=UTC
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
mybatis:
  type-aliases-package: com.xingyu.pojo
  mapper-locations: classpath:mapper/*Mapper.xml

  • xml文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mapper.UserMapper">

    <select id="findAll" resultType="user">
        select * from user;
    </select>

</mapper>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值