在Spring 3中,我可以实例化一个抽象类bean,它会提供抽象方法吗?

时间:2010-12-31 20:48:58

标签: java spring spring-aop

我想为我的需求做一些ORM框架。我想将我的模型描述为抽象类,因为它们将实现一些方法,并且一些方法将被抽象,注释并且应该由aspect bean实现(实际上,它们的执行被拦截)。没有太多配置,是否可以干净利落地实现?理想情况下,我不希望模型bean上没有XML配置。

UPD:我的想法是我不想要任何明确的实现或扩展类。 AOP无论如何都会创建一个代理 - 它可以自动用作我的bean的实例吗?

UPD2:差不多两年了,我想把第一个答案标记为正确答案。

所以我的想法似乎是预测Spring Data JPA。他们使用自定义命名空间来创建自动实现JPA存储库的相应接口的bean。我相信工厂模式就是用来做的。

此外,使用Spring的JavaConfig,您可以在将类实例作为bean返回之前轻松实例化和增强它。

2 个答案:

答案 0 :(得分:0)

我认为答案是肯定的,因为它可以建议界面。接口是纯粹的抽象方法,所以它应该是可能的。

至于配置量,它需要花费的时间。我不知道XML或注释是否适合您,但您只需要建议接口或抽象类。实现或扩展的类无需额外工作即可获得建议

答案 1 :(得分:0)

我似乎总是碰到这个,并且永远无法记住交易是什么......但我相信,对于建议,你必须声明为一个接口,可以通过你希望的任何类实现,但必须将代理的变量声明为接口。