Есть ли такая вещь, как JSP minifier? (или HTML с открытым исходным кодом minifier)
Это будет HTML minifier, который пропускает все между <%
и %>
.
Собственно, HTML-код с открытым исходным кодом minifier был бы хорошим стартовым местом, особенно если он уже имел код для сохранения содержимого определенных блоков, таких как <textarea
. Возможно, этот код можно сохранить и для сохранения блоков <%%>
.
Я знаю, что HTML minifiers менее распространен, потому что это изменяется чаще, чем JS/CSS, и часто динамически генерируется, но если компилятор JSP может быть сделан для минимизации перед созданием его скомпилированной копии кеша, это приведет к сокращенный HTML.
Кроме того, ASP minifier, вероятно, будет очень близок к тому же. И мне все равно, что пользовательские теги имеют смысл для сервера. Единственное, что важно для сервера (для моей компании), находится в блоках <%%>
.
Ответы
Ответ 1
Этот вопрос немного устарел, но ответ с ресурсом по-прежнему не подходит для публикации.
HtmlCompressor делает это очень и очень просто.
Вы можете использовать его через Java API:
String html = getHtml(); //your external method to get html from memory, file, url etc.
HtmlCompressor compressor = new HtmlCompressor();
String compressedHtml = compressor.compress(html);
Или вы можете использовать его через Taglib:
Download .jar file of the current release and put it into your lib/ directory
Add the following taglib directive to your JSP pages:
<%@ taglib uri="http://htmlcompressor.googlecode.com/taglib/compressor" prefix="compress" %>
Please note that JSP 2.0 or above is required.
В JSP:
<compress:html removeIntertagSpaces="true">
<!DOCTYPE html>
...
</html>
</compress:html>
Приветствия
Ответ 2
JSP преобразуется в Java-код и подмножественно компилируется в байт-код. У Minifying JSP нет цели.
Вы можете обрабатывать вывод, сгенерированный на странице JSP, путем написания специального фильтра. Я написал фильтр, чтобы обрезать пустые строки и ненужные пробелы из выхода JSP, к сожалению, он не является общедоступным. Но если вы google вокруг, я уверен, вы можете найти фильтры сервлета, чтобы удалить ненужные вещи из сгенерированного HTML.
Ответ 3
Посмотрите на Trim Filter (http://www.servletsuite.com/servlets/trimflt.htm), который вы можете просто отобразить в своем web.xml.
Это поможет вам удалить пробелы и также может отключить комментарии.
Из моего опыта, пробелы часто возникают в JSP, если вы используете теги, которые сами не имеют никакого вывода, такие как теги управления JSTL C (c: if, c: choose,...), а затем это очень удобно.
Ответ 4
Как вы уже знаете, менее важна стандартизация HTML, а также иногда приводит к ошибкам, чем получение какой-либо выгоды от нее. HTML также является динамически созданным контентом.
С другой стороны, есть много лучших способов ускорить внешний интерфейс приложения.
WebUtilities - небольшая java-библиотека, которая поможет ускорить работу над J2EE-интерфейсом webapp. Ниже приведена ссылка.
http://code.google.com/p/webutilities/
С новой версией 0.0.4 она делает много оптимизации и приводит к значительному повышению производительности. Пожалуйста, посмотрите, если вы сочтете это полезным.