public class ValueResolver extends Object
${key}
${key:}
${key:defaultValue}
解析逻辑:
1. 从配置 Map 中查找 key 对应的值;
2. 如果不存在,则使用 defaultValue;
3. 如果 defaultValue 也不存在(可为空),则抛异常;
4. 支持递归解析,即 value 中仍然可以包含占位符;
示例:
config = { "url" -> "http://example.com" }
resolve("${url:default}") => "http://example.com"
resolve("${missing:default}") => "default"
| 限定符和类型 | 字段和说明 |
|---|---|
static Pattern |
VALUE_PATTERN
占位符匹配模式:
${key}
${key:default}
解释:
\\$\\{ 匹配 "${"
([^:{}]+) 捕获 key(不能包含 : 或 {}) (? |
| 构造器和说明 |
|---|
ValueResolver(Map<String,String> config) |
public static final Pattern VALUE_PATTERN
${key} ${key:default}
解释:
\\$\\{ 匹配 "${"
([^:{}]+) 捕获 key(不能包含 : 或 {})
(?::([^{}]*))? 可选的 ":default" 部分
} 匹配结束的 "}"
Copyright © 2024–2026 Dynamic-SQL. All rights reserved.