与何时使用${...}相比,我有点困惑#{...}。Spring的文档仅使用#{...},但是有许多使用示例${...}。此外,当我开始使用SpEL时,我被告知要使用${...}它,并且效果很好。
${...}
#{...}
对于那些感到困惑的人来说,我将如何使用它
@Component public class ProxyConfiguration { @Value("${proxy.host}") private String host; @Value("${proxy.port}") private String port; : }
和一些属性文件:
proxy.host=myproxy.host proxy.port=8000
我的问题是:
${...}是属性占位符语法。它只能用于取消引用属性。
#{...}是SpEL语法,它的功能和复杂性要高得多。它也可以处理财产占位符,以及更多。
两者都是有效的,都不推荐使用。