SpringBoot 入门

SpringBoot 入门

  • SpringBoot 概括为:是一个快速开发的框架,能够帮助我们快速整合第三方框架(主要借助于 Maven 依赖关系),完全采用注解化,简化 XML 配置,内置嵌入 Http 服务器(Tomcat,Jetty), 默认嵌入 Tomcat 服务器,最终以 Java 应用程序进行执行.
  • SpringBoot 的主要特点为:
    ⚫ 创建独立的 Spring 应用程序
    ⚫ 嵌入到 Tomcat,无需部署 WAR 文件
    ⚫ 简化 Maven 配置
    ⚫ 自动配置 Spring
    ⚫ 提供生产就绪型功能,如指标,健康检查和外部配置
    ⚫ 绝对没有代码生成并且对 XML 也没有配置要求

开发环境

  1. JDK 的要求 使用 SpringBoot 必须使用 JDK1.8 以上版本。
  2. 开发工具 Eclipse 和 IDEA,Eclipse
  3. Maven 的要求:项目管理工具推荐使用 apache-maven-3.3.9 及以上版本。

1快速创建SpringBoot项目

STS:使用 Spring Starter Project快速创建项目

2配置文件

SpringBoot使用二种全局的配置文件,配置文件名是固定的:

  • application.properties
  • application.yml
    配置文件的作用:修改SpringBoot自动配置的默认值
  • YAML语法
    key: value:表示一对键值对(:后必须有空格)
    YAML以空格的缩进来控制层级关系,只要左对齐的一列数据都是同一层级,同时对大小写敏感
2.1 配置文件加载顺序

springboot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot的默认配置文件

file:./config/
file:./
classpath:/config/
classpath:/
上述优先级由高到低,高优先级的配置会覆盖低优先级的配置,同时配置互补。项目打包好以后,我们可以使用命令行参数的形式,启动项目的时候来可以使用spring.config.location指定外部的配置文件位置

3多环境配置的设置

  • 创建多环境配置文件的时候,需要遵循 SpringBoot 允许的命名约定来命名,即按照这样的格式: application-{profile}.properties。接下来,我们可以根据项目的开发、测试、生产三个环境,分别定义三个环境 配置文件,并分别在配置文件中定义不同的 Tomcat 端口号来进行测试
  • 命令行设置属性值 其实,除了通过设置配置文件来修改属性值外,还可以通过命令行来修改属性值 (命令行更改属性值的优先级最高)。
自定义属性
  • SpringBoot 可以在配置文件中修改默认约定的属性值,还可以添加一些自己需要的属性,也就是可以自定义 一些属性。这些自定义的属性可以使用@Value 注解将属性值注入到 beans 中,或使用@ConfigurationProperties 注解将属性值绑定到结构化的 beans 中 。
  • 绑定属性值 定义一个 Student 类需要添加@Component 注解,让 spring 在启动的时候扫描到该类,并添加到 spring 容 器中。接下来为各个属性绑定值,通常有两种方法可以实现:一种是@Value,另一种是 @ConfigurationProperties。
    == 注意:@PropertySource 用于指定配置文件的位置,需要注意的是只能指定后缀为 properties 的配置文件,
    不能指定 yaml 文件==
    (1)、@Value 的使用
    @Value 注解可以绑定属性值,但是只能绑定简单类型的属性值,通常通过 SqEL 方式绑定
    (2)、@ConfigurationProperties 的使用
    @ConfigurationProperties 用于批量的为属性绑定值,可以用于任何数据类型,使用时需指定配置文件属性 的前缀。首先需要导入依赖 spring-boot-configuration-processor
  • @ConfigurationProperties 用于批量注入值,可以和@Value 一块使用,两者可以互补,@ConfigurationProperties 的优先级高于@Value。
@ConfigurationProperties 注解的优缺点如下: 
1) 可以从配置文件中批量注入属性; 
2) 支持获取复杂的数据类型; 
23 
3) 对属性名匹配的要求较低,比如 user-name,user_name,userName,USER_NAME 都可以取值; 
4) 支持 JAVA 的 JSR303 数据校验; 
5) 缺点是不支持强大的 SpEL 表达式; 
@Value 注解的优缺点正好相反,它只能一个个配置注入值;不支持数组、集合等复杂的数据类型;不支持
数据校验;对属性名匹配有严格的要求。最大的特点是支持 SpEL 表达式,使其拥有更丰富的功能。 

随机数配置

SpringBoot 支持在系统加载的时候配置随机数,使用${random} 可以生成各种不同类型的随机值,从而简 化了代码生成的麻烦

  • 需要注意的是:
  • ⚫ 占位符的值必须是完整路径
  • ⚫ 占位符设置默认值,冒号后面不能有空格
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值