Java библиотека
Книги, статьи, мемы и многое другое для Java программиста! По сотрудничеству и рекламе: @NadikaKir Канал в перечне РКН: https://vk.cc/cJrT4A Мы на бирже: https://telega.in/c/javalib/ Сообщество VK https://vk.com/javatutorial
إظهار المزيد📈 نظرة تحليلية على قناة تيليجرام Java библиотека
تُعد قناة Java библиотека (@javalib) في القطاع اللغوي الروسية لاعباً نشطاً. يضم المجتمع حالياً 30 590 مشتركاً، محتلاً المرتبة 4 311 في فئة التكنولوجيات والتطبيقات والمرتبة 20 951 في منطقة روسيا.
📊 مؤشرات الجمهور والحراك
منذ تأسيسه في невідомо، حقق المشروع نمواً سريعاً وجمع 30 590 مشتركاً.
بحسب آخر البيانات بتاريخ 11 أكتوبر, 2026، تحافظ القناة على نشاط مستقر. خلال آخر 30 يوماً تغيّر عدد الأعضاء بمقدار -104، وفي آخر 24 ساعة بمقدار 0، مع بقاء الوصول العام مرتفعاً.
- حالة التحقق: غير موثّقة
- معدل التفاعل (ER): يبلغ متوسط تفاعل الجمهور 7.03%. وخلال أول 24 ساعة من النشر يحصد المحتوى عادةً 4.61% من ردود الفعل نسبةً إلى إجمالي المشتركين.
- وصول المنشورات: يحصل كل منشور على متوسط 2 150 مشاهدة. وخلال اليوم الأول يجمع عادةً 1 412 مشاهدة.
- التفاعلات والاستجابة: يتفاعل الجمهور بانتظام؛ متوسط التفاعلات لكل منشور يبلغ 7.
- الاهتمامات الموضوعية: يركز المحتوى على مواضيع رئيسية مثل string, мониторинг, строка, boot, архитектура.
📝 الوصف وسياسة المحتوى
يصف المؤلف القناة بأنها مساحة للتعبير عن الآراء الذاتية:
“Книги, статьи, мемы и многое другое для Java программиста!
По сотрудничеству и рекламе: @NadikaKir
Канал в перечне РКН: https://vk.cc/cJrT4A
Мы на бирже: https://telega.in/c/javalib/
Сообщество VK https://vk.com/javatutorial”
بفضل وتيرة التحديث المرتفعة (أحدث البيانات بتاريخ 12 أكتوبر, 2026) تحافظ القناة على حداثتها ومستوى وصول مرتفع. وتُظهر التحليلات تفاعلاً نشطاً من الجمهور، ما يجعلها نقطة تأثير مهمة ضمن فئة التكنولوجيات والتطبيقات.
🫡 Получить access token через API; 🫡 Не писать токены и пароли в Allure и CI-логи; 🫡 Кэшировать состояние по конкретной test identity; 🫡 Проверять TTL перед повторным использованием токена; 🫡 Положить cookie или localStorage в браузер; 🫡 Сделать это до старта SPA через WebDriver BiDi; 🫡 Проверить, что backend принял токен, а frontend действительно стартовал авторизованным.На примере 180 тестов время подготовки авторизации снизилось с 6–9 до 0,4–0,7 секунды на сценарий. ⛓ Читать статью Полезные ресурсы по Java 👩💻| Наш канал в MAX 🟪
spring.dao.exceptiontranslation.enabled
Стало:
spring.persistence.exceptiontranslation.enabled
Функциональность та же: Spring продолжает переводить persistence-исключения в DataAccessException для @Repository.
Чтобы не пропустить такие изменения при миграции на Boot 4, подключите Spring Boot Properties Migrator — он покажет устаревшие и переименованные настройки.
Мелочь, которая легко ломает конфиг после обновления.
Полезные ресурсы по Java 👩💻| Наш канал в MAX 🟪put() заменяет его значение.
Полезные ресурсы по Java 👩💻| Наш канал в MAX 🟪Calendar месяцы нумеруются с нуля: январь 0, май 4, июнь 5. Простая ловушка, которая легко превращается в баг.
Начиная с Java 8, для нового кода выбирайте java.time:
LocalDate date = LocalDate.of(2026, 5, 31);
LocalDate deadline = date.plusDays(7);
String text = deadline.format(
DateTimeFormatter.ISO_LOCAL_DATE
);
// 2026-06-07
Здесь 5 означает май, а plusDays() возвращает новый объект, сохраняя исходную дату. Основные типы java.time неизменяемы и безопасны для совместного использования потоками.
Помните: `LocalDateTime` не содержит часового пояса. Для однозначного момента события используйте Instant или задавайте пояс явно.
Полезные ресурсы по Java 👩💻| Наш канал в MAX 🟪java -jar app.jar
И оно начинает принимать HTTP-запросы. Без отдельной установки Tomcat и развёртывания WAR-файла.
Секрет — во встроенном сервере. Для обычного Spring MVC-приложения зависимость веб-стартера по умолчанию подтягивает Tomcat. Его библиотеки входят в исполняемый JAR, а Spring Boot автоматически настраивает и запускает сервер вместе с приложением.
Это упрощает запуск и развёртывание: приложение и сервер поставляются как единое целое, с согласованными версиями и настройками. Такой JAR удобно запускать локально, на сервере или в контейнере.
Embedded не означает, что сервера нет. Он работает внутри процесса вашего Java-приложения. Tomcat — не единственный вариант: например, приложения на Spring WebFlux по умолчанию используют Reactor Netty.
Полезные ресурсы по Java 👩💻| Наш канал в MAX 🟪Future и управлять завершением исполнителя. Конкретная реализация определяет, как выполняются задачи.
ExecutorService executor =
Executors.newFixedThreadPool(10);
Здесь одновременно работают не более 10 потоков. Однако очередь задач у такого исполнителя не ограничена: при постоянной перегрузке она может расти. Для выполнения по расписанию используется ScheduledExecutorService.
Virtual Threads — для большого количества ожидающих задач. Виртуальные потоки стали стандартной возможностью в Java 21. Они особенно полезны, когда задачи много времени проводят в блокирующих вызовах к БД или HTTP-сервисам. Их тоже можно использовать через ExecutorService:
try (var executor =
Executors.newVirtualThreadPerTaskExecutor()) {
executor.submit(() -> callExternalApi());
}
Каждая задача получает отдельный виртуальный поток. Создавать пул для переиспользования виртуальных потоков не нужно.
Что важно в продакшене:
• Виртуальные потоки не добавляют процессорных ядер и сами по себе не ускоряют вычисления.
• Тысячи виртуальных потоков не означают, что база выдержит тысячи одновременных запросов. Нужны отдельные ограничения, например пул соединений или Semaphore.
• Ограничение числа рабочих потоков не равно ограничению очереди задач.
ForkJoinPool помогает распараллеливать вычисления. ExecutorService управляет выполнением задач. Virtual Threads позволяют эффективно организовать множество задач, ожидающих I/O.
Полезные ресурсы по Java 👩💻| Наш канал в MAX 🟪spring.devtools.livereload.enabled=true.
Порт 35729 больше не занимается автоматически — удобно, когда на одной машине запущено несколько приложений.
Полезные ресурсы по Java 👩💻| Наш канал в MAX 🟪