我目前正在评估QI4J,因为它提供了有关属性处理的有趣概念,在应用程序的上下文中将一些本体连接在一起以创建部分语义应用程序。
因此,我想找到一些关于Java EE环境中的属性处理,组合和集成的替代方案。
我认为,与Qi4j最明显的相似之处是Scala。然而,它是一种新语言以及随之而来的所有好事和坏事。
对于Qi4j,我们的目标是强大的Scala支持,例如Scala特征可以在Qi4j复合材料中使用。
根据QI4J的Ohloh页面,可能的替代方案是
- 英德里根
- 贾瓦特
- 学习-DDD
- 拉链框架
我认为你可以用AspectJ ITD(该语言不是@AspectJ Java替代品)完成Qi4j所做的大部分工作(以及更多)。
Jordao在回答@Ischin提到的类似帖子时提到了这一点。
这是我在另一篇文章中提到的类似特征的功能的示例:https://stackoverflow.com/a/7403617/318174 。只需向类添加接口,您就可以神奇地添加方法。