Опубликован: 04.12.2009 | Доступ: свободный | Студентов: 8424 / 660 | Оценка: 4.30 / 3.87 | Длительность: 27:27:00
Лекция 10:

Введение в сетевое программирование

< Лекция 9 || Лекция 10: 1234 || Лекция 11 >

10.3. Сервлеты

Напомним что сервлеты – это приложения Java , запускаемые со стороны сервера. Они имеют возможности доступа к файловой системе и другим ресурсам сервера через набор управляющих конструкций, предопределенных в рамках пакета javax.servlet и технологии JSP. Технология JSP заключается в наличии дополнительных конструкций в HTML- или XML-документах, которые позволяют осуществлять вызовы сценариев ("скриптов"), написанных на языке Java. В результате удается очень просто и удобно осуществлять обработку данных или элементов документа, и внедрять в нужные места документа результаты обработки. Сценарии Java перед первым выполнением автоматически компилируются на стороне сервера, поэтому выполняемый код выполняется достаточно быстро. Но, конечно, это требует, чтобы была установлена соответствующая Java-машина. Для дальнейшей работы требуется, чтобы на компьютере кроме JDK был установлен NetBeans Enterprise Pack и входящие в состав дистрибутива пакет j2EE, а также Bundled Tomcat Server.

Рассмотрим пример приложения, работающего с использованием сервлетов. Исходный код сервлета, выдающего на клиентском компьютере сообщение "Hello!":

import java.io.*;
 import javax.servlet.*;
 import javax.servlet.http.*;

public class Hello extends HttpServlet {

    public void doGet(HttpServletRequest request,
                      HttpServletResponse response)
    throws IOException, ServletException
    {
    
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Hello!</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Hello!</h1>");
        out.println("</body>");
        out.println("</html>");
    }
}

Пример файла, из которого вызывается данный сервлет:

<html>
 <head>
  <title>Servlet example</title>
 </head>
<body bgcolor="#FFFFFF">
 <a href="servlet/Hello">Execute servlet</a>
</body>
</html>

Работающие варианты сервлетов и их исходные коды можно посмотреть, открыв примеры: File/New Project…/ Samples/J2EE1.4/Web /Tomcat Servlet Example

Пример разработан организацией The Apache Software Foundation (http://www.apache.org/), и его использование должно соответствовать лицензии, выложенной по адресу http://www.apache.org/licenses/LICENSE-2.0.

Открытие примера с сервлетами

увеличить изображение
Рис. 10.1. Открытие примера с сервлетами
Элементы клиентского экрана запущенного приложения с сервлетами

увеличить изображение
Рис. 10.2. Элементы клиентского экрана запущенного приложения с сервлетами

При нажатии на гиперссылку Execute ("Выполнить") соответствующий сервлет выполняется, и на экране показывается сформированный им HTML-документ. Первым идет пример Hello World. Примерное содержимое исходного кода сервлета можно увидеть, перейдя по гиперссылке Source в HTML-документ с изображением исходного кода. Но это не настоящий код, а лишь HTML-документ!- Его исходный код можно увидеть, сделав двойной щелчок в окне Projects… по узлу Web Pages/helloworld.html. А вот настоящий исходный код можно увидеть, сделав двойной щелчок в том же окне по узлу Source Packages/<default package>/HelloWorldExample.java

То же относится к другим примерам.

Исходный код примера Hello World

увеличить изображение
Рис. 10.3. Исходный код примера Hello World
< Лекция 9 || Лекция 10: 1234 || Лекция 11 >
Полетаев Дмитрий
Полетаев Дмитрий
Не очень понятно про оболочечные Данные,ячейки памяти могут наверно размер менять,какое это значение те же операции только ячейки больше,по скорости тоже самое
Максим Старостин
Максим Старостин

Код с перемещением фигур не стирает старую фигуру, а просто рисует новую в новом месте. Точку, круг.