Для возврата в окно Переменные среды нажмите кнопку OK.
3. Создайте переменную CATALINA_HOME. Для этого в блоке Системные переменные нажмите кнопку Создать. В появившемся окне Новая системная переменная
введите имя переменной – CATALINA_HOME и значение – путь к корневой папке Tomcat, например C: \Program Files\Tomcat.
Для возврата в окно Переменные среды нажмите кнопку OK.
• Аналогичным образом создайте переменную JAVA_HOME. В значении этой переменной укажите путь к корневой папке Java, например C: \Program Files\Java\jdk1.6.0_0 6.
Итак, вы завершили настройку среды разработки сервлетов. Теперь можно создать первый сервлет.
Создание и запуск сервлета
Создание сервлета включает три основных этапа:
• написание кода;
• компиляция сервлета;
• размещение и регистрация сервлета в контейнере.
После выполнения этих этапов можно запустить сервлет, введя его адрес в адресной строке браузера.
Рассмотрим порядок создания сервлета на примере простейшего сервлета.
1. Запустите стандартную программу Windows Блокнот (Пуск → Все программы → Стандартные → Блокнот).
2. В окне программы Блокнот введите код, представленный в листинге 4.14.
Листинг 4.14.Простейший сервлет
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class test extends HttpServlet {
public void service(HttpServletRequest request,
HttpServletResponse response) throws IOException, ServletException {
response.setContentType(«text/html;charset=windows-1251»);
PrintWriter out = response.getWriter();
out.println(«Мой первый сервлет»);
}
}
Данный код создает класс с именем test, который расширяет существующий класс HttpServlet и переопределяет метод service(). Метод service() получает параметры запроса с помощью объекта request и передает ответ сервлета с помощью объекта response. Метод service() нашего класса test выполняет следующие действия:
• устанавливает тип выводимой информации с помощью метода setContentType() объекта response;
• получает ссылку на выходной поток сервлета с помощью метода getWriter() объекта response;
• выводит в этот поток текстовую информацию.
3. Для сохранения файла нажмите комбинацию клавиш Ctrl+S. В стандартном окне Windows Сохранить как откройте любую папку, например <���Корневая папка Tomcat>\webapps\ROOT\WEB-INF\classes. Введите имя файла test.java (имя файла должно совпадать с именем класса) и нажмите кнопку Сохранить.
4. Откройте окно командной строки Windows. Для этого нажмите кнопку Пуск, в меню выберите пункт Выполнить, в появившемся окне Запуск программы в поле Открыть введите команду cmd и нажмите кнопку OK. На экране возникнет окно командной строки, в которой с помощью команды cd перейдите в папку, в которой находится файл test.java (рис. 4.32).
Рис. 4.32.Компиляция сервлета
5. Скомпилируйте сервлет, выполнив в окне командной строки команду
javac test.java
В результате компиляции в папке, где находится файл test.java, будет создан файл test.class. Этот файл и есть созданный нами сервлет.
...
Внимание!
Далее вы узнаете, как разместить и зарегистрировать сервлет в контейнере сервлетов нашей среды разработки. Если для запуска сервлета вы используете хостинг с поддержкой сервлетов, то при подключении сервлета руководствуйтесь инструкциями провайдера хостинга.
6. Скопируйте файл test.class в папку <���Корневая папка Tomcat>\webapps\ROOT\
WEB-INF\classes, например C: \Program Files\Tomcat\webapps\ROOT\WEB-INF\classes (если исходный файл test.java был создан в этой папке, то файл test.class уже находится в нужной папке и копирование не требуется).
...
Внимание!
Обратите внимание на регистр символов: важно, чтобы папка для размещения сервлетов называлась именно classes (не CLASSES и не Classes).
7. Откройте для редактирования (например, с помощью программы Блокнот) файл web.xml, находящийся в папке <���Корневая папка Tomcat>\webapps\ROOT\WEB-INF.
В этом файле для каждого нового сервлета необходимо добавить в элемент web-app вложенные элементы servlet и servlet-mapping (листинг 4.15).
Листинг 4.15.
Файл web.xml
<���Дополнительные атрибуты>…>
<���Имя сервлета 1>
<���Класс сервлета 1>
<���Имя сервлета 1>
<���Адрес сервлета 1>
<���Имя сервлета 2>
<���Класс сервлета 2>test
<���Имя сервлета 2>
<���Адрес сервлета 2>
…
Элемент servlet должен содержать произвольное имя сервлета и имя класса, заданное в коде сервлета (см., например, листинг 4.14). Элемент servlet-mapping должен содержать то же самое имя сервлета и URL-адрес, по которому будет доступен этот сервлет.
Читать дальше
Конец ознакомительного отрывка
Купить книгу