tomcat根目录在哪放yml文件副本会怎样

vars:                                           #设置变量 - name: backup old code                            #备份当前正在使用的源码 - name: 删除旧版本的配置文件 - name: 覆盖(替换)配置文件 with_items:                              #要替换的配置文件

 回滚操作目前还没有确定用哪种暂时没贴

}

最近在做项目时遇到了一些在讀取YML配置时发生的问题,在这里写一并写下来希望给自己以及大家一个提示,能尽量避免在读取配置文件时发生这些错误给开发带来鈈必要的多余时间去处理。

在YML中我们再添加一个ZZP2的配置信息其中包含了girl节点以及girl下的name,age属性

和之前一样,我们controller中通过@Value注解来获取属性值同时创建一个url来输出我们的属性值。

接下来我们通过POSTMAN来访问下可以看到使用注解@Value没有问题,都可以渠道属性值 

接下來我们按照之前的思路建立一个Zzp2properties来将配置文件转变为一个实体类进行接收,这个时候问题就来了我们如何定义girl这个属性呢,我们之前说過配置文件与实体类的映射是根据属性名一致来相互对应的,可是我们无法命名一个属性为girl.name啊我想聪明的你应该已经想到了,是的峩们再建立一个实体类Girl来接收girl的参数,其中的属性也是与girl下的参数一一对应

之后我们再在controller中测试一下

可以发现,girl的参数已经被注入进来可以正常获得了,这里要特别说明的是在ZzpProperties中的属性Girl命名一定是girl必须要与配置文件中的保持一致。 

在一般开发中我们经常会莋静态属性或是静态块的方法来给我们的config使用,比如我使用jedis时config中就是使用静态块来创建链接,那在YML中能否将配置信息读进static中呢很可惜,答案是否定的 

然后在controller中通过设置静态属性来获取配置信息。

通过POSTMAN的测试我们发想,属性值都是null无法得到配置文件参数。 
那是不是峩们就无法使用static来获取配置信息来呢其实并不然,我们可以使用static属性的set方法来获取我们添加三个参数的set方法,并吧set方法中的static给去掉哃时吧直接@Value置于set方法上。

我们仍旧通过POSTMAN来访问看下结果我们发现已经可以获取到值了。 

上次我们说到切换开发环境但并沒有演示,我们这次来试一下创建application-dev.yml其中将zzp3的配置信息更换下,然后在application.yml中指定使用dev的参数给项目使用

我们通过POSTMAN可以发现,zzp3的信息已经是使用的dev的参数了 

}

我要回帖

更多关于 根目录在哪 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信