Când să utilizați JSP și JSPF
Reutilizarea codului JSP
Fișierele JSPF pot fi utilizate pentru a face programarea complexă a aplicațiilor web Java mai puțin obositoare și predispuse la erori prin împărțirea aplicației în mai multe unități sau module mai mici și mai ușor de gestionat. În mod ideal, fiecare modul ar trebui să fie dedicat unei singure părți a unui program complet și să aibă o natură generală, astfel încât codul să poată fi reutilizat în viitoarele aplicații JSP. Fișierul JSP mamă va avea o directivă "include" pentru fiecare fișier JSPF fragment, care le leagă pe toate într-o aplicație JSP completă.
Cod refactoring
Împărțirea unui fișier JSP mare în fragmente JSPF mai modulare și mai mici are avantajul suplimentar că face sarcina refactorizării codului mai ușoară. Codificarea refactorizării este o tehnică care îmbunătățește calitatea codului, examinându-l, împărțind-o în unități logice și apoi rescriind aceste unități unul câte unul. Utilizarea fragmentelor JSPF poate ajuta la eliminarea erorilor și la creșterea performanțelor fiecărei unități și a aplicației finale montate.
Restricții de acces
Prin convenție, fragmentele JSPF ar trebui să fie stocate în directorul "/ WEB-INF / jspf /". Acest director este accesibil prin containerele servlet, cum ar fi Tomcat și JBoss Application Server, dar nu și de servere web, cum ar fi Apache sau Microsoft IIS. Puteți diviza o pagină JSP completă în fișierele JSPF și le puteți ascunde în directorul "/ WEB-INF / jspf /". De asemenea, puteți ascunde o pagină JSP completă de accesul web prin stocarea în fragmente JSPF.
JSP Interacțiuni
Paginile JSP complete pot importa alte pagini complete JSP, precum și fragmente JSPF. Puteți face acest lucru folosind "dsp: include" sau "jsp: include" directive. Directiva "dsp: include" va permite unui fișier JSP părinte să transmită parametrii la metodele din fișierele copil JSP. Direcția "jsp: include" nu permite transmiterea parametrilor la metodele din fișierele JSPF, dar permite metodelor din fragmentele JSPF să acceseze date globale și alte obiecte la care regulile de domeniu Java permit accesul.