JavaRush /Java блог /Архив info.javarush /Уровень 39. Ответы на вопросы к собеседованию по теме уро...
lichMax
40 уровень
Санкт-Петербург

Уровень 39. Ответы на вопросы к собеседованию по теме уровня

Статья из группы Архив info.javarush
Уровень 39. Ответы на вопросы к собеседованию по теме уровня - 1Список вопросов:
  1. Что такое web-сервер?
  2. Что такое Tomcat?
  3. Что такое сервлеты и где они используются?
  4. Какие режимы запуска приложений в IDEA вы знаете?
  5. Можно ли дебажить приложение/сервлет, которое запущено внутри Tomcat’а?
  6. Как в IDEA установить точку остановки?
  7. Как в IDEA посмотреть список всех точек остановки?
  8. Можно ли с помощью IDEA поменять значение переменной в процессе работы программы?
  9. Как в IDEA настроить отступы?
  10. Как в IDEA настроить, чтобы { отображалось на той же строке, а не на новой?
Мои ответы:
  1. Веб-сервер — это сервер, принимающий HTTP-запросы от клиенты (чаще всего браузеров) и выдающий им HTTP-ответы, как правило вместе с HTML-страницей, изображений, файлом, медиа-потоком и другими данными.

  2. Apache Tomcat — это контейнер сервлетов, разработанный компанией Apache Software Foundation. Реализует спецификацию сервлетов и спецификацию JSP (JavaServer Pages) и JSF(JavaServer Faces). Позволяет запускать веб-приложения, содержит ряд программ для самоконфигурирования. Может выступать в качестве самостоятельного веб-сервера, в качестве контента (в сочении с Apache HTP Server), а также в качестве контейнера сервлетов в серверах приложений JBoss и GlassFish.

  3. Сервлет — это Java-класс, наследуемый от класса HttpServlet и реализующий любые из методов: doGet(), doPost(), doPut(), doDelete()init() и destroy(). Этот класс используется веб-сервером для обработки запросов и формирования ответов на эти запросы. Каждый запрос обрабатывается в отдельном потоке. Контейнер контейнер вызывает метод service() для каждого запроса. Этот метода смотрит на тим входящего запроса и пересылает его соответствующему методу. Если данный метода не реализован в сервлете, то этот метод вызывается у супер-класса, и обычно завершается возвращение ошибки инициатору запроса.

  4. Приложение в IDEA можно запустить в двух режимах: обычный запуск приложения и запуск в режиме отладки. Обычный запуск приложения - это обычно его выполнение. В режиме отладки же приложение можно выполнять построчно. Также в этом режиме можно ставить точки останова (breakpoints) на некоторые строчки кода (программа будет выполнять как обычно, пока не встретит такую точку; как она её встретит, она остановится). Кроме того, этот режим позволяет смотреть значения переменных во время выполнения программы.

  5. Да, это можно делать, и это можно делать даже из самой IDE. Например, чтобы запустить отладку сервлета из IDEA, нужно сделать следующее:

    1. Зайти в найстроки отладки/запуска приложения
    2. Добавить конфигурацию Remote
    3. Далее выводится страница, где нужно изменить адрес хоста, на котором находится Tomcat, и порт
    4. Открыть файл catalina.bat (для Windows) и исправить в нём строчку "set DEBUG_OPTS=". Туда нужно дописать следующее "-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=1985". Последнее число - это адрес порта, который мы указали на шаге 3.
    5. Перестартовать Tomcat
    6. Выставить точки останова в коде в нужных местах
    7. Нажать Debug в IDEA
    8. Отправить запрос
    9. Произвести отладку из среды разработки
  6. Либо можно нажать мышкой в поле между номером строчки и началом строки, либо встать на какую-то строчку и нажать на клавиатуре ctrl+F8, либо встать на строку и вверху в меню выбрать Run -> Toggle line BreakPoint.

  7. Либо сочетанием клавиш ctrl+shift+F8, либо выбрать в меню Run -> View Breakpoints...

  8. Да, есть такая возможность. Это можно сделать в режиме отладки. Во время отладки нужно в окне переменных выбрать нужную переменную и нажать F2, либо щёлкнуть по переменной правой кнопкой мыши и в открывшемся меню выбрать "set value", и ввести нужное значение переменной.

  9. Нужно зайти в настройки (Settings), там выбрать Editor, потом — Code Style. Там уже можно изменить общий опции, либо изменить настройки отступов для каждого поддерживаемого формата файла.

  10. Нужно перейти по следующему пути Settings -> Editor -> Code Style -> Java -> Wrapping and Braces, и дальше в разделе Braces Placement изменять настройки (для класса, метода, лямбда-выражений, других случаев).

Комментарии (5)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
Игорь Уровень 41
15 июня 2023
Насчëт веб-сервера не совсем согласен. Почему только HTTP, там разные протоколы есть, в том числе и WebSockets
Interstellar Уровень 36 Expert
31 августа 2020
Этот метода очень интересная
vinograd Уровень 33
9 апреля 2020
Это пипец! Работа с Tomcat блин закончилась на его установке
wrcraid Уровень 35
19 декабря 2019
столько очепяток в статье
hidden #1281202 Уровень 41
16 августа 2019
Разрабам не помешало бы воспользоваться 10-м ответом в своих лекциях.