配置变量/配置数组/比较配置文件/多环境配置/服务器笔记
创始人
2025-01-11 18:35:28
0
  • 配置变量

演示错误操作:

  1. 在application.yml文件中

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/t311
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    map-underscore-to-camel-case: false  #使用驼峰命名法


#配置变量
username: 罗学敏

  1. 在controller层

@RestController
public class TestController {

    @Value("${username}")
    private String userName;

    @GetMapping("getUN")
    public String getUserName(){
        return userName;
    }
}

原因:   username会其它同名,运行后会出现本机的名称

所以取一个不与username同名即可

正确操作:

#配置变量
usernames: 罗学敏

@RestController
public class TestController {

    @Value("${usernames}")
    private String userName;

    @GetMapping("getUN")
    public String getUserName(){
        return userName;
    }
}

二、配置数组

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/t311
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    map-underscore-to-camel-case: false  #使用驼峰命名法


#配置变量
usernames: 罗学敏

#配置数组
#指定前缀,只有有一个
my:
  arr: [1,2,3]
  address:
    - 益阳
    - 长沙
    - 浏阳

在创建一个实体类

package com.entity;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * 配置文件的注入
 */
@Component
@ConfigurationProperties(prefix = "my")  //添加前缀
@Data
public class My {
    private String[] address;

    private int[] arr;
}

在controller层

@RestController
@Slf4j //日志操作
public class TestController {

    @Value("${usernames}")
    private String userName;

    @Autowired
    public My my;  //创建一个对象

    @GetMapping("getUN")
    public String getUserName(){
        log.info(my.toString());
        return userName;
    }
}

运行后

三、比较配置文件

1.Application.properties (1)配置文件 优先于 Application.yml (2)配置文件

2.在resources下建立一个config包(3)   优先于(1) (2)配置文件

运行后

3.在项目下面建立(4)   优先于(1) (2) (3)配置文件

4.在项目下面建立(5)  优先于(1) (2) (3) (4)配置文件

5.在app运行点击下面(6)  优先于(1) (2) (3) (4) (5)配置文件

-Dserver.port=14101

  • 多环境配置

就会出现

profiles:
  active: lxm

就会出现

spring:
  config:
    activate:
      on-profile: lxm

整体如下:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/t311
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
  profiles:
    active: lxm
mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    map-underscore-to-camel-case: false  #使用驼峰命名法

#配置数组
#指定前缀,只有有一个
my:
  arr: [1,2,3]
  address:
    - 益阳
    - 长沙
    - 浏阳

server:
  port: 10000

--- #区别不同的配置块/不同环境
spring:
  config:
    activate:
      on-profile: lxm
#配置变量
usernames: 罗学敏

---
spring:
  config:
    activate:
      on-profile: lw
#配置变量
usernames: 刘伟

如果更改activate

添加配置文件如下:

在app运行中添加

  -Dspring.profiles.active=lw

                                      

  • 服务器

除了常用的Tomcate 还有jetty  jboss  weblogic

使用jetty服务器

1.添加依赖

运行后

      

                   

相关内容

热门资讯

最新通报"aapok... 最新通报"aapokerai辅助"aapoker辅助工具ai(竟然有挂)-哔哩哔哩1、打开软件启动之...
一分钟教你"aapo... 一分钟教你"aapokerai辅助"aapokerai辅助(一直存在有挂)-哔哩哔哩1、每一步都需要...
揭秘真相"aapok... 揭秘真相"aapoker辅助工具ai"aapoker透明挂下载(都是是真的有挂)-哔哩哔哩;进入游戏...
揭秘真相"aapok... 揭秘真相"aapoker真的有猫腻吗"aapoker透视挂效果(竟然有挂)-哔哩哔哩1、打开软件启动...
重要通知"aa po... 重要通知"aa poker有外挂吗"aa poker智能ai辅助价格(其实真的有挂)-哔哩哔哩1、a...
推荐一款"aapok... 推荐一款"aapoker辅助工具ai"aapoker透视辅助(好像是有挂)-哔哩哔哩;所有人都在同一...
一分钟快速了解"aa... 一分钟快速了解"aapoker真的有猫腻吗"aapoker辅助软件(好像真的有挂)-哔哩哔哩1、每一...
盘点一款"aapok... 盘点一款"aapokerai辅助"aapoker透明挂辅助器(好像真的是有挂)-哔哩哔哩1、该软件可...
我来教教大家"aap... 我来教教大家"aapokerai辅助"aapokerai辅助(真是真的是有挂)-哔哩哔哩小薇(透视辅...
盘点一款"aapok... 盘点一款"aapoker真的有猫腻吗"aapoker外挂怎么获取(切实是有挂)-哔哩哔哩;1、盘点一...