uz
Feedback
Библиотека Java разработчика

Библиотека Java разработчика

Kanalga Telegram’da o‘tish

📚 Лайфхаки, приёмы и лучшие практики для Java-разработчиков. Всё, что ускорит код и прокачает навыки. Java, Spring, Maven, Hibernate. По всем вопросам @evgenycarter РКН clck.ru/3KoGeP

Ko'proq ko'rsatish

📈 Telegram kanali Библиотека Java разработчика analitikasi

Библиотека Java разработчика (@bookjava) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 10 265 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 12 032-o'rinni va Rossiya mintaqasida 63 928-o'rinni egallagan.

📊 Auditoriya ko‘rsatkichlari va dinamika

невідомо sanasidan buyon loyiha tez o‘sib, 10 265 obunachiga ega bo‘ldi.

09 Iyun, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni 16 ga, so‘nggi 24 soatda esa -6 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.

  • Tasdiqlash holati: Tasdiqlanmagan
  • Jalb etish (ER): Auditoriya o‘rtacha 8.19% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 4.03% ini tashkil etuvchi reaksiyalarni to‘playdi.
  • Post qamrovi: Har bir post o‘rtacha 841 marta ko‘riladi; birinchi sutkada odatda 414 ta ko‘rish yig‘iladi.
  • Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 6 ta reaksiya keladi.
  • Tematik yo‘nalishlar: Kontent string, интерфейс, строка, boot, api kabi asosiy mavzularga jamlangan.

📝 Tavsif va kontent siyosati

Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
📚 Лайфхаки, приёмы и лучшие практики для Java-разработчиков. Всё, что ускорит код и прокачает навыки. Java, Spring, Maven, Hibernate. По всем вопросам @evgenycarter РКН clck.ru/3KoGeP

