spring 实战4 运行时的注入

有时候硬编码是可以的,但有的时候。我们可能会希望避免硬编码值,而是想让这些值在运行时在确定。为了实现这些功能,Spring提供了两种在运行时求值的方式:

1.属性占位符(Property placeholder)。

2.Spring表带是语言(SqEL)。

一、注入外部的值

  在Spring中,处理外部值的最简单方式就是声明属性源并通过Spring的Environment来检索属性。

       

在本例中,@PropertySource引用了类路劲中的一个名为App.properties的文件,他大致会如下所示:

这个属性文件会加载Spring的Environment中,稍后可以从这里检索属性。同时,在disc()方法中,会创建一个新的BlankDisc,它的构造器参数是从属性文件中获取的,二这是通过调用getProperty()实现的。

当我们需要获取不同类型的值是,可以使用getProperty()的重载方法。

Environment还提供了几个与属性相关的方法。

 

posted @ 2019-07-31 08:32  DylanHai  阅读(257)  评论(0编辑  收藏  举报