Spring提供实用程序Configurer来解析具有外部配置数据的占位符(有关详细信息,请参阅文档)。如何使用Cake Pattern
以类似的方式配置我的组件(即使用外部配置来解析占位符)?
例如:
// properties configuration file
driver=com.mysql.jdbc.Driver
dbname=mysql:mydb
user=michael
password=*****
trait JdbcSupport {
val dataSource:Datasource
...
}
trait OrderDAOComponent {self: JdbcSupport =>
val dao: OrderDAO
class OrderDAOImpl extends OrderDAO {...} // use the JDBC data source here
}
如何使用属性配置文件使用OrderDAO
初始化Cake Pattern
?
答案 0 :(得分:2)
trait XmlConfigJdbcSupport extends JdbcSupport {
val xmlFile:String
override val dataSource = readConfigAndReturnDatasource()
}
object MyContext extends OrderDAOComponent with XmlConfigJdbcSupport {
override val xmlFile = "config.xml"
}
dataSource
应该是一个懒惰的val,以避免初始化顺序出现问题。