JSP jest konwertowane na normalne źródło java serwletu, a niektóre generowane metody są zbyt duże, ponieważ istnieje limit 64 KB (w kodzie bajtowym) na długości metod.
Jeśli to możliwe, zmiana statyczna obejmuje (naprawdę osadzenie innego źródła JSP) z włączeniem dynamicznym.
Rozwiązanie (i prawdopodobnie dobry styl) również wprowadza kilka metod, w które przenosi się elementy kodu ogólnego. Na przykład, aby wygenerować wiersz tabeli HTML z <tr>
:
<%@
void tableRow(String... cellValues) {
%><tr><%
for (String cellValue : cellValues) {
%> <td><%= cellValue %></td>
<%
}
%></tr>
<%
}
%>
...
<%
tableRow("one", "unu", "un");
tableRow("two", "du", "deux");
tableRow("three", "tri", "trois");
%>
PS: Powyższa metoda jest zbyt mała, aby zaoszczędzić dużo, zrobienie dużego kawałka i utworzenie metody , takiej jak createResultsTable
, jest bardziej efektywne.
Czy masz jakieś statyczne elementy na swoim JSP? – NINCOMPOOP
To ilustruje ważny punkt dla projektantów języka/środowiska wykonawczego; uważają, że programy w twoim języku mogą być * wygenerowane komputerowo * (być może, jeśli twój język jest używany jako cel kompilacji). Ograniczenia, których nigdy nie dotkną ręcznie napisane programy, mogą łatwo spowodować problemy w programach generowanych komputerowo. –
@Alex ale można również zaprogramować skrypty komputerowe, aby automatycznie podzielić metodę. – Antimony