Бесплатный курс по Java: от основ до продвинутого уровня
Оптимизация Java-cервлетов с помощью AsyncContext
Представим ситуацию, что сервлет ожидает завершения какого-то процесса выполняющегося в другом потоке, чтобы в последствии использовать результат его выполнения.
Но пока код сервлета остановился и ожидает, можно сделать так, чтобы поток, в котором выполняется код сервлета не простаивал, то есть, чтобы он пошел выполнять другую задачу. Для этого используется AsyncContext.
Пример программы:
//Создадим простенький класс.
//Дальше поясним зачем он.
class Friend {
public static void m1() {
System.out.println(“Hello Friend!!!”);
}
}
//Также можно увидеть что мы реализуем не только
//Runnable но и расширяем Friend. Это преимущество
//реализации Runnable перед расширением Thread
//так как в Java можно расширять Лишь Один класс
//и если бы мы расширили Thread то расширить
//какой либо другой класс (например Friend)
//уже не имели бы возможности.
class MyThread extends Friend implements Runnable {
int i=0;
public void run() {
i++;
m1();
}
}
class RunnableExample {
public static void main(String[] args) {
//создаем один объект MyThread.
MyThread MyThr = new MyThread();
//Можно у одного объекта
//в отдельных потоках запускать его метод run
//это преимущество Runnable перед Thread.
//Подробнее на следующей странице.
Thread t1 = new Thread(MyThr);//передается в поток
Thread t2 = new Thread(MyThr);//передается в поток 2 раз
//run объекта MyThr запускается
//в отдельных потоках t1 и t2.
t1.start();
t2.start();
//Еще одно преимущество Runnable перед Thread
//что код класса реализующего Runnable можно
//использовать вне в отдельном потоке.
//То есть m1 просто выполнится здесь в потоке метода main
MyThr.m1();
//В конце можно увидеть 2. То есть оба потока работали
//с одним и тем же объектом.
//Все потоки добавили 1 к полю i объекта MyThr.
System.out.println(MyThr.i);
}
}
Основы JSP: создание первой JSP-страницы, преобразование JSP в сервлеты, преимущества перед чистым HTML. Практическое руководство по началу работы с Java Server Pages.
Time to read: 17
Комментарии в JSP
Разбираем два типа комментариев в JSP: HTML и JSP. Узнайте, как правильно использовать теги и , а также другие JSP-директивы для эффективной разработки.
Time to read: 11
Неявные объекты в JSP: session, request и др.
Изучите 9 неявных объектов JSP: session, request, response, out и другие. Примеры работы с объектами в JSP-страницах и их практическое применение в Java веб-разработке.