• SpringBoot概述


    一、SpringBoot

      SpringBoot实在Spring的基础之上产生的(确切的说是在Spring4.0的版本基础之上),其中“Boot”的意思就是"引导",意在简化开发模式,是开发者能够快速开发出基于Spring的应用。SpringBoot含有一个内嵌的web容器,我们在开发web应用不需要作为war包部署到web容器中,而是作为一个jar包,在启动的时候根据web服务器的配置进行加载。

      在不使用SpringBoot之前,如果要使用Spring框架:在项目中存在大量的xml文件,配置相当繁琐,整合第三方框架时的配置复杂,低效的开发效率和部署效率,有了SpringBoot就改变了这些问题。

      也就是说,使用SpringBoot后,使配置变得简单,使编码变得简单,使部署变得简单,使监控变得简单。

    二、使用SpringBoot快速构建项目

      可以使用SpringBoot的官网构建SpringBoot项目:

      https://spring.io/projects/spring-boot

      https://start.spring.io/

      使用SpringBoot官网构建项目,会帮助我们自动生成启动类,自动生成存放静态资源的目录,自动生成全局配置文件,自动生成测试代码。

    三、SpringBoot配置文件

    1,修改内嵌容器端口号

    server.port=8888

    2,自定义属性配置

    msg=Hello World

    @Value("${msg}")

    private String msg;

    3,配置变量引用

    name=guanghe

    msg=Hello ${name}

    @Value("${mag}")

    private String msg;

    4,随机值配置(在程序中如果一些运算需要一个随机值,那么可以使用该方式来生成,注意:只生成一次)

    num=${random.int}

    msg=Hello ${num}

    @Value("${msg}")

    private String msg;

    5,配置随机端口(在SpringCloud微服务中,我们是不需要记录IP与端口号的,那么我们也就不需要去维护服务的端口号,让它随机生成就可以了)

    server.port=${random.int[1024,9999]}

    四、yml配置文件

      yml配置文件是SpringBoot中新增支持的一种配置文件的格式,具备天然的树状结构。

    yum配置文件基本语法

    1,在properties文件中是以"."(点)进行分割,在yml中使用": "(冒号加空格)进行分割。

    2,yml的数据格式和json的格式很像,都是k-v结构,并且通过": "赋值,只不过yml赋值符中要有空格。

    3,在yml中缩进一定不能使用tab键,否则会报错,使用多少个空格缩进无所谓。

    五、SpringBoot多配置文件(多环境选择)

    设:profile代表一个环境变量

    那么:application-{profile}.properties代表不同部署环境下使用的配置文件,例如

    application-dev.properties

    application-test.properties

    application-prod.properties

    当运行项目时,加运行参数选择使用的配置文件

    格式:java -jar xxx.jar --spring.profiles.active={profile}

    例:java -jar springBoot-hello-0.0.1-SNAPSHOT.jar --spring.profile.active=dev|test|prod

    六、SpringBoot核心注解

    @SpringBootApplication:代表是SpringBoot的启动类。

    @SpringBootConfiguration:通过bean对象来获取配置信息。

    @Configuration:通过对bean对象的操作替代spring中的xml文件。

    @EnnableAutoConfiguration:完成一些初始化环境变量的配置。

    @ComponentScan:来完成spring的组件扫描,替代之前我们在xml文件中配置组件扫描的配置<context:component-scan package="......">

    @RestController:@Controller+@ResponseBody  

  • 相关阅读:
    学习windows的半天+学习Git分布式系统的半天
    输出从1加到100的结果、打印100以内的质数、计算一个文件中的每个英文单词出现的次数
    Linux操作系统--初级--进程管理的命令
    Linux操作系统--初级--防火墙
    Linux操作系统--初级--dns服务
    Linux操作系统--初级--网络安全基础
    Linux操作系统--初级--进程管理
    Linux操作系统--初级--Linux网络
    Linux操作系统--初级--Linux磁盘管理
    Linux操作系统--初级--Linux的用户与用户组(权限管理)
  • 原文地址:https://www.cnblogs.com/guanghe/p/11014272.html
Copyright © 2020-2023  润新知