2016-07-27 114 views
1

我有以下類的結構:編寫通用的代碼在Java中

public class MyClass {} 
public class AnotherClass {} 
public class YetAnotherClass {} 

@Component 
public class MyFieldSetMapper extends BeanWrapperFieldSetMapper<MyClass>{ 
    public MyFieldSetMapper() { 
     setTargetType(MyClass.class); 
    } 
} 

,我需要自動裝配在另一個類的類,這裏的問題是,我有自動裝配很多MyFieldSetMapper類型,即

@Component 
public class AnotherFieldSetMapper extends BeanWrapperFieldSetMapper<AnotherClass>{ 
    public AnotherFieldSetMapper() { 
     setTargetType(AnotherClass.class); 
    } 
} 

和另一個FieldSetMapperClass我有這點:

@Component 
public class YetAnotherFieldSetMapper extends BeanWrapperFieldSetMapper<YetAnotherClass>{ 
    public AnotherFieldSetMapper1() { 
     setTargetType(YetAnotherClass.class); 
    } 
} 

,我duplica每當我需要新的映射器時,我都會寫很多編寫新字段集映射器的代碼,我討厭它。任何人都可以請建議我一個更聰明/更好的代碼?

回答

-5

我沒有得到你的意思是「autowire」。 不過既然你說你想要寫泛型類 - 做到這一點:

public class MyClass<T, U>{ 
    T foo; 
    U bar; 
} 

嗯,我想我不明白你的問題,這個答案不會有很大的幫助。

+0

他問DI的機制,「自動裝配」是春季用來做DI的手段,類似於@inject。更多的信息在這裏:http://stackoverflow.com/questions/4997836/benefit-of-autowired-annotation-in-java –

+1

*嗯,我想我沒有得到你的問題,這個答案不會幫助很多。*相當準確的評估, 大聲笑。 – shmosel