用于 Java 开发的配置工具 Simple Configuration Facade

Apache
Java 查看源码»
跨平台
2018-08-30
koqizhao

SCF: 简单配置门面

Simple Configuration Facade, 简写为 SCF。是 代码外部配置 (properties文件, 环境变量,系统/命令行参数, yaml文件, 等等)之间的一层抽象。命名上和另一个著名组件 slf4j (Simple Logging Facade for Java)相似,在配置领域的地位也和 slf4j (.NET 可类比 NLog)在日志领域的地位相同。

SCF 使得代码和外部配置分离。代码使用一个配置项,无需关心配置项在哪里配置,如何配置。

用法

  • java: https://github.com/mydotey/scf/tree/master/java

  • dotnet: https://github.com/mydotey/scf/tree/master/dotnet

示例

功能

强类型

核心抽象是强类型的Property, Key和Value都是强类型。

安全的配置

可以通过1个value filter来自动检查外部配置的正确性。

动态配置

配置可以是动态变化的。配置项的值自动更新。用户也可添加Listener监听配置项的变化。

多配置源

多个配置源有不同的优先级。配置项的值按配置源的优先级自动计算。

可扩展

scf-core 里只定义了一组接口抽象和默认实现。所有核心概念都是可扩展的(配置管理器,配置源,配置项等等)。用户可以自由地对默认实现进行扩展,或者编写自己的实现。

一些常用扩展:

轻量

无线程使用,只使用少量内存来缓存配置项。

支持多线程并发

Manager/Property的方法都是线程安全的,可以多线程并发使用。时间复杂读为O(1),和ConcurrentHashMap相同。

容易使用

scf-simple 对最简单常用的Property场景进行了实现: properties file, memory Map, system properties, env variables.

参考:

的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

du 命令

Linux du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的. 1.命令格式: du [选项][文件] 2.命令功能: 显示每个...

2016/02/04 13:50
2
1
Linux-du命令

du命令 说明:du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。 参数: -a或-all 显示目录中个别文件的大小。 ...

2018/06/21 02:51
1
0
每天一个linux命令(4):mkdir命令

每天一个linux命令(4):mkdir命令 linux mkdir 命令用来创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录。 1.命令格式: ...

2015/04/09 11:48
13
0
linux 学习笔记

1. mkdir 命令用来创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录。 1).命令格式: mkdir [ -m Mode ] [ -p ] Directory...

2013/03/25 10:53
14
0
CentOS下du 和 df 的区别

1.两者区别 du,disk usage,是通过搜索文件来计算每个文件的大小然后累加,du能看到的文件只是一些当前存在的,没有被删除的。他计算的大小就是当前他认为存在的所有文件大小的累加和。 df,...

2015/08/11 15:01
488
1
SCF: 简单配置门面

SCF: 简单配置门面 [English] [中文] Simple Configuration Facade, 简写为 SCF。是 代码 和 外部配置 (properties文件, 环境变量,系统/命令行参数, yaml文件, 等等)之间的一层抽象. 命名上...

2018/08/29 09:56
2
0
学习linux命令:mkdir命令

最近开始接触和使用Linux,对命令的使用并不是很熟,都是网上百度看的,最近找到了一个比较好的学习Linux命令的博客,所以转帖记录,以免以后忘记

2016/12/03 09:57
6
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部