IoC容器支持使用Scala名为/ default参数的构造函数注入?

前端之家收集整理的这篇文章主要介绍了IoC容器支持使用Scala名为/ default参数的构造函数注入?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果我可以利用 Scala 2.8的命名和默认参数功能,我宁愿在 JavaBean属性注入上使用构造函数注入.存在哪些IoC容器支持或可以轻松扩展? (所需信息在运行时的scala.reflect.ScalaSignature注释中存在.)

我也对IoC容器有一些基本的(?)期望:

>自动布线(按目标类别/特征或注释,一对一和一对多)
>显式注入(显式布线)没有太多麻烦(像Guice那样弱).就像用户在新的ConnectionPool中注入那样(user =“test”).
>关闭时清理的生命周期回调(按正确顺序)

Spring可以做到这些,但是它不支持命名参数.我已经考虑过使用factorybean-s来桥接Scala和Spring,但就我看来,这意味着太麻烦(样板或代码生成).

解决方法

A部分

我有一个正在进行中的反射库,它解析Scala签名,目前能够解析命名参数:https://github.com/scalaj/scalaj-reflect

不幸的是,我还没有将它重新绑定到Java反射中以便能够调用方法,也没有添加逻辑来解析默认值(尽管这应该是微不足道的).我的待办事项清单上的这两个功能都非常高:)

这不是IoC容器本身,但它是我的另一个项目的先决条件:https://github.com/scalaj/scalaj-spring.scalaj-spring的工作停止了,当它变得非常明显,我将无法做任何有价值的进一步进展,直到我有基于签名的反思.

B部分

所有这些东西都是针对大企业人士的.那些别无选择,只能将他们闪亮的新Scala代码集成到一些笨重的遗留系统……如果那不是你的用例,那么你可以直接在Scala中做Scala DI.

Lift banner:http://www.assembla.com/wiki/show/liftweb/Dependency_Injection下提供了DI支持

你也应该寻找蛋糕模式的参考

猜你在找的Scala相关文章