Java библиотека – Telegram
Java библиотека
31.5K subscribers
2.38K photos
91 videos
10 files
2.19K links
Книги, статьи, мемы и многое другое для Java программиста!

По сотрудничеству и рекламе: @NadikaKir

Канал в перечне РКН: https://vk.cc/cJrT4A

Мы на бирже: https://telega.in/c/javalib/

Сообщество VK https://vk.com/javatutorial
Download Telegram
Блокирующий метод

Блокирующий метод (blocking method) — это метод, который приостанавливает выполнение текущего потока и ждет определенного события или условия.
Они используются для синхронизации потоков, например при работе с сетью или файлами.

При вызове блокирующего метода поток переходит в состояние ожидания и не выполняет других операций.

Метод блокирует поток до тех пор, пока не произойдет нужное событие, например данные не будут доступны для чтения.
Чтобы избежать блокировки всего приложения, блокирующие вызовы обычно заворачивают в отдельные потоки.

Например, метод readLine() блокирует поток до тех пор, пока пользователь не введет строку и не нажмет Enter.
После ввода данных метод возвращает управление потоку и программа выводит введенную строку.

Таким образом, блокирующий вызов позволяет приостановить выполнение кода до наступления нужного события.
👍23🔥3
Научитесь грамотно работать с высоконагруженными системами

на курсе «Highload Architect» от OTUS с новогодней скидкой

💻 Всего за 5 месяцев вы:

- научитесь использовать решения, которые выдерживают сотни тысяч (и даже миллионы) запросов в секунду;
- сможете правильно оптимизировать работоспособность серверов;
- актуализируйте и систематизируйте знания в сфере HighLoad.

🔥 Для кого:

- архитекторов высоких нагрузок;
- технических руководителей;
- веб-разработчиков;
- тимлидов команд веб-разработки;
- SRE-специалистов

Программа переработана и отвечает современным требованиям рынка.

🗓 Курс стартует 26 декабря

🌐 Пройдите вступительное тестирование прямо сейчас и забронируйте место в группе по новогодней скидке: https://otus.pw/fy92/
👍64🔥1
👩‍💻 Cross-Site Resource Forgery (CSRF) - Spring Security

Spring Security кроме аутентификации и авторизации предоставляет инструменты для противодействия эксплойтам, например, межсайтовой подделки запросов (Cross-site Resource Forgery; CSRF).

В этом
ролике автор расскажет о природе CSRF-атак, продемонстрирует несколько примеров, а так же расскажет о том, как можно защититься от них, в том числе при помощи Spring Security.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍152🔥1🎉1
♨️ Хочешь выйти на новый профессиональный уровень джавист?

- Осваивай Spring!


Тест на знание языка Java

— Ответь на 21 вопрос
и проверь, насколько хорошо nы знаешь язык Java и готовы освоить Spring. Сможешь сдать — пройдёшь на продвинутый онлайн-курс "Разработчик на Spring" Framework со скидкой!

👉 ПРОЙТИ ТЕСТ ОНЛАЙН-КУРСА "Разработчик на Spring Framework": https://otus.pw/tTsi/

🎫 Курс доступен для приобретения в рассрочку!

🌲 А ещё, сейчас действуют новогодние скидки! Предложение ограничено.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2
Друзья, представляем вашему вниманию шпаргалку по теме JDBC.

Источник
🔥20👍81
Бесплатный вводный урок Java для начинающих!

Когда: 21 декабря в 19:00 по мск.

Расскажем за 2 часа, как освоить базовые навыки программирования на Java, найти удаленную работу и расти в профессии.

На практике познакомимся с синтаксисом языка. В прямом эфире напишем на Java консольное приложение имитирующее работу всем известной игры «Камень, ножницы, бумага». Эту программу часто дают новичкам на техническом интервью.

🎁 Всем, кто зарегистрировался — Гайд «Как заговорить на сленге IT-специалистов», а каждому участнику —Карта компетенций Java-разработчика. А еще успейте получить новогодние бонусы!

