2013-06-13 16 views
8

Sono nuovo di java qui, stavo leggendo su annotazioni e xml, personalmente scopro che xml ha molti vantaggi come può essere messo all'esterno dell'applicazione, le modifiche possono essere apportate senza ricompilare i file di classe . Se uso annotazioni se ho bisogno di apportare modifiche, devo andare al codice sorgente e la ricompilazione dovrebbe essere fatta. Se questo è il motivo per cui dovremmo usare le annotazioniAnnotazioni vs XML, vantaggi e svantaggi

+0

Suona come una di quelle domande in cui mondi, o piuttosto opinioni potrebbero scontrarsi. – Scorpio

risposta

3

Prima di tutto usiamo le annotazioni per molte altre cose, oltre alla semplice configurazione.

Ora: Alcuni vantaggi dell'utilizzo di annotazioni per la configurazione

leggibilità. Ad esempio in configurazione JPA è molto più pulito per dichiarare nuove entità tramite Annotations invece dei file hbm.xml. Queste cose cambiano solo in fase di sviluppo quindi non ci sono problemi con la ricompilazione del codice. Quando si utilizzano i file xml È necessario aprire spesso i file both-entity e hbm per apportare modifiche. Ciò può causare alcuni errori.

Flessibilità. Nei file XML è necessario scrivere tutte le configurazioni in "solo un modo corretto". È un vantaggio e uno svantaggio allo stesso tempo.

Lunghezza. Le configurazioni basate su XML sono spesso molto lunghe (come pom's o hbm). Le annotazioni sono molto più semplici da usare.

5

Vantaggi della nota:

1) tutte le informazioni sono in un unico file (non c'è bisogno di aprire due file per configurare un dato comportamento)
2) quando le variazioni di classe, non c'è bisogno di modificare il file xML

Vantaggi del file xML:

1) netta separazione tra la POJO e il suo comportamento
2) Quando y Non sai quale POJO è responsabile del comportamento, è più facile trovare quel POJO (cercando in un sottoinsieme di file piuttosto che tutto il codice sorgente)

+1

"Un file" potrebbe essere un po 'ottimistico in alcune circostanze. – Scorpio

+0

@Scorpio: hai ragione, ho intenzione di modificare la mia risposta per riflettere un sottoinsieme di file piuttosto che tutti i file – VirtualTroll

2

La domanda è in realtà difficile a cui rispondere in un breve risposta.

Fondamentalmente, ci sono pro e contro in tutte le forme di configurazione. Annotazioni, xml o configurazione basata su Java. Tutti i pro e contro sono validi al 100%. L'obiettivo principale diventa coerenza. Assicurati che tutti i tuoi progetti seguano le stesse regole.

Anche NON è una questione di entrambi o, quale uno sull'altro. Perché è possibile utilizzare qualsiasi combinazione di opzioni di configurazione nella propria applicazione. Uno o tutti e tre insieme. Devi solo fare le tue regole e attenersi a loro

Quindi la mia opinione personale è. Ricorda che questa è tutta la mia opinione e non un fatto.

1) Annotazioni su tutti gli altri perché posso configurare e codice molto più veloce
2) Java configurazione base per quei fagioli non posso annotare (Essi non sono le mie classi in modo che non hanno la fonte da aggiungere un'annotazione)
3) xml con ciò che è rimasto, o ho bisogno di completarlo esternalizzato al di fuori del pacchetto delle mie classi e non voglio ricompilare e riconfezionare.(Estremamente raro, come se non fosse mai successo a me ancora che avevo bisogno di questo)

Problemi correlati