È davvero una buona pratica usare il tag jstl out?
Domanda
Ricordo di aver lavorato su un progetto con un gruppo di sviluppatori e hanno sempre voluto statici
testo HTML da inserire all'interno di un tag out (<c:out value="words" />
). Non ricordo perché
questo era il caso.
È davvero una buona pratica quando si creano pagine jsp? Quali sono le vantaggi / svantaggi di tale approccio?
Soluzione
È un'idea terribile per il testo statico. Quindi non hai alcuna barriera su ciò che è statico e ciò che viene generato dinamicamente.
Inoltre, su Servlet Spec 2.3+ puoi avere un testo dinamico mescolato con testo statico come:
Questo è statico, non ${dynamic}
testo.
L'unico motivo per usare c:out
tag, nella mia esperienza:
-
Stai utilizzando una specifica servlet precedente e ti serve per generare in qualche modo testo DYNAMIC
-
Volete scappare dall'output
HTML
per evitare di usare<>
, ecc., sostituendo le e commerciali con i loro codici di controllo, ecc.
Altrimenti, averli usati come testo statico confonde il programmatore o il manutentore ... ora dove l'ho messo EL ? Era in un tag <=> ... ma lo erano anche altre cinquanta righe di testo statico!
Altri suggerimenti
Se stai stampando solo testo, è meglio farlo in HTML. Il vantaggio del tag c:out
è che puoi valutare le espressioni all'interno del tag.
<c:out value="Hello ${user.firstName} ${user.lastName}"/>