Обложка канала

Библиотека джависта. Страница 36

20804 @javaproglib

Полезные материалы по всему, что может быть полезно разработчику на Java.

  • Библиотека джависта

    Для чего в Java используются статические блоки инициализации? Статические блоки инициализация используются для выполнения кода, который должен выполняться один раз при инициализации класса загрузчиком классов, в момент, предшествующий созданию объектов этого класса при помощи конструктора. Такой блок (в отличие от нестатических, принадлежащих конкретном объекту класса) принадлежит только самому классу (объекту метакласса Class).
  • Библиотека джависта

    👉 Требуются специалисты по Java в проект облачной платформы для разработки бизнес-решений Platform V. Наша команда конструирует Java-фреймворк для создания сценариев навигации по процессу в различных каналах обслуживания. Если ты знаешь принципы ООП и шаблонов проектирования, имеешь опыт разработки с использованием Java 8+, нам стоит обсудить детали сотрудничества. Присоединяйся! Тебе предстоит: ● разрабатывать фреймворк для бизнес-приложений; ● участвовать в принятии архитектурных решений; ● осуществлять поддержку пользователям; ● документировать разработанный код. Стек технологий: Java 11, Spring, Spring Boot, IntelliJ IDEA, Git, Maven, Gradle, Jenkins, Docker, JSON, Kotlin. Ожидаем, что тебе знакомы: ● Spring, Spring Boot, Maven; ● библиотеки для тестирования JUnit / TestNG / Mockito / Hamcrest Matchers; ● системы контроля версий Git. 🔥 Предлагаем: ● доход до 300 000 рублей (net); ● льготные условия по кредитам Сбербанка; ● социальные гарантии; ● корпоративные мероприятия, тренажёрный зал в офисе; ● дополнительное образование.
  • Библиотека джависта

    Чем отличается sendRedirect() от forward()? forward(): • Выполняется на стороне сервера; • Запрос перенаправляется на другой ресурс в пределах того же сервера; • Не зависит от протокола клиентского запроса, так как обеспечивается контейнером сервлетов; • Нельзя применять для внедрения сервлета в другой контекст; • Клиент не знает о фактически обрабатываемом ресурсе и URL в строке остается прежним; • Выполняется быстрее метода sendRedirect(); • Определён в интерфейсе RequestDispatcher. sendRedirect(): • Выполняется на стороне клиента; • Клиенту возвращается ответ 302 (redirect) и запрос перенаправляется на другой сервер; • Может использоваться только с клиентами HTTP; • Разрешается применять для внедрения сервлета в другой контекст; • URL адрес изменяется на адрес нового ресурса; • Медленнее forward() т.к. требует создания нового запроса; • Определён в интерфейсе HttpServletResponse.
  • Реклама

  • Библиотека джависта

    PlayButton 2022 — узнайте, как снимают современные сериалы Целых два дня про всё, что связано с сериалами и видео — от съёмок и мастеринга до сжатия видео и оптимизации трансляций. Регистрируйтесь. https://clck.ru/32Y3wz
  • Библиотека джависта

    #вопросы_с_собеседований К каким конструкциям Java применим модификатор static? • полям; • методам; • вложенным классам; • членам секции import.
  • Библиотека джависта

    Текущая дата и время в Java Получить текущую дату и время в Java достаточно легко. Вы можете использовать простой объект date вместе с методом toString(), чтобы вывести текущую дату и время.
  • Библиотека джависта

    🔴 Как дженерики помогают в разработке на Go? 📌 Узнаем в четверг, 17 ноября в 20:00 на открытом уроке в OTUS. Вебинар пройдет в рамках онлайн-курса «Golang Developer Professional» OTUS для программистов с опытом и начинающих Go-разработчиков. 📕 На занятии получим ответы на вопросы: 🔸 Что такое дженерики? 🔸 Как они нам могут помочь в ежедневных задачах? 🔸 Как они влияют на производительность? 🔸 Чем они лучше или хуже обычных интерфейсов? 🔥 Определите свой уровень подготовки с помощью теста и регистрируйтесь на мероприятие Реклама. Информация о рекламодателе на сайте www.otus.ru
  • Библиотека джависта

    📜 Основные SQL-команды и запросы с примерами, которые должен знать каждый разработчик В небольшом обзоре разберем наиболее важные команды языка запросов SQL и сделаем шаг в сторону грамотного изучения работы с базами данных. 🔗 Основной сайт 🔗 Зеркало
  • Библиотека джависта

    #вопросы_с_собеседований Как организовать подключение к базе данных, обеспечить журналирование в сервлете? При работе с большим количеством подключений к базе данных рекомендуется инициализировать их в servlet context listener, а также установить в качестве атрибута контекста для возможности использования другими сервлетами. Журналирование подключается к сервлету стандартным для логгера способом (например для log4j это может быть property-файл или XML-конфигурация) , а далее эта информация используется при настройке соответствующего context listener.
  • Библиотека джависта

    #вопросы_с_собеседований Как уведомить объект в сессии, что сессия недействительна или закончилась? Чтобы быть уверенным в том, что объект будет оповещён о прекращении сессии, нужно реализовать интерфейс javax.servlet.http.HttpSessionBindingListener. Два метода этого интерфейса: valueBound() и valueUnbound() используются при добавлении объекта в качестве атрибута к сессии и при уничтожении сессии соответственно.
  • Библиотека джависта

    #вопросы_с_собеседований Что такое «сессия»? Сессия - это сеанс связи между клиентом и сервером, устанавливаемый на определенное время. Сеанс устанавливается непосредственно между клиентом и веб-сервером в момент получения первого запроса к веб-приложению. Каждый клиент устанавливает с сервером свой собственный сеанс, который сохраняется до окончания работы с приложением.
  • Библиотека джависта

    Reverse-инжиниринг “чёрного ящика”: зачем поддержке исходный код? habr.com/ru/comp…g/698576
    Reverse-инжиниринг “чёрного ящика”: зачем поддержке исходный код?

    Всем привет! Мы команда сопровождения GlowByte, занимаемся решением багов в различных системах крупного бизнеса. Большая часть продуктов, которые мы поддерживаем, – это маркетинговые комплексы...

    Хабр
  • Библиотека джависта

    🔥Тест для QA Automation Engineer Java от OTUS. Оцените свой уровень пройдя короткий тест по автоматизации тестирования на Java! Результат сразу! 👉🏻 ПРОЙТИ ТЕСТ: https://otus.pw/i47r/ Пройдите тест, смотрите наши открытые уроки - и приходите учиться на онлайн-курс «Java QA Engineer. Professiona». Ждем! 🎁Сможете успешно пройти тест, получите курс по Git в записи бесплатно!
  • Библиотека джависта

    #вопросы_с_собеседований В чём заключаются различия между java.util.concurrent.Atomic*.compareAndSwap() и java.util.concurrent.Atomic*.weakCompareAndSwap()? ☕️ weakCompareAndSwap() не создает memory barrier и не дает гарантии happens-before; ☕️ weakCompareAndSwap() сильно зависит от кэша/CPU, и может возвращать false без видимых причин; ☕️ weakCompareAndSwap(), более легкая, но поддерживаемая далеко не всеми архитектурами и не всегда эффективная операция.
  • Библиотека джависта

    #вопросы_с_собеседований Почему нельзя объявить метод интерфейса с модификатором final? В случае интерфейсов указание модификатора final бессмысленно, т.к. все методы интерфейсов неявно объявляются как абстрактные, т.е. их невозможно выполнить, не реализовав где-то еще, а этого нельзя будет сделать, если у метода идентификатор final.
  • Реклама

  • Библиотека джависта

    Если ты Java-разработчик или фронтендер и не знаешь, кого ждут на митапе BRO.JS в Казани, — прочитай второе слово. Конечно, тебя! Митап — возможность наладить полезные связи, обменяться опытом и узнать прикладную информацию от экспертов. В качестве спикеров выступят senior-фронтендеры СберБанка Онлайн и лидер компетенции web в проекте СберИнвестор. Они расскажут: • об отличиях протокола http3 от предыдущих версий; • как применять технологию WebTransport; • как поддерживать стабильным open-source-решение на enterprise-проектах; • как внутри enterprise-проекта работать с формами; • как сделать переход с selenium-like-инструмента на Cypress. Помимо выступлений спикеров, будут воркшопы, кофе-брейки и вручения призов. 🕖 Дата мероприятия: 14–15 ноября, 17:00 🚩 Место проведения: Казань, ул. Спартаковская, 2к2, школа 21
  • Библиотека джависта

    12 ноября СберБанк проводит One Day Offer для Java-разработчиков. 👉 Получи оффер от крупнейшего банка страны за один день! Мы ждём специалистов, проживающих в Москве или готовых переехать в столицу, с опытом разработки высоконагруженных проектов от 2 лет. Команда Департамента ИТ розничного бизнеса занимается разработкой и развитием персональных решений, помогая сделать сервисы СберБанка доступнее, безопаснее и удобнее. Нашими продуктами: «СберБанк Онлайн», «Мобильный банк», «СберБанк ID», «СберKids» и др. - пользуются миллионы клиентов по всей России. Наш стек технологий: Java 8–11, Spring, Docker, Kafka, Postgres, Kubernetes. Задачи, которые мы поручим тебе: ✔️ разработка программного кода и внесение изменений; ✔️ участие в разработке архитектуры решения и выборе технологий, построение моделей данных; ✔️ декомпозиция и анализ задач бэклога; ✔️ планирование и работа в спринтах (Agile Scrum). Присоединяйся к нашей команде! ✍️ Отправь заявку на участие.
  • Библиотека джависта

    #вопросы_с_собеседований Чем CompletableFuture отличается от Future? Future – интерфейс, который представляет пока еще недовычисленный результат. Когда породившая его асинхронная операция заканчивается, он заполняется значением. Метод get блокирует выполнение до получения результата, isDone проверяет его наличие. К примеру результат выполнения задач в ExecutorService, ForkJoinTask, реализует интерфейс Future. CompletableFuture появился в Java 8. Это класс-реализация старого интерфейса Future, а значит всё сказанное выше справедливо и для него. Вдобавок к этому, CompletableFuture реализует работу с отложенными результатами посредством коллбэков. Метод thenApply регистрирует код обработки значения, который будет автоматически вызван позже, когда это значение появится. В Java 9 прогресс пошел дальше, и появилась библиотека Flow API. Это встроенная реализация реактивных стримов. Реактивный стрим, сильно упрощая, – это более общий случай, последовательность отложенных значений. Другая их реализация – популярная, но не входящая в стандарт библиотека Reactive Extensions (RxJava).
    Reactive Programming with JDK 9 Flow API

    Reactive programming is about processing an asynchronous stream of data items, where applications react to the data items as they occur. This article by Rahul Srivastava presents an example using the JDK 9 Flow API.

    Oracle