Библиотека джависта | Java, Spring, Maven, Hibernate
24.8K subscribers
1.88K photos
38 videos
42 files
2.67K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://yangx.top/proglibrary/9197

Для обратной связи: @proglibrary_feeedback_bot

По рекламе: @proglib_adv

РКН: https://gosuslugi.ru/snet/67a5bbda1b17b35b6c1a55c4
加入频道
Друзья, Spring Boot 3.0 стал доступен в репозитории Maven! 😃

Spring Boot 3.0 это:
✔️ 12 месяцев работы 151 разработчика
✔️ 5700 коммитов
✔️ Работа в Java 17+
✔️ Работа в пространстве имен Jakarta EE9+ и Jakarta EE 10 API
и многое другое.

Подробности в предложенном релизе.

Читать статью
Рекомендации по миграции на Spring 6

Буквально на днях вышла новая версия Spring Framework, особенностью которой является поддержка Java 17, Hibernate 6.1/Jakarta Persistence 3.1 и др. 😃

Статья от Vlad Mihalcea представляет собой рекомендации по миграции с более ранних версий фреймворка к новой версии.

Хорошей практики!

Читать статью
Какие области видимости переменных существуют в JSP?

Область видимости объектов определяется тем контекстом, в который помещается данный объект. В зависимости от той или иной области действия так же определяется время существования объекта.

В JSP предусмотрены следующие области действия переменных (объектов):
request область действия запроса - объект будет доступен на текущей JSP странице, странице пересылки (при использовании jsp:forward) или на включаемой странице (при использовании jsp:include);
session область действия сессии - объект будет помещен в сеанс пользователя, будет доступен на всех JSP страницах и будет существовать пока существует сессия пользователя, или он не будет из нее принудительно удален.
application область действия приложения - объект будет доступен для всех пользователей на всех JSP страницах и будет существовать на протяжении всей работы приложения или пока не будет удален принудительно и контекста приложения.
page область действия страницы - объект будет доступен только на той странице, где он определен. На включаемых (jsp:include) и переадресуемых (jsp:forward) страницах данный объект уже не будет доступен.

Таким образом, чтобы объект был доступен всем JSP страницам, необходимо указать область видимости application или session, в зависимости от того требуется ли доступ к объекту всем пользователям или только текущему.

Для указания требуемой области действия при определении объекта на JSP странице используется атрибут scope тега jsp:useBean:

<id="myBean" class="ru.javacore.MyBean" scope="session"/>

Если не указывать атрибут scope, то по умолчанию задается область видимости страницы page.
📜 15 лучших практик SQL после 20 лет программирования

Даже если ваш SQL-код работает правильно, его все равно можно улучшить, в частности в том, что касается производительности и читаемости. В статье перечислены лучшие практики составления SQL-запросов, которым вы должны следовать, чтобы сделать ваш код более легким для чтения и понимания.

🔗 Основной сайт
🔗 Зеркало
Создаем умные типы данных при помощи records и enums

Друзья, предложенную сегодня статью написал Брюс Эккель, автор книги "Философия Java".

Основываясь на функциональном подходе конструирования типов Java, используя "записи" (records) и перечисляемые типы (enums), Брюс научит вас получать объекты с корректными значениями. 🤔

Приятного чтения!

Читать статью
#вопросы_с_собеседований
Каким образом из вложенного класса получить доступ к полю внешнего класса?

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

Простой внутренний класс, может обратиться к любому полю внешнего класса напрямую. В случае, если у вложенного класса уже существует поле с таким же литералом, то обращаться к такому полю следует через ссылку на его экземпляр. Например: Outer.this.field.
🧵 Введение в многопоточность в Java. Часть 2. Жизненный цикл потоков, Thread.join() и потоки-демоны

В этой части узнаем, какие состояния проходят потоки в своем жизненном цикле, что такое ожидание потоков и что такое потоки-демоны.

🔗 Основной сайт
🔗 Зеркало
Сборка мусора в неисправных JVM, проактивный подход

Команда Netflix Cloud Data Engineering работает с различными приложениями для JVM, включая такие популярные хранилища данных, как Cassandra и Elasticsearch. Хотя большинство наших кластеров стабильно работают, обходясь выделенной им памятью, иногда «запрос смерти» или ошибка в самом хранилище данных приводят к перерасходу памяти, что может спровоцировать лишние циклы сборки мусора или даже привести к исчерпанию памяти в JVM.

https://habr.com/ru/company/timeweb/blog/700224/
Создаем умные типы данных при помощи records и enums

Друзья, предложенную сегодня статью написал Брюс Эккель, автор книги "Философия Java".

Основываясь на функциональном подходе конструирования типов Java, используя "записи" (records) и перечисляемые типы (enums), Брюс научит вас получать объекты с корректными значениями.
🤔

Приятного чтения!

https://blogs.oracle.com/javamagazine/post/java-smarter-types-records-enums
В следующем году состоится релиз Java 20, но мы уже сегодня можем говорить о том, что нового будет в новой версии.

В предложенном сегодня видео рассмотрены:
✔️ Последовательные коллекции
✔️ Фабричные методы для коллекций
✔️ Сопоставление с образцом для оператора Switch
✔️ Паттерны для записей
✔️ Примитивные классы
и др.

Приятного просмотра!
Spring: новости за прошедшую неделю

Вашему вниманию предлагается информационная подборка материалов "Spring: новости за прошедшую неделю" от Джоша Лонга (Josh Long).

Приятного чтения! 😃

Читать статью
🐕🖥 16 универсальных идей для пет-проектов вне зависимости от языка

Хотите создать что-нибудь эдакое, но вам не хватает фантазии и вдохновения? Держите 16 идей для разработки собственного проекта от «Библиотеки программиста».

🔗 Основной сайт
🔗 Зеркало