spring - 有序初始化是依赖注入(inject)泛化/框架的要求吗?

标签 spring scala guice

当我从 C# 转向 Scala 时,我几乎没有使用过著名的 DI 框架,但我已经阅读过它们,并且最近意识到 cake pattern在 Scala 中。

但是,正如链接中所述,蛋糕模式不允许我们控制组件初始化的顺序。

对我来说,只有当组件在初始化时需要彼此时,这才重要,这似乎有点设计缺陷:)

在什么情况下需要有序初始化,并且无法通过负责初始化的单独组件上下文来解决?

最佳答案

丹尼尔·斯皮瓦克 (Daniel Spiewak) 在他的演讲“黑湖的面包店”中展示了一些解决该特定问题的方法。

幻灯片 -> https://dl.dropbox.com/u/1679797/NE%20Scala/Bakery%20from%20the%20Black%20Lagoon.pdf

视频-> http://www.youtube.com/watch?feature=player_embedded&v=yLbdw06tKPQ

摘自演讲:

您可以通过使用lazy valdef而不是val来解决空指针异常, 以可能出现僵局为代价。

关于spring - 有序初始化是依赖注入(inject)泛化/框架的要求吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10778631/

相关文章:

java - org.springframework.beans.factory.BeanInitializationException : Could not load properties

spring - 如何在AOP中实现策略模式

java - 具有长时间运行任务的队列的 Actor 设计

java - 在 Spark 1.6.0 上,获取与 spark.driver.maxResultSize 相关的 org.apache.spark.SparkException

java - OptimisticLockException 之后重试方法时出错 - org.postgresql.util.PSQLException : This statement has been closed

java - Guice Assisted Inject 被忽略?

java - google guice 内部是如何工作的

java - 使用 Spring Security 登录的链接

java - 我怎样才能转到 :text in Thymleaf? 内的下一行

scala - 用 lihaoyi ujson 处理可选字段