首页 > 解决方案 > 如何根据偏好为每个用户创建 bean

问题描述

我有一个应用程序,用户可以使用谷歌存储或亚马逊 s3 作为存储介质。用户有一个偏好页面,可以选择存储介质并进行配置(AWS S3 的 set access-key 或 Google 的 json-key-file )。

我有一个具有上传/删除文档方法的接口(DocumentService)。AmazonS3DocumentService 和 GoogleStorageDocumentServices 正在实现该接口。

我希望 Spring 管理文档服务的 bean;我应该如何配置 bean,以便为每个用户自动创建和注入 googleService 或 amazonService。

谢谢。

标签: springspring-bootdependency-injectionjavabeans

解决方案


这听起来像是解决问题的错误方法,每个用户持有一个对象不会很好地扩展。

您是否考虑过使服务无状态并在调用其中的方法时为它们提供所需的信息?


推荐阅读