参考spring占位符解析器写的一个占位符解析工具,用于短信模板,消息模板等地方

本文介绍了一个用于字符串中占位符替换的实用工具类,该工具类支持通过数字索引或属性集来解析并替换字符串中的占位符,提高了程序配置与使用的灵活性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/*
 * 文件名称: 占位符替换工具类
 * 文件描述:
 * 创建人: simple_zeng
 * 创建时间: 2022/11/4
 */public class PlaceholderReplacer {

    private final static String PREFIX = "{";

    private final static String SUFFIX = "}";

    private final PropertyPlaceholderHelper helper;

    public PlaceholderReplacer() {
        this(PREFIX, SUFFIX);
    }

    public PlaceholderReplacer(String prefix, String suffix) {
        this.helper = new PropertyPlaceholderHelper(prefix, suffix);
    }

    public String resolveByNumber(String content, Object... props) {
        if (ZYStrUtils.isNull(content)) {
            return "";
        }
        if (null == props || props.length == 0) {
            return content;
        }
        Properties properties = new Properties();
        for (int i = 1; i <= props.length; i++) {
            properties.put(i + "", props[i - 1]);
        }
        return helper.replacePlaceholders(content, properties);
    }

    public String resolveByProperties(String content, Properties properties) {
        if (ZYStrUtils.isNull(content)) {
            return "";
        }
        if (null == properties || properties.isEmpty()) {
            return content;
        }
        String resolved = helper.replacePlaceholders(content, properties);
        return ZYStrUtils.isNull(resolved) ? null : resolved;
    }
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值