Должен ли я использовать JSPX вместо JSP?[закрыто]

StackOverflow https://stackoverflow.com/questions/28235

  •  09-06-2019
  •  | 
  •  

Вопрос

С использованием JРазработчик, я начал разрабатывать набор веб-страниц для проекта на работе.Поскольку в то время я мало что знал о JDev, я отправился в Oracle, чтобы изучить несколько руководств.В учебниках JDev рекомендуется делать JSPX вместо ДСП, но не объяснил почему.Вы разрабатываете страницы JSPX?Почему вы решили это сделать?Каковы плюсы и минусы пути JSPX?

Это было полезно?

Решение

Основное отличие состоит в том, что с файлом JSPX (официально называемым «документом JSP») может быть проще работать, поскольку требование правильного формата XML может позволить вашему редактору выявлять больше опечаток и синтаксических ошибок по мере ввода.

Однако есть и недостатки.Например, правильно сформированный XML должен избегать таких элементов, как знаки «меньше», чтобы в конечном итоге ваш файл мог содержать следующее содержимое:

<script type="text/javascript">
   if (number &lt; 0) {

Синтаксис XML также может быть более подробным.

Другие советы

У JSPX есть несколько неудобств, которые я сразу понял:

  1. Трудно создавать некоторые виды динамического контента;особенносоздание HTML-тега с дополнительными атрибутами (т. е.или в зависимости от состояния).Стандартные теги JSP, которые должны решить эту проблему, не работали должным образом в тот день, когда я начал заниматься JSPX.
  2. Больше нет:-п
  3. Вам действительно захочется поместить весь ваш Javascript в отдельные файлы (или использовать разделы CDATA и т. д.).ИМХО, вам в любом случае следует использовать jQuery, поэтому вам действительно не нужен onclick и т. д.атрибуты...
  4. Инструменты могут работать неправильно;возможно, ваша IDE не поддерживает ничего, кроме обычного JSP.
  5. В Tomcat 6.x, по крайней мере в тех версиях/конфигурациях, которые я пробовал, сгенерированный вывод не имеет никакого форматирования;просто небольшое раздражение, хотя

С другой стороны:

  1. Это заставляет вас писать правильный XML, которым легче манипулировать, чем JSP.
  2. Инструменты могут выполнять мгновенную проверку, быстрее выявляя ошибки.
  3. Более простой синтаксис, по моему скромному мнению

Совершенно другая линия рассуждений, почему вам следует использовать jspx вместо jsp:

JSPX и EL делают включение javascript и встроенных Java-кодов намного сложнее и менее естественным, чем jsp.EL — это язык, специально предназначенный для логики представления.

Все это подталкивает вас к более четкому разделению рендеринга пользовательского интерфейса и другой логики.Недостаток большого встроенного кода на странице JSP (x) состоит в том, что практически невозможно легко проверить, тогда как практика этого разделения проблем делает большую часть вашей логики полностью проверять.

Привет, уважаемый разработчик JDeveloper!

Я работаю со страницами JSPX более двух лет, и у меня никогда не возникало проблем с тем, что JSPX противопоставляется JSP.Выбор JSPX для меня был своего рода вынужденным, поскольку я использую JHeadstart для автоматического создания страниц ADF Faces, а по умолчанию JHeadstart генерирует все в JSPX.

JSPX указывает, что документ должен быть правильно сформированным XML-документом.Это позволяет материалу правильно и эффективно анализировать его.Я слышал, как разработчики говорили, что это помогает вашим страницам быть более «готовыми к будущему» по сравнению с JSP.

Как указано в официальной документации Spring 3.1.

«Spring предоставляет несколько необычных решений для просмотров JSP и JSTL».

Также вам следует учитывать тот факт, что JSPX нацелен на создание чистого вывода, совместимого с XML.Итак, если ваша цель — HTML5 (который может быть совместим с XML, но усложняет ситуацию, см. мои следующие комментарии), вам придется столкнуться с некоторыми трудностями при достижении своей цели, если вы используете Eclipse IDE...Если ваша цель — создать XHTML, выберите JSPX, и JDeveloper вас поддержит…

В одном из наших cie-проектов мы создали POC как с JSP, так и с JSPX, а также сделали ЗА и ПРОТИВ, и моя личная рекомендация заключалась в использовании JSP, потому что мы обнаружили, что гораздо менее ограничительно и естественно создавать HTML5 не XML, что также является менее ограничительным. и более компактный синтаксис.Мы предпочитаем выбрать что-то менее ограничительное и добавить рекомендации «лучших практик», такие как «не размещать Java-скриптлеты» внутри файлов jsp.(Кстати, JSPX также позволяет вам помещать скриптлеты с помощью jsp:scriptlet вместо <% ...%>)

@Мэтью-
АДФ!Приложение, над которым я сейчас работаю, имеет 90% уровня представления, созданного модом PL/SQL.Я начал работать над несколькими новыми экранами и хотел изучить другие варианты, которые могли бы вписаться в нашу архитектуру, не создавая при этом слишком большого бремени обучения (повышение сложности системы/разрушение мысленных моделей системы разработчика) для коллег-разработчиков по команде. команда.Итак, с помощью ADF я тоже столкнулся с JSPX.

Я также видел наблюдение, ориентированное на будущее… но не знал, насколько оно обосновано.

JSPX также является рекомендуемой технологией представления в Spring MVC/Spring Web Flow.

Кроме того, еще одна проблема, которую я обнаружил в JSPX, заключается в том, что вы хотите использовать скриптлеты.Я согласен, что чистый код, как правило, хорош, а логика Java в JSP, как правило, плоха, но есть определенные случаи, когда вы хотите использовать служебную функцию для возврата строкового значения или что-то еще, где TagLib или модель (атрибуты запроса) будут излишними. .

Что вы думаете о скриптлетах в JSP?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top