Yuqori yangilanish chastotasi (oxirgi ma’lumot 10 Iyun, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.

10 265
Obunachilar
-624 soatlar
-117 kunlar
+1630 kunlar
Postlar arxiv
🦾 Освойте востребованный фреймворк всего за 5 месяцев и создавайте приложения на Java 🔥🔝 Знание Spring Framework – один из
🦾 Освойте востребованный фреймворк всего за 5 месяцев и создавайте приложения на Java 🔥🔝 Знание Spring Framework – один из самых востребованных скиллов для разработчика, многие крупные проекты ищут именно таких специалистов на самые желанные офферы. 5️⃣ Вместе с OTUS вы можете освоить Spring всего за 5 месяцев в рамках курса «Разработчик на Spring Framework»! Что даст вам этот курс: ✔️ Умение эффективно работать в проектах, где есть Spring ✔️ Знание современных возможностей Spring ✔️ Понимание, как создавать Web-приложения на микросервисной архитектуре и решать высокоуровневые задачи по разработке ✔️ Умение быстро проходить путь от идеи до production-grade ✔️ Владение фреймворками Spring и технологиями вспомогательных проектов (Spring MVC, Spring Security, Spring Boot, Spring Reactive Stack, Spring 5) 🌲 А ещё, сейчас действуют новогодние скидки! Предложение ограничено. 🎫 Курс доступен для приобретения в рассрочку! Пройдите бесплатное вступительное тестирование прямо сейчас и узнайте, готовы ли вы стать студентом! ➡️ ПРОЙТИ ТЕСТ: https://vk.cc/ctgKrW Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Как остановить поток? В Java поток представлен классом Thread. В нём есть метод stop(), но пользоваться им нельзя, метод помечен как deprecated. Такая жесткая остановка моментально возвращает все захваченные потоком мониторы, и защищенные ими данные могут оказаться в неконсистентном состоянии. Разработчики рекомендуют вместо этого использовать флаг, который будет показывать о намерении остановить поток. Флаг выставляется извне потока, а внутри проверяется в подходящий момент. Если нужно остановиться, поток просто выходит из метода run(). В качестве такого флага подойдет переменная типа AtomicBoolean. Когда в потоке используются блокирующие операции, обычно для определенного типа операции существует свой способ её прервать. Например, можно закрыть сокет, на котором поток ожидает. Для большинства блокирующих операций сработает метод Thread.interrupt(). С его помощью можно прервать Object.wait() и операции из NIO. Останется только правильно обработать такое прерывание. Прерванный wait() выбросит InterruptedException, Selector.select() вернет результат. Чтобы отличить осознанное прерывание с целью завершить тред от какого-либо другого, его обработку всё ещё необходимо снабдить проверкой флага. 👉@BookJava

🚀 Совет по Spring 🚀 Протоколирование HTTP-запросов с помощью фильтра CommonsRequestLoggingFilter Включите протоколирование запросов с помощью фильтра CommonsRequestLoggingFilter, чтобы получать подробную информацию о входящих запросах. https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/filter/CommonsRequestLoggingFilter.html 👉@BookJava

🔥 Пройди тест по Java и проверь свои знания. Ответишь — пройдешь на продвинутый курс "Java Developer. Professional" от OTUS
🔥 Пройди тест по Java и проверь свои знания. Ответишь — пройдешь на продвинутый курс "Java Developer. Professional" от OTUS по специальной цене + получишь доступ к записям открытых уроков курса курса🎁 . 🌲 А ещё, сейчас действуют новогодние скидки! Возможна оплата в рассрочку! Предложение ограничено. 👉 ПРОЙТИ ТЕСТ: https://vk.cc/cteT1K Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Какой выбрать тип для даты/времени? В пакете java.util расположены старые классы стандартной библиотеки Java: Date (дата+время), Calendar (конвертация и манипуляция), TimeZone (смещение часового пояса). Эти классы обладали рядом известных проблем. Экземпляры были изменяемыми, что делало их потоко-небезопасными. Работа с датами через календарь была неудобной, не было нормальной поддержки часовых поясов и интернационализации. Постепенно стандартом де-факто стала сторонняя библиотека Joda-Time. Её разработчики решили все названные выше проблемы. В Java 8 был добавлен пакет java.time, который взял решения из Joda-Time в стандарт, создатель библиотеки участвовал в разработке. Ключевые классы пакета: • LocalDate, LocalTime и LocalDateTime – локальные для пользователя дата/время. • ZonedDateTime – дата/время в определенной часовой зоне. • Period и Duration – периоды дат и времени соответственно. Отдельно существуют классы Date и Time пакета java.sql. Это представление даты и времени для обмена данными через JDBC. Не стоит пользоваться ими вне уровня доступа к данным, хотя бы потому, что это классы-наследники старого java.util.Date. Таким образом, в проектах на Java 8+ нужно использовать современные java.time.*, для более старых – подключать Joda-Time. 👉@BookJava

Finding CPU Load with JFR. JDK Flight Recorder, в быту JFR Среда наблюдения и мониторинга, встроенная в JDK! Начиная с JDK 11
Finding CPU Load with JFR. JDK Flight Recorder, в быту JFR Среда наблюдения и мониторинга, встроенная в JDK! Начиная с JDK 11, JFR стал open-source и переименован в JDK Flight Recorder. Это делает JFR отличным выбором для отслеживания скрытых проблем, связанных с тем, почему приложение потребляет ресурсы, такие как CPU. В статье — о том, как работать с JFR. https://inside.java/2023/11/27/sip090/ 👉@BookJava

🌲Создайте интерактивную новогоднюю открытку на Java с нуля! 😳 Удивите близких, а заодно прокачайтесь в разработке на беспла
🌲Создайте интерактивную новогоднюю открытку на Java с нуля! 😳 Удивите близких, а заодно прокачайтесь в разработке на бесплатном практическом уроке от OTUS и Александра Фисунова – Senior Kotlin Developer в SSP Software на проекте ВТБ. В результате урока вы: ✔️ Увидите, как пишется код и создаются программы на Java ✔️ Сможете повторить все шаги и делать подобные открытки на любую тематику 📢📢 Занятие пройдёт 20 декабря в 20:00 мск и будет приурочено к старту курса «Специализация Java-разработчик». На нем вы сможете освоить профессию с нуля до уверенного Middle. 👉 Для бесплатного участия и получения записи урока регистрируйтесь прямо сейчас: https://vk.cc/cta36k Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Совет 💡 Установка @Column в updateable=false приводит к тому, что реализация JPA будет игнорировать этот столбец при выполне
Совет 💡 Установка @Column в updateable=false приводит к тому, что реализация JPA будет игнорировать этот столбец при выполнении оператора обновления. При этом не будет выброшено исключение. Это никак не влияет на базу данных. Вы по-прежнему можете обновлять столбец вне Hibernate. 👉@BookJava

Из каких основных сущностей состоит Spring-приложение? Bean – объект бизнес-логики в терминологии Spring Framework. BeanDefinition – описание того, как создавать бин. Объект хранит его тип, метаинформацию, набор параметров для конструктора. BeanFactory – главная точка входа в DI-контейнер. Хранит BeanDefinition-ы, умеет создавать по ним экземпляры бинов, или выдавать существующие, в зависимости от скоупа. BeanPostProcessor – донастраивает только что созданные бины, перед тем как положить их в контейнер. Его методы уже упоминались в публикации про жизненный цикл. Типичное место, чтобы оборачивать бины в прокси. Также с помощью такого пост-процессора внедряются @Autowired-зависимости. Пост-процессоры бинов живут внутри экземпляра BeanFactory. BeanFactoryPostProcessor – тоже пост-обработчик, но для определений бинов (BeanDefinition). Обычно используется для модификации параметров или класса, из которых будут строиться бины. Для создания определений бинов в основном применяются классы и интерфейсы *BeanDefinitionReader. Некоторые из них вызываются прямо из контекста приложения, другие реализуют BeanFactoryPostProcessor. Один такой пост-процессор, например, отвечает за добавление определений бинов по аннотациям @Component и @Configuration. Реализация интерфейса ApplicationContext – основное хранилище конфигурации Spring-приложения (или его части). Контекст неизменяем, но может быть целиком перезагружен. Xml-файл конфигурации на старте приложения превращается в объект *XmlApplicationContext. Для конфигурации на аннотациях создастся AnnotationConfigApplicationContext. Контекст выполняет четыре разных обязанности: 1. DI-контейнер. ApplicationContext функционирует как специальная реализация BeanFactory. Он также производит и хранит бины, но, в отличие от обычных фабрик, контексты в приложении составляют иерархию. Определения бинов из дочерних контекстов перекрывают родительские. 2. Загрузка ресурсов. Под интерфейсом ResourceLoader контекст занимается загрузкой в память приложения файлов, как из classpath, так и из остальной файловой системы. 3. Публикация событий приложения. Контекст распространяет в приложении «события» – наследники ApplicationEvent. Любой бин, которому нужно получать уведомления об этих событиях, просто реализует интерфейс ApplicationListener. Таким образом реализуется паттерн наблюдатель. 4. Интернационализация. По коду, набору аргументов и локали, через интерфейс контекста MessageSource можно получать локализованные текстовые сообщения для пользователей. 👉@BookJava

#вакансия #удалённо #parttime #koltin #преподаватель Время делиться знаниями! OTUS – образовательная платформа. У нас авторские курсы разной степени сложности, вступительное тестирование для студентов и преподаватели-практики из крупнейших компаний. 6 лет мы учимся друг у друга, советуемся, помогаем, делимся опытом и обсуждаем новости как в преподавании, так и в IT. Вакансия: преподаватель на кастомный онлайн курс - "Kotlin backend" Можно без опыта преподавания, мы поможем вам освоить практики преподавания Преподаватель раскрывает тему с помощью теории и примеров из практики. Занятия в zoom в дневное время. Можно выбрать удобную нагрузку и темы занятий. С нами вы сможете ✅ -получать за проведение 1 вебинара - 10.000 рублей + за проверку 1 дз - 500 рублей - структурировать свой опыт и знания; - прокачать софт-скиллы; Бонусы 🎁 - наши курсы со скидкой/бесплатно; - можно приглашать лучших выпускников к себе на работу; - воркшопы и конференции для наших преподавателей. Обсудить подробнее @HR_Nikita

В каких случаях разумно использовать массив, а не ArrayList? Использование обычных массивов вместо ArrayList имеет смысл в следующих ситуациях: — Нужен предсказуемый и строгий контроль размера массива. Массивы имеют фиксированный размер, в отличие от ArrayList. — Требуется максимальная производительность при работе с примитивными типами данных (int, double и т. д.). Доступ к элементам массива быстрее, чем в ArrayList. — Нужно создать структуру данных, которая должна быть неизменяемой. — Требуется тесная интеграция с существующим кодом на основе обычных массивов. Переход на ArrayList может потребовать значительный рефакторинг. — Не нужны динамические функции ArrayList, такие как автоматическое изменение размера, методы вставки/удаления и т. д. — Ограничения на использование дополнительной памяти. Массивы компактнее ArrayList за счет фиксированного размера. 👉@BookJava

@TransactionalEventListener Используйте @TransactionalEventListener для выполнения определенной логики после успешной фиксации транзакции. https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/transaction/event/TransactionalEventListener.html 👉@BookJava

Старт подготовительного курса по Java-разработке. ⏰ Когда: уже 12 декабря. Даем: 62 урока с практикой в браузере, 3 онлайн ве
Старт подготовительного курса по Java-разработке. ⏰ Когда: уже 12 декабря. Даем: 62 урока с практикой в браузере, 3 онлайн вебинара и 1 сессию лайвкодинга с практикующим разработчиком. Получаем: крепкие знания базы языка, умение понимать код и первую программу на Java, написанную вместе с наставником. Всего 990 ₽ и ваше жгучее желание начать. Приходите с любым бэкграундом: нам не важны возраст, пол, образование и текущая профессия. Запишитесь прямо сейчас! Реклама. АНПОО "ХЕКСЛЕТ КОЛЛЕДЖ". ИНН 7839056670.

Команда Поиска и рекламных технологий Яндекса приглашает на митап для senior бэкенд-разработчиков в Екатеринбурге. Поговорим
Команда Поиска и рекламных технологий Яндекса приглашает на митап для senior бэкенд-разработчиков в Екатеринбурге. Поговорим про разработку, поиграем в квиз, понетворкаемся и просто хорошо проведем время. 12 декабря, 18:00. Регистрируйтесь, количество мест в офлайне ограничено!

Немного о гигиене Java кода Во время код-ревью или работы над новым проектом может раздражать многое: стиль, подходы, качеств
Немного о гигиене Java кода Во время код-ревью или работы над новым проектом может раздражать многое: стиль, подходы, качество. Но больше всего расстраивает банальный недостаток гигиены кода. В связи с регулярностью проблемы хочется на неё обратить внимание и напомнить, как гигиену поддерживать. Разумеется, все мы люди, живущие в несовершенном мире. Поэтому последнее, что мне хочется, это журить и так стеснённых обстоятельствами программистов. Тем более не хочется почём зря ругать разработчиков Open Source проектов. Но сейчас я предлагаю побыть перфекционистами и вспомнить все те случаи, когда с подобным кодом приходилось иметь дело вам. https://habr.com/ru/companies/pvs-studio/articles/779300/ 👉@BookJava

Советы по Java 💡 Как инициализировать collections или map в Java? Конечно, вы можете использовать, например, статическую ини
Советы по Java 💡 Как инициализировать collections или map в Java? Конечно, вы можете использовать, например, статическую инициализацию фабрики (`List.of(...)` или `Map.of(...)`). Но вы также можете воспользоваться функцией "инициализации двойной скобкой" 👉@BookJava

📣 Новосибирск, готовы проверить свои знания в сфере IT? Будет интересно как новичкам, так и профессионалам в области информа
📣 Новосибирск, готовы проверить свои знания в сфере IT? Будет интересно как новичкам, так и профессионалам в области информационных технологий. Обещаем много нетворкинга и интересных заданий: 5 раундов по 10 вопросов от простого к сложному. Приходите сами и приглашайте коллег! ☺️ Если вы участвуете командой, регистрацию нужно пройти всем участникам команды. Если команды у вас нет — не страшно, мы найдём её для вас! Максимальное количество участников команды — 10 человек. Формат: очный 📅 13 декабря ⏰ 18:30 📍 Новосибирск, ул. Коммунистическая 14, лофт «Food Factory» Зарегистрироваться ⚡️

Шпаргалка по паттернам проектирования 👉@BookJava
+1
Шпаргалка по паттернам проектирования 👉@BookJava

Распространенные ошибки начинающих Java-разработчиков при работе с Hibernate Hibernate - это мощный фреймворк объектно-реляци
Распространенные ошибки начинающих Java-разработчиков при работе с Hibernate Hibernate - это мощный фреймворк объектно-реляционного отображения (ORM) для Java, который упрощает взаимодействие с базами данных. Это универсальный инструмент, но, как и любая другая технология, он может быть сложным, особенно для начинающих Java-разработчиков. В этой статье мы рассмотрим некоторые распространенные ошибки, которые часто допускают начинающие разработчики при работе с Hibernate, и узнаем, как их избежать. https://dev.to/jackynote/common-mistakes-of-junior-java-developers-when-working-with-hibernate-3dl8 👉@BookJava

👩‍💻 Какие компетенции отличают востребованных Java-разработчиков? ➡️ Узнайте и освойте его на бесплатном практическом уроке
👩‍💻 Какие компетенции отличают востребованных Java-разработчиков? ➡️ Узнайте и освойте его на бесплатном практическом уроке «Разрабатываем appender для Logback». На вебинаре разберём, как можно сделать самодельный appender для Logback, который будет отправлять логи в TCP-сервер логирования. Также эксперт подробно ответит на любые возникающие вопросы. 📢📢 Занятие пройдёт 12 декабря в 20:00 мск и будет приурочено к старту курса «Java Developer. Professional». После урока вы сможете продолжить обучение в рассрочку. 👉 Для бесплатного участия и получения записи зарегистрируйтесь прямо сейчас: https://vk.cc/csXyJj Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru