在会话中注入用户特定的单例类

时间:2014-05-21 06:34:26

标签: java spring java-ee saas

我基本上正致力于将独立产品转换为SaaS应用程序的项目。目前的项目很少有单身人士课程。

现在我的查询是

在SaaS中,不同客户下将有多个用户访问同一个应用程序。单例类需要针对每个用户的客户特定。

例如。用于特定公司A的用户的LicenseManager类应该获得LicenseManager的单例类实例class1,而其他公司的用户说公司B应该获得单例实例class2。类似地,特定公司用户的单例DBManager类实例应该是公司特定的。

使用Spring或任何其他框架可以实现吗?是否有可能在父会话下拥有父会话和子会话等内容?

1 个答案:

答案 0 :(得分:1)

以下是我的建议。基于这些,您可以找到合适的解决方案。

  1. 将这些类转换为非静态类。有一些逻辑要创造 这些类的实例使用每个客户的抽象工厂 基于偏好。为每个使用相应的实例 顾客。
  2. 将这些类转换为抽象类。有儿童班 每个客户类型。使用Factory方法实例化相应的 儿童班。如果你在Spring上,你可以使用依赖注入 框架。
  3. 将这些类保持为静态。移动配置 (成员变量)逻辑来分离Configuration实用程序,其中 您应该将适当的配置返回给基于静态的类 客户。