è una pratica molto diffusa, e giustamente anche direi..
la prassi è parsare e caricare il file all'avvio (se lo modifichi devi riavviare l'applicazione) ma in fase di sviluppo/debug è meglio farlo leggere ogni volta, così riduci i tempi di sviluppo.
per quanto riguarda l a lettura dell'xml, fai una ricera nel forum che trovi molto a riguardo.
per farlo caricare all'avvio dell'applicazione basta fare una servlet che viene invocata da tomcat con il parametro loadonstartup a true così appena parte tomcat esegue l'init.