Избегайте скриптов в Jsp для отображения данных о загрузке страницы - PullRequest
0 голосов
/ 10 июля 2011

Я понимаю, что когда вы отправляете форму в jsp, в отображенном сервлете вы можете получить нужные данные, установить их в нужной области (скажем, запрос) и перенаправить в jsp следующим образом:

request.setAttribute("myList", myList); // Store list in request scope.
request.getRequestDispatcher("/index.jsp").forward(request, response);

Однако мне интересно, для страниц, которые не имеют формы, или, другими словами, мы хотим отображать данные, как только страница загружается, как мы можем эффективно загружать данные без использования скриптлетов, таких как

<%= myBean.populateData("String Argument_1")%>

Буду очень признателен, если кто-нибудь сможет дать какие-то рекомендации по этому поводу.

Ответы [ 2 ]

3 голосов
/ 10 июля 2011

Тот факт, что запрос приходит из формы или нет, ничего не меняет. Сервлет получает запрос, а затем может выполнить некоторую обработку и переслать в JSP:

  1. сервлет получает параметры запроса
  2. сервлеты используют эти параметры для получения запрошенных данных из базы данных и заполнения некоторых бинов указанными данными. Он также может создавать некоторые компоненты с нуля для отображения формы со значениями по умолчанию
  3. сервлет помещает эти бины в атрибуты запроса
  4. сервлет перенаправляет в JSP
  5. JSP избегает использования скриптлетов и скорее использует JSP EL, JSTL и пользовательские теги для отображения информации, хранящейся в bean-компонентах, в области запроса
0 голосов
/ 10 июля 2011

Я думаю, что использование EL в сочетании с JSTL может помочь вам в самых распространенных ситуациях. Если этого недостаточно, вы можете написать EL-функции или свои собственные теги.

...