Springboot快速入门

目录

1.什么是Springboot

SpringBoot的特点:

SpringBoot的核心功能:

我们怎么创建SpringBoot呢?

步骤①:创建新模块,选择Spring Initializr,并配置模块相关基础信息

步骤②:选择当前模块需要使用的技术集

配置如何编写yaml

1.读取单一数据

2.读取全部数据

3.读取对象数据

yaml文件中的数据引用

配置随机值

多环境开发

 多环境开发(yaml单一文件版)


1.什么是Springboot

Spring Boot是为了简化Spring应用的创建、运行、调试、部署等而出现的,使用它可以做到专注于Spring应用的开发,而无需过多关注XML的配置

简单来说,它提供了一堆依赖打包Starter,并已经按照使用习惯解决了依赖问题---习惯大于约定。Spring Boot默认使用tomcat作为服务器,使用logback提供日志记录

spring boot 致力于简洁,让开发者写更少的配置,程序能够更快的运行和启动。它是下一代javaweb框架,并且它是spring cloud(微服务)的基础。约定大于配置

我们为什么要用Springboot呢,Springboot有什么特点呢?

SpringBoot的特点:

1) 为基于Spring的开发提供更快的入门体验

2) 开箱即用,没有代码生成,也无需XML配置。同时也可以修改默认值来满足特定的需求

3) 提供了一些大型项目中常见的非功能性特性,如嵌入式服务器、安全、指标,健康检测、外部配置等

4) SpringBoot不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式

SpringBoot的核心功能:

  • 起步依赖(简化依赖配置)

起步依赖本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。简单的说,起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能。

  • 自动配置(简化常用工程相关配置)

Spring Boot的自动配置是一个运行时(更准确地说,是应用程序启动时)的过程,考虑了众多因素,才决定Spring配置应该用哪个,不该用哪个。该过程是Spring自动完成的。

  • 辅助功能(内置服务器,……)

除了上面的功能,其实SpringBoot程序还有其他的一些优势,比如我们没有配置Tomcat服务器,但是能正常运行,这是SpringBoot入门程序中一个可以感知到的功能,也是SpringBoot的辅助功能之一。一个辅助功能都能做的这么6,太牛了。

官方文档下载: Index of /spring-boot/docs

我们怎么创建SpringBoot呢?

有两种方式:

  • maven的方式

    maven方式创建: 启动类, 依赖, 这些都需要手动编写,但是不需要网络

  • Spring Initializr

spring initerzie 方式创建: 启动类, 依赖 生成,但是需要网络

步骤①:创建新模块,选择Spring Initializr,并配置模块相关基础信息

步骤②:选择当前模块需要使用的技术集

这样就创建好了,直接运行就行。

出现下图所示就代表创建成功了:

配置如何编写yaml

对于yaml文件中的数据,其实你就可以想象成这就是一个小型的数据库,里面保存有若干数据,每个数据都有一个独立的名字,如果你想读取里面的数据,肯定是支持的,下面就介绍3种读取数据的方式。

1.读取单一数据

yaml中保存的单个数据,可以使用Spring中的注解@Value读取单个数据,属性名引用方式

{一级属性名.二级属性名……}

注意:使用@Value注解时,要将该注解写在某一个指定的Spring管控的bean的属性名上方,这样当bean进行初始化时候就可以读取到对应的单一数据了。

2.读取全部数据

读取单一数据可以解决读取数据的问题,但是如果定义的数据量过大,这么一个一个书写肯定会累死人的,SpringBoot提供了一个对象,能够把所有的数据都封装到这一个对象中,这个对象叫做Environment,使用自动装配注解可以将所有的yaml数据封装到这个对象中

数据封装到了Environment对象中,获取属性时,通过Environment的接口操作进行,具体方法是getProperties(String),参数填写属性名即可.

3.读取对象数据

单一数据读取书写比较繁琐,全数据读取封装的太厉害了,每次拿数据还要一个一个的getProperties(),总之用起来都不是很舒服。由于Java是一个面向对象的语言,很多情况下,我们会将一组数据封装成一个对象。SpringBoot也提供了可以将一组yaml对象数据封装一个Java对象的操作

首先定义一个对象,并将该对象纳入Spring管控的范围,也就是定义成一个bean,然后使用注解@ConfigurationProperties指定该对象加载哪一组yaml中配置的信息。

注意:

  1. 使用@ConfigurationProperties注解绑定配置信息到封装类中

  2. 封装类需要定义为Spring管理的bean,否则无法进行属性注入

yaml文件中的数据引用

如果你在书写yaml数据时,经常出现如下现象,比如很多个文件都具有相同的目录前缀

center:
	dataDir: /usr/local/spring/data
    tmpDir: /usr/local/spring/tmp
    logDir: /usr/local/spring/log
    msgDir: /usr/local/spring/msgDir

这个时候你可以使用引用格式来定义数据,其实就是搞了个变量名,然后引用变量了,格式如下:

baseDir: /usr/local/spring
center:
    dataDir: ${baseDir}/data
    tmpDir: ${baseDir}/tmp
    logDir: ${baseDir}/log
    msgDir: ${baseDir}/msgDir

注意:

在书写字符串时,如果需要使用转义字符,需要将数据字符串使用双引号包裹起来

menu: "system\user\add"

配置随机值

SpringBoot属性配置文件中可以通过${random}来产生int值,long值或者String字符串,来支持属性的随机值.

#随机
suke:
  #随机字符串
  str: ${random.value}
  #随机int
  number: ${random.int}
  #随机long
  bignumber: ${random.long}
  #10以内的随机数
  number1: ${random.int(10)}
  #12-65的随机数
  number2: ${random.int[12,65]}
多环境开发

什么是多环境?其实就是说你的电脑上写的程序最终要放到别人的服务器上去运行。每个计算机环境不一样,这就是多环境。常见的多环境开发主要兼顾3种环境设置,开发环境——自己用的,测试环境——自己公司用的,生产环境——甲方爸爸用的。因为这是绝对不同的三台电脑,所以环境肯定有所不同,比如连接的数据库不一样,设置的访问端口不一样等等。

 多环境开发(yaml单一文件版)
  1. 配置激活选项

spring:
      profiles:
		active: dev

2..在配置文件添加三个英文状态下的短横线即可区分 ---

spring:
  profiles:
    active: prod		# 启动prod
---
spring:
  profiles: prod
server:
  port: 8080
---
spring:
  profiles: dev
server:
  port: 8081
---
spring:
  profiles: test
server:
  port: 8082

在SpringBoot的新版本中spring.profiles已过时, 新版本推荐的是:

spring:
 profiles:
    active: test		# 启动prod
---
spring:
  config:
    activate:
      on-profile: prod
server:
 port: 8080
---
spring:
  config:
    activate:
      on-profile: dev
server:
 port: 8081
---
spring:
  config:
    activate:
      on-profile: test
server:
  port: 8082

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值