2010-01-11 19 views
6

sto lavorando a qualcosa che potrebbe beneficio da un modello simile al seguente:Aggiungi annotazione al campo ereditato

public abstract class SomeBuisnessThingy() 
{ 
    protected int someDatapoint; 
} 

public class ADatabaseThingy() extends SomeBusinessThingy() 
{ 
    @SomeJPAAnnotation 
    ???? someDatapoint; 
} 

public class AWebServiceThingy() extends SomeBusinessThingy() 
{ 
    @SomeSOAPStuff 
    ???? someDatapoint; 
} 

C'è odore più come un'interfaccia di una classe astratta, ma gli stessi bisogni cosa da fare. Ho un'implementazione DB di quella classe e un'implementazione WS di quella classe.

Queste rappresentazioni sono molto simili, ma potrebbero essere diverse. Ad esempio la classe WS può esporre un campo come una stringa in modo che una terza parte possa facilmente fare un'integrazione, può anche essere splot nel proprio pacchetto in modo da poter consegnare a un cliente alcune classi WebService o POJO leggere senza tutto il bagaglio del DB o un framework JPA in arrivo. Forse potrebbe essere utilizzato per creare le classi di base necessarie per qualcosa, quindi passare da framework di persistenza che utilizzano annotazioni diverse.

È possibile aggiungere annotazioni ai campi ereditati?

risposta

7

No. Se è necessario annotare i membri ereditati, è necessario annotare i metodi, non i campi.

Problemi correlati