Реклама. АНПОО "ХЕКСЛЕТ КОЛЛЕДЖ". ИНН 7839056670.
👍9🔥21
Основы OAuth 2.0 и OpenID Connect

При необходимости передачи данных пользователя сторонним приложениям надо как-то решать вопрос доступа - как предоставлять доступ к данным, не передавая стороннему приложения учётные данные пользователя - логин, пароль и т.д. И основным способом решения этого вопроса является фреймворк авторизации OAuth, который добавляет в эту схему сервер авторизации, а так же описывает сценарии взаимодействия между участниками для безопасного предоставления доступа сторонним приложениям к пользовательским данным.
OpenID Connect - это слой идентификации и аутентификации, разработанный на основе OAuth и совместимый с ним. OIDC вводит идентификационный токен (ID Token), специфичные области применения (scope) ключей доступа, JWT и дополнительные эндпонты. Спецификация OAuth довольно абстрактна, а OIDC - более конкретна, поэтому автор в данном ролике рассматривает OAuth именно на примере OIDC.

В этом
ролике автор рассказывает об основах OAuth и OIDC: ролях, ключах доступа, клиентах, областях применения ключей доступа и способах предоставления доступа к защищённым ресурсам.
👍182🔥1
💪 Пройди тест по Java и проверь свои знания.

Ответишь
— пройдешь на продвинутый курс "Java Developer. Professional" от OTUS по специальной цене + получишь доступ к записям открытых уроков курса курса🎁 .

🌲 А ещё, сейчас действуют новогодние скидки! Возможна оплата в рассрочку! Предложение ограничено.

👉 ПРОЙТИ ТЕСТ: https://otus.pw/ZMxt/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2🎉2
Интерфейс BlockingQueue

Интерфейс BlockingQueue используется для реализации очередей с блокировками.
Он позволяет безопасно работать с очередью из нескольких потоков.

Основные методы:
add(E e) — добавляет элемент в очередь, может выбросить исключение если очередь переполнена.
offer(E e) — добавляет элемент в очередь, возвращает false если очередь переполнена.
put(E e) — добавляет элемент в очередь, блокирует поток если очередь переполнена.
take() — извлекает и удаляет элемент из очереди, блокирует поток если очередь пуста.
poll() — извлекает и удаляет элемент из очереди, возвращает null если очередь пуста.
👍18🔥61
👩‍💻 Набор в последнюю группу курса "Java Developer. Professional" в уходящем 2023 году!

🎉 В Otus праздничные цены для отличной карьеры в IT!

Пройди тест по Java и проверь свои знания.

Ответишь
— пройдешь на продвинутый курс "Java Developer. Professional" от OTUS по специальной цене + получишь доступ к записям открытых уроков курса курса .

🎄 Новогодние скидки! Возможна оплата в рассрочку! Предложение ограничено.

➡️ ПРОЙТИ ТЕСТ: https://otus.pw/tZwpJ/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5😁31
Тип Optional

Тип Optional используется для представления возможности отсутствия значения. Он обертывает другой тип данных и может содержать либо значение этого типа, либо быть пустым (null).

Этот код создает Optional объект, который может содержать строку. Если строка доступна, она будет возвращена; в противном случае будет возвращено значение «Default Value».

Использование Optional способствует более чистому и безопасному коду при работе с возможно отсутствующими значениями.
🔥14👍6
⚡️ Тест по Java от OTUS

Проверь насколько хорошо ты знаешь Java и готов освоить Spring!

Ответишь — пройдешь на продвинутый курс "Разработчик на Spring Framework" от OTUS по специальной цене.

👉 ПРОЙТИ ТЕСТ: https://otus.pw/tPDH/

🎫 Курс можно приобрести в рассрочку

🌲 А ещё, сейчас действуют новогодние скидки! Предложение ограничено.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍53🔥3😁3
Локально размещенное веб-приложение, позволяющее выполнять различные операции с файлами PDF.

Язык: Java

💥Stars: 7900
📝Forks: 521
https://github.com/Frooodle/Stirling-PDF
👍153🎅1
👩‍💻 Как стать востребованным Java-разработчиком с нуля?

Получить все необходимые навыки до уровня Middle на комплексном онлайн-курсе «Специализация Java-разработчик» от OTUS.

После обучения вы сможете:

➡️ Создавать приложения на Java
➡️ Работать с реляционными базами данных
➡️ Разрабатывать серверные веб-приложения
➡️ Претендовать на позиции Middle Java Developer

📌Вы освоите все необходимые инструменты, создадите выпускной проект под руководством опытных специалистов из ведущих компаний и добавите его в портфолио.

➡️ Как понять, подойдет ли вам программа? Оставьте заявку прямо сейчас и получите 3 урока от экспертов курса в подарок: https://otus.pw/KZoF/

🌲 А ещё, сейчас действуют новогодние скидки! Предложение ограничено.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63🔥31🎉1
Метод Math.random()

Используется для генерации случайного числа в диапазоне от 0.0 до 1.0. Различные диапазоны могут быть достигнуты с помощью арифметики.

Выше приведен пример выбора случайного числа в диапазоне от 0 до 10.
👍25🔥54😁2
Microservices | Вопросы с Собеседований

- Подборка вопросов по микросервисной архитектуре с реальных собеседований

- Авторские статьи по архитектуре, проектированию, базам данных

- Автор - Lead Developer с 8 лет опыта на Java/Kotlin
🔥15👍73😁1
👩‍💻 Actuator, Micrometer, Victoria Metrics, Grafana - Мониторинг Spring Boot

Мониторинг состояния сервисов является важной составляющей процесса сопровождения программного обеспечения. В этом ролике автор демонстрирует, как при помощи Spring Boot Actuator и Micrometer можно экспортировать метрики в VictoriaMetrics, а затем визуализировать их в Grafana. Кроме этого автор рассматривает несколько простых примеров написания собственных метрик.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23🔥75🎄3🎉1
Дорогие друзья! Поздравлю всех с праздником — Новым годом! Пусть задуманное обязательно сбудется, пусть работа приносит только пользу и хорошее настроение, пусть спутники будут верными, коллеги — отзывчивыми, а счастье льется через край! Новый год — прекрасное время для новых достижений, перемен и переосмысления всех планов! Так пусть все сбывается наилучшим образом! Ура! 🎄
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥45🍾17🎄11👍76
System.nanoTime

System.nanoTime() возвращает текущее время в наносекундах.

Этот метод используется для измерения продолжительности выполнения небольших фрагментов кода.

В отличие от System.currentTimeMillis(), который возвращает время в миллисекундах, nanoTime() имеет более высокое разрешение и позволяет измерять очень короткие промежутки времени.

nanoTime() часто используется для:

— Замеров производительности.
— Измерения задержек в мультитрединге.
— Микробенчмаркинга.
— Определения интервалов между событиями в реальном времени.
🔥18👍113
Practical Spring LDAP: Using Enterprise Java-Based LDAP in Spring Data and Spring Framework 6, Second Edition (2024) PDF

This revised edition is your practical, hands-on guide to developing Java-based enterprise applications with big data or batches of data using the Spring LDAP and the Spring Data LDAP frameworks. The book covers these popular Spring project modules and explains the purpose and fundamental concepts of LDAP before giving a comprehensive tour of the latest version of Spring LDAP and Spring Data LDAP as found in Spring Framework 6.

The book provides a detailed treatment of LDAP controls and the new features of Spring LDAP such as Object Directory Mapping and LDIF parsing. LDAP has become the de facto standard for storing and accessing information in enterprises. Despite its widespread adoption, developers often struggle when it comes to using this technology effectively.
👍7🔥32
Развивайте алгоритмическое мышление, чтобы претендовать на Middle и Senior-должности в крупных IT-компаниях

Проверьте свой уровень компетенций и узнайте насколько вы соответствуете требованиям рынка: https://otus.pw/VR6p/

Сможете ответить на 20 вопросов за 30 минут, получите скидку на курс «Алгоритмы и структуры данных» от OTUS.
👍62🔥2🎅2😁1