SpringBoot 基础

pom.xml

<!-- Spring Boot 依赖版本控制 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent> <!--
spring-boot-start-web:
spring-boot-start: spring-boot场景启动器;导入web模块所需的依赖
-->

主程序类,入口类

  • @SpringBootApplication 标注入口类,SpringBoot从这里的main方法启动;

    @Target({ElementType.TYPE})
    @Retention(RetentionPolicy.RUNTIME)
    @Documented
    @Inherited
    @SpringBootConfiguration
    @EnableAutoConfiguration
    @ComponentScan(
    excludeFilters = {@Filter(
    type = FilterType.CUSTOM,
    classes = {TypeExcludeFilter.class}
    ), @Filter(
    type = FilterType.CUSTOM,
    classes = {AutoConfigurationExcludeFilter.class}
    )}
    )
    public @interface SpringBootApplication { ...} @AutoConfigurationPackage
    @Import({AutoConfigurationImportSelector.class})
    public @interface EnableAutoConfiguration {
    • @SpringBootConfiguration:Spring Boot的配置类

      • @Configuration:标注在配置类上; 配置类 ---- 配置文件
    • @EnableAutoConfiguration:开启自动配置
      • @AutoConfigurationPackage:自动配置包
      • @Import({xxxx.class}):底层注解,给容器自动导入一个组件

resource文件夹

  • static: 静态资源
  • templates: 模板页面(Spring Boot默认使用嵌入式的Tomcat,默认不支持JSP;可以使用模板引擎)
  • application.properties: Spring Boot配置文件
    • @PropertySource(value = {"classpath:config.properties"}):指定配置文件
    • SpringBoot默认使用的全局配置文件:
      • application.properties
      • application.yml

配置文件

  • YAML 语法

    • k:(空格)v: 一对键值对,属性、值大小敏感
    • 以空格缩进表示层级关系
      # 字面量:普通的值
      # 双引号:不会转义特殊字符;单引号:会转义特殊字符
      # 对象、Map:在下一行写对象的属性和值的关系,注意缩进
      # 数组:用`-`来表示数组中的一个元素
      k: v
      friend1:
      name: zhangsan
      age: 20
      friend2: {name: lisi, age: 18} # 行类写法
      pets1:
      - cat
      - dog
      pets2: [cat, dog]
  • 导入配置文件处理器

    <!--导入配置文件处理器,配置文件进行绑定就会有提示-->
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
    </dependency>
  • 配置信息封装成实体类

    • @Component:组件类,自动加载到容器
    • @ConfiguartionProperties(prefix = "xxx"):将类中的属性与配置文件进行绑定;prefix="xxx":配置文件下的哪个对象进行映射
    • @Value:指定属性注入,不支持松散语法绑定

SpringBoot 基础01的更多相关文章

  1. SpringBoot基础实战系列(一)整合视图

    SpringBoot整合freemarker 1.添加依赖:springboot基本上是无缝衔接,基本上只需要添加对应的依赖,不需要或者做很少量的配置即可 注:对于springboot项目的创建此处不 ...

  2. MacOS下SpringBoot基础学习

    学于黑马和传智播客联合做的教学项目 感谢 黑马官网 传智播客官网 微信搜索"艺术行者",关注并回复关键词"springboot"获取视频和教程资料! b站在线视 ...

  3. javascript基础01

    javascript基础01 Javascript能做些什么? 给予页面灵魂,让页面可以动起来,包括动态的数据,动态的标签,动态的样式等等. 如实现到轮播图.拖拽.放大镜等,而动态的数据就好比不像没有 ...

  4. Androd核心基础01

    Androd核心基础01包含的主要内容如下 Android版本简介 Android体系结构 JVM和DVM的区别 常见adb命令操作 Android工程目录结构 点击事件的四种形式 电话拨号器Demo ...

  5. java基础学习05(面向对象基础01)

    面向对象基础01 1.理解面向对象的概念 2.掌握类与对象的概念3.掌握类的封装性4.掌握类构造方法的使用 实现的目标 1.类与对象的关系.定义.使用 2.对象的创建格式,可以创建多个对象3.对象的内 ...

  6. Linux基础01 学会使用命令帮助

    Linux基础01 学会使用命令帮助 概述 在linux终端,面对命令不知道怎么用,或不记得命令的拼写及参数时,我们需要求助于系统的帮助文档:linux系统内置的帮助文档很详细,通常能解决我们的问题, ...

  7. 可满足性模块理论(SMT)基础 - 01 - 自动机和斯皮尔伯格算术

    可满足性模块理论(SMT)基础 - 01 - 自动机和斯皮尔伯格算术 前言 如果,我们只给出一个数学问题的(比如一道数独题)约束条件,是否有程序可以自动求出一个解? 可满足性模理论(SMT - Sat ...

  8. (二)SpringBoot基础篇- 静态资源的访问及Thymeleaf模板引擎的使用

    一.描述 在应用系统开发的过程中,不可避免的需要使用静态资源(浏览器看的懂,他可以有变量,例:HTML页面,css样式文件,文本,属性文件,图片等): 并且SpringBoot内置了Thymeleaf ...

  9. SpringBoot基础系列一

    SpringBoot基础知识概览 特性 核心理念:约定优于配置 特点: 1. 开箱即用,根据项目依赖自动配置 2. 功能强大的服务体系,如嵌入式服务.安全 3. 绝无代码生成,不用写.xml配置,用注 ...

随机推荐

  1. 3D Math Keynote 4

    [3D Math Keynote 4] 1.三角带. 合并三角带能够提升渲染效率. 三角扇. 2.边缩坍,将边缩减为顶点 . 网格消减,使用边缩坍,可以实现渐进式网络. 3.下图左边是面拆分.右边是焊 ...

  2. 网站JS控制的QQ悬浮

    这是一个网站JS控制的QQ悬浮客服:代码1document.writeln("<div id=\"feedback\"><div id=\"f ...

  3. Django之CBV\FBV

    FBV(function base views) 就是在视图里使用函数处理请求. 写一个FBV的实例:在views中代码 :就是写了个函数 def book(request): ''' :param ...

  4. Linux Apache配置https访问

    配置https访问 该环境是rh254课程配套的一个环境,不过配置方法步骤相同. 要求: 使用虚拟主机技术部署两个网站: 网站1: 绑定域名 www0.example.com 目录在 /srv/www ...

  5. 微信小程序日历面板插件

    创建日历面板组件,在components目录下创建calendar文件夹 1.calendar.js // components/calendar/calendar.js var util = req ...

  6. hdu1251+字典树常用模板

    这里只简单给出几个常用的字典树的模板,要看具体介绍的请看:传送门 Problem Description Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现) ...

  7. Hillstone基础上网配置

    1.接口配置 1)进入设备管理界面后,点击左边 网络—接口: 2)选择相应的接口,点击编辑: 3)在接口配置界面中,选择接口的安全域类型(三层接口即为三层安全域,二层接口即为二层安全域).安全域名称 ...

  8. BundleConfig某js文件 全部打包

    var server = HttpContext.Current.Server; var jsFiles = System.IO.Directory.GetFiles(server.MapPath(& ...

  9. MVC4 decimal 精度

    MVC默认为小数点 后2位 更改设置 在我们现在的MovieDBContext类中重载OnModelCreating方法,代码如下所示.public class MovieDBContext : Db ...

  10. centos7安装zabbix server

    1.参照下列网址方法,打开端口:80,3306,443,22,10050,10051(可能实际不需要打开这么多) https://www.cnblogs.com/lw-2019forlinuxpyth ...