Как правильно создать повторно используемый, но гибкий компонент формы в JSP / Servlet? - PullRequest
3 голосов
/ 05 августа 2011

Я делаю свои первые шаги с помощью JSP и сервлетов и строю какой-нибудь игрушечный проект.Я не мог найти правильный подход для решения следующей проблемы -

В части управления пользователями проекта есть 3 случая, когда пользовательские данные могут быть обновлены:

  1. Когда пользователь регистрируется на сайте (пустая форма регистрации)
  2. Когда пользователь обновляет свои данные (форма с существующими данными)
  3. Когда администратор обновляет данные пользователя (форма с подробностями и некоторыми дополнительными параметрами)

Я могу придумать 3 способа создания этих страниц:

  1. Создать разные JSP-файлы для каждого случая, ужасно нарушая закон DRY, но разделяя HTML и логику.
  2. Имейте сервлет или пользовательский тег для генерации HTML формы соответствующим образом.Это означает много (?) HTML в коде Java.
  3. Поместите логику Java в одну JSP, которая будет заботиться о содержимом формы в соответствии с контекстом.Это означает много (?) Java-кода в JSP (в основном if с, пропуская или включая поля и значения).

Каков общий способ решения этих проблем?

1 Ответ

2 голосов
/ 05 августа 2011

Вы можете создать форму, поместить ее в отдельный файл jsp и включить ее в любую понравившуюся вам страницу jsp -

<jsp:include page="myForm.jsp"/>

Это позволит вам повторно использовать форму в любом JSPстраница вам нравится.Затем вы будете повторно использовать части, общие для всех сценариев.

...