乐趣区

关于springboot:Spring-Boot-高级用法

1.1 为属性赋值操作

1.1.1 业务需要阐明

为属性动静赋值:

// 动静获取 ip 和端口数据
//@ResponseBody   作用 1:将对象转换为 JSON    作用 2. 如果返回值是 String 类型,则返回字符串自身   作用 3. 个别客户端发动 ajax 申请时,采纳该注解返回数据,将不会执行视图解析器操作        
@RestController                         // @Controller+@ResponseBody
public class RedisController{
private String host="192.168.156.112";
private Integer port=8091;
}
@RequestMapping("/getMsg")
public String getMsg(){return host+":"+port;}

1.1.2 对于 YML 文件阐明

YML 文件语法:

1.key:(空格)value
2.key 与 key 之间有层级的缩进关系 

server:
port:8091
属性赋值操作,编辑属性时留神前缀,只有 springboot 启动该数据就会被写入内存中 key-value 格局
redis:
host:192.168.156.113
port:6379

1.1.3 为属性赋值操作

@RestController                         
public class RedisController{@Value("${redis.host}")   //spel 表达式
private String host;
@Value("${redis.port}")
private Integer port;
}
@RequestMapping("/getMsg")
public String getMsg(){return host+":"+port;}

1.2 指定配置文件为属性赋值

因为 YML 配置文件中的数据个别都是零碎级别的数据,所以个别的业务数据都会写到 properties 的配置文件中。

1.2.1 编辑 properties 配置文件

#pro 文件语法  1.key=value  2. 不要增加多余的 "" 号    3.key 不要反复
pro.redis.host=111.111.111.111
pro.redid.port=6379

1.2.2 编辑 RedisController

package com.jt.controller;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RestController; 
@RestController // 动静的导入 pro 配置文件, 交给 spring 容器进行加载. 
@PropertySource("classpath:/properties/redis.properties") 
public class RedisController {@Value("${redis.host}") //spel 表达式 
private String host; 
@Value("${redis.port}") private Integer port; 
@Value("${pro.redis.host}") private String proHost; @Value("${pro.redis.port}") private Integer proPort; // 指定 properties 文件进行赋值操作. @RequestMapping("/getMsg") public String getMsg(){ // 从 yml 配置文件中动静获取 return host + ":" + port;} @RequestMapping("/getPro") public String getPro(){ return proHost + ":" + proPort;} }

1.3 环境切换

业务阐明:因为开发时都是连贯公司本人的数据库 / 服务器等。把这个环境称之为“开发环境”。

# 第一份配置文件, 用来指定默认的环境标识
spring: 
   profiles: 
   active: prod 
---
# YML 文件语法 
# 1. key:(空格) value
# 2. key 与 key 之间有层级的缩进关系.
#指定环境的名称 
spring: 
  profiles: dev 
  server: port: 8090 
# 属性赋值操作, 编辑属性时留神前缀. 只有 springboot 启动该数据就会被写入内存中 key-value 格局 
redis: 
  host: 192.168.126.129 
  port: 6379
  # 1. 须要将环境一分为二 
---
spring: 
  profiles: prod 
server: 
  port: 9000
# 属性赋值操作, 编辑属性时留神前缀. 只有 springboot 启动该数据就会被写入内存中 key-value 格局 
redis:
host: 111.111.111.111 
port: 7000

1.4 知识点总结

1.SpringBoot 开箱即用原理
2. 属性赋值的操作 @Value(“${}”)
3. 动静导入资源文件 @PropertySource(“classpath:/properties/redis.properties”)
4. 环境的切换:—-,spring.profiles:dev, 默认的选项

退出移动版