#85 YAML Configuration File

Application configuration shouldn't be spread throughout your code base. Instead a much better place to put it is an external YAML file. See how to do that in this episode.

# config/initializers/load_config.rb
APP_CONFIG = YAML.load_file("#{RAILS_ROOT}/config/config.yml")[RAILS_ENV]

# application.rb
def authenticate
if APP_CONFIG['perform_authentication']
authenticate_or_request_with_http_basic do |username, password|
username == APP_CONFIG['username'] && password == APP_CONFIG['password']
end
end
end
# config/config.yml
development:
perform_authentication: false

test:
perform_authentication: false

production:
perform_authentication: true
username: admin
password: secret
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Bukkit/Spigot等Minecraft插件开发中,通常使用Bukkit的YamlConfiguration类来读取和写入yaml格式的配置文件。可以通过以下代码来加载和读取data.yml文件: ```java File file = new File(getDataFolder(), "data.yml"); if (!file.exists()) { saveResource("data.yml", false); } YamlConfiguration config = YamlConfiguration.loadConfiguration(file); ``` 在上述代码中,首先通过File类获取data.yml文件对象,如果文件不存在,则从jar包中读取data.yml文件,然后通过YamlConfiguration类的loadConfiguration方法将文件内容读取为YamlConfiguration对象。 接下来,你可以通过YamlConfiguration对象获取配置文件中的数据。例如,如果你要获取data.yml文件中的"key"键对应的值,可以使用以下代码: ```java String value = config.getString("key"); ``` 如果"key"键不存在,getString方法将返回null。 如果你要获取data.yml文件中的"section.key"键对应的值,可以使用以下代码: ```java String value = config.getString("section.key"); ``` 其中,"section"是data.yml文件中的一个段落(section)名。 如果你想获取data.yml文件中的列表数据,可以使用以下代码: ```java List<String> list = config.getStringList("listKey"); ``` 其中,"listKey"是data.yml文件中的一个列表(list)名。 需要注意的是,在读取和写入YamlConfiguration对象时,你需要确保线程安全。每个插件只应该有一个YamlConfiguration对象实例,并且在读取或写入数据时需要进行同步处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值