Что такое неявные объекты? Что это значит? - PullRequest
16 голосов
/ 22 января 2010

Всякий раз, когда я изучаю JSP и сервлеты, я встречаю слово неявные объекты , что означает этот термин?

Как они называются в моей программе без создания объектов? Кто создает неявные объекты? Пожалуйста, уточните.

Спасибо

Ответы [ 8 ]

14 голосов
/ 22 января 2010

Это объекты, которые уже размещены в области видимости контейнером сервлета, так что они доступны для EL (язык выражений), такие как PageContext, HttpServletRequest#getParameter(), HttpServletRequest#getHeader() и так далее. Это просто для удобства, так что вам не нужно использовать старомодные скриптлеты , чтобы захватывать их.

Так, например, вместо

<%= pageContext.getSession().getMaxInactiveInterval() %><br>
<%= request.getParameter("foo") %><br>
<%= request.getHeader("user-agent") %><br>
<%  for (Cookie cookie : request.getCookies()) { // Watch out with NPE!
        if (cookie.getName().equals("foo")) {
            out.write(cookie.getValue());
        }
    }
%><br>

Вы можете просто сделать

${pageContext.session.maxInactiveInterval}<br>
${param.foo}<br>
${header['user-agent']}<br>
${cookie.foo}<br>

Вы видите, что они следуют соглашениям JavaBean, к которым осуществляется доступ (то есть вы можете просто вызывать получатели способом JavaBean). Вы видите, что я использовал скобку [], чтобы получить user-agent, потому что - является зарезервированным символом в EL, поэтому ${header.user-agent} не будет работать, он попытается вернуть результат request.getHeader("user") - pageContext.findAttribute("agent") что явно не сработает.

Для ознакомления с ними все обратитесь к главе Неявные объекты в руководстве по Java EE.

5 голосов
/ 22 января 2010

Неявные объекты в JSP являются объекты, которые созданы контейнер автоматически и Контейнер делает их доступными для разработчики, разработчик не нужно создать их явно. поскольку эти объекты созданы автоматически контейнером и доступ с использованием стандартных переменных; следовательно, они называются неявными объекты.

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

Источник: roseindia.net

4 голосов
/ 03 октября 2013

Неявные объекты JSP - это объекты Java, которые JSP-контейнер делает доступными для разработчиков на каждой странице, и разработчик может вызывать их напрямую, без явного объявления. Неявные объекты JSP также называются предопределенными переменными.

JSP поддерживает девять неявных объектов, перечисленных ниже:

  • request : Это объект HttpServletRequest , связанный с запросом.
  • response : Это объект HttpServletResponse , связанный с ответом клиенту.
  • out : Это PrintWriter объект, используемый для записи любых данных в буфер.
  • session : Это объект HttpSession , связанный с запросом.
  • application : Это объект ServletContext , связанный с контекстом приложения.
  • config : Это объект ServletConfig , связанный со страницей.
  • pageContext : инкапсулирует использование специфичных для сервера функций, таких как высокопроизводительные JspWriters.
  • page : Это просто синоним этого и используется для вызова методов, определенных переведенным классом сервлета.
  • Exception : Объект Exception позволяет получить доступ к данным исключения с помощью назначенного JSP.
1 голос
/ 22 января 2010

Неявные объекты - это набор объектов Java, которые JSP-контейнер делает доступными для разработчиков на каждой странице. Эти объекты могут быть доступны как встроенные переменные через элементы сценариев, а также могут быть доступны программно JavaBeans и Servlets.

Подробный обзор и использование см. На странице ниже.

http://www.gulland.com/courses/JavaServerPages/jsp_objects.jsp

0 голосов
/ 22 февраля 2016

Существует девять типов неявных объектов, неявные объекты также называют предопределенными переменными. 1) запрос
2) ответ
3) приложение
4) сеанс
5) страница
6) pageContext
7) из
8) исключение
9) конфиг

0 голосов
/ 30 июня 2015

Неявные объекты JSP создаются контейнером при переводе страницы JSP в исходный код сервлета, чтобы помочь разработчикам

0 голосов
/ 01 ноября 2014

Страница JSP может получить доступ к некоторым конкретным объектам через переменные сценариев. Эти объекты предоставляются контейнером JSP и называются неявными объектами. Эти неявные объекты могут быть доступны в скриптлетах, выражениях или как часть выражений EL.

enter image description here

Объекты области видимости

enter image description here Подробнее

0 голосов
/ 22 января 2010

Неявные объекты создаются автоматически и готовы к использованию. Вы не можете создавать другие переменные с тем же именем с этими объектами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...