带弹簧的抽象类变量

时间:2012-11-02 23:45:33

标签: java spring hibernate multi-tenant

我正在为我的项目使用spring和Hibernate和Dao设计模式,在我的GenericDaoImpl(抽象类)类中有“tenentId”,我想在使用登录系统时设置“tenentId”。我的其他DaoImpl类从GenericDaoImpl扩展,因此我需要设置tenentId(它在GenericDaoImpl中定义)用户登录时间并在用户注销时重置“tenentId”。

这样做的最佳方式是什么?

在我的测试用例中,我尝试了@Autowired“GenericDaoImpl”,但是我无法做到这一点,它抛出一个异常告诉,org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type。我现在知道这个问题,

(我们不能创建抽象类的实例,如果使用tenantId作为静态变量,它会成为一个问题吗?) 任何人都可以建议我解决方案吗?

谢谢你, Udeshika

1 个答案:

答案 0 :(得分:1)

如果您正在开发多租户应用程序并希望让租户知道应用程序上下文,那么请查看spring-tenancy。这将帮助您注入可以承认租户的bean。

如果您想在休眠层进行多租户,那么您还可以查看hibernate的multi-tenancy功能。