我可以为同一个对象制作多个bean吗?

时间:2016-04-02 12:13:35

标签: java spring spring-mvc javabeans

我正在学习如何使用spring框架作为课程的一部分,我遇到了一个关于春豆的奇怪情况。我有一个带有单独域项目的简单Web项目。该域包含一个名为(surprise!)apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "21.1.2" useLibrary 'org.apache.http.legacy' defaultConfig { applicationId 'purepush.group101.talktoday' minSdkVersion 14 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } productFlavors { } } dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.2.1' compile 'com.android.support:design:23.2.1' compile 'org.apache.httpcomponents:httpmime:4.5.2' compile 'org.apache.httpcomponents:httpclient:4.5.2' compile 'com.squareup.picasso:picasso:2.5.2' compile 'com.google.android.gms:play-services:8.4.0' } 的主服务类,它实现了多个服务接口。我现在想在Web项目的MainService文件中创建几个bean,每个接口一个,但我希望每个bean都实例化为相同的applicationContext.xml对象。我不知道春天是否可能,如果可行,怎么做。

1 个答案:

答案 0 :(得分:0)

你应该反过来做: 您创建一个MainService类型的bean,它实现接口A,B,C

如果您需要访问该实例,您只需自动装配要使用的类或接口:

@Autowired MainService mainService;
@Autowired A a;
@Autowired B b;
@Autowired C c;

为同一个实例创建多个bean可能会以某种方式工作,但我不会重新编写它,它只是没有意义。