金歌 发表于 2024-8-12 09:43:07

配置变量/配置数组/比较配置文件/多情况配置/服务器笔记


[*]配置变量
演示错误操纵:

[*]在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: 罗学敏


[*]在controller层
@RestController
public class TestController {

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

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

https://i-blog.csdnimg.cn/blog_migrate/3a0411a634f0a1c5a7bdd330c4f01079.png
原因:   username会其它同名,运行后会出现本机的名称
所以取一个不与username同名即可

正确操纵:
#配置变量
usernames: 罗学敏

@RestController
public class TestController {

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

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

https://i-blog.csdnimg.cn/blog_migrate/40542ace64e126134d5d9e16073ff28f.png

二、配置数组
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:
  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;
    }
}

运行后
https://i-blog.csdnimg.cn/blog_migrate/79dd17355733f177aaeaa2fecc9882f2.png


三、比较配置文件
1.Application.properties (1)配置文件 优先于 Application.yml (2)配置文件

2.在resources下创建一个config包(3)   优先于(1) (2)配置文件
https://i-blog.csdnimg.cn/blog_migrate/cf767777c500bc54a4e46f9d0ffcde41.png
运行后
https://i-blog.csdnimg.cn/blog_migrate/a4889007539843bbc946621165bbac0d.png

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

https://i-blog.csdnimg.cn/blog_migrate/7de8122b7404edb6a97eeffbdb7f3841.png

4.在项目下面创建(5)  优先于(1) (2) (3) (4)配置文件
https://i-blog.csdnimg.cn/blog_migrate/9113b7e9f03c83e86235313dfa168f00.png

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

https://i-blog.csdnimg.cn/blog_migrate/86b69912ed7ea3641b15216e60d6e091.png
https://i-blog.csdnimg.cn/blog_migrate/a383a46e3cbed83ecc02cfe4178462fe.png
-Dserver.port=14101



[*]多情况配置
https://i-blog.csdnimg.cn/blog_migrate/2479886ef9a7cfdfbcb14fa74590b2b0.png
就会出现
profiles:
  active: lxm

https://i-blog.csdnimg.cn/blog_migrate/07b95928c436111df84ab017f4b0259f.png
就会出现
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:
  address:
    - 益阳
    - 长沙
    - 浏阳

server:
  port: 10000

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

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


https://i-blog.csdnimg.cn/blog_migrate/89205a8ce814dba9ea60e69ebd9609fe.png

https://i-blog.csdnimg.cn/blog_migrate/fd359332bb98ab89a4278fabf8534d29.png

如果更改activate
https://i-blog.csdnimg.cn/blog_migrate/dfbcc973d5a44422bab8d7978ee24855.png

https://i-blog.csdnimg.cn/blog_migrate/3af68d677e48e076039ab4033aae7eab.png

添加配置文件如下:
https://i-blog.csdnimg.cn/blog_migrate/38fcae76c6c4ab84d385af916923eaf8.png

https://i-blog.csdnimg.cn/blog_migrate/dcab1a20b05c394856ad8b6e8b5c0d82.png

在app运行中添加
https://i-blog.csdnimg.cn/blog_migrate/82f6063752ea53141206bfbadb66ce3d.png
  -Dspring.profiles.active=lw

https://i-blog.csdnimg.cn/blog_migrate/f4fbb616f4f3f540189bac2c6aa5fe39.png
                                      


[*]服务器
除了常用的Tomcate 还有jetty  jboss  weblogic
使用jetty服务器
1.添加依靠
https://i-blog.csdnimg.cn/blog_migrate/a6de2abaa30dfeadb8486c4b5caa4017.png
运行后
https://i-blog.csdnimg.cn/blog_migrate/bacb153545f3f666db5feb0e71234fba.png
      


                   


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 配置变量/配置数组/比较配置文件/多情况配置/服务器笔记