Перейти к основному содержимому

· 4 мин. чтения

1. Обзор

В этом руководстве мы обсудим разницу между двумя вариантами удаления сущностей из наших баз данных при работе с JPA .

Во- первых, мы начнем с CascadeType.REMOVE , который представляет собой способ удаления дочернего объекта или объектов, когда происходит удаление его родителя . Затем мы рассмотрим атрибут orphanRemoval , который был введен в JPA 2.0. Это дает нам возможность удалять потерянные объекты из базы данных .

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

2. Модель предметной области

· 3 мин. чтения

1. Обзор

Есть много случаев, когда нам нужно ограничить использование ресурсов на хост-компьютере докера.

В этом руководстве мы узнаем, как установить лимит памяти и ЦП для контейнеров Docker.

2. Установка лимита ресурсов с запуском докера

Мы можем установить лимиты ресурсов напрямую, используя команду запуска docker . Это простое решение. Однако ограничение будет применяться только к одному конкретному исполнению образа.

· 4 мин. чтения

1. Обзор

В предыдущем посте мы узнали о спецификации Cross-Origin Resource Sharing (CORS) и о том, как ее использовать в Spring.

В этом кратком руководстве мы настроим аналогичную конфигурацию CORS, используя среду Spring 5 WebFlux .

Прежде всего, мы увидим, как мы можем включить этот механизм в API на основе аннотаций.

Затем мы разберем, как включить его на весь проект в виде глобальной конфигурации или с помощью специального веб- фильтра .

2. Включение CORS для аннотированных элементов

· 3 мин. чтения

1. Весна и Ява

>> Метапространство в OpenJDK 16 [ lkorinth.github.io ]

Более эффективное метапространство в JDK 16 : уменьшенная фрагментация и освобождение неиспользуемой памяти.

>> JEP предложил ориентироваться на JDK 16: предупреждения для классов, основанных на значениях [ openjdk.java.net ]

На шаг ближе к типам значений: рассматривайте примитивные оболочки как типы значений и отказывайтесь от их конструкторов!

>> Cloud Native Buildpacks с Paketo.io и многоуровневыми JAR-файлами для Spring Boot [ blog.codecentric.de ]

· 9 мин. чтения

1. Обзор

В этом руководстве показано, как настраивать и использовать свойства в Spring с помощью конфигурации Java и @PropertySource.

Мы также увидим, как свойства работают в Spring Boot.

2. Зарегистрируйте файл свойств через аннотации

· 4 мин. чтения

1. Обзор

Общим требованием в любом веб-приложении являются настраиваемые страницы ошибок.

Например, предположим, что вы используете ванильное приложение Spring MVC поверх Tomcat. Пользователь вводит неверный URL-адрес в своем браузере и показывает не очень удобную бело-голубую трассировку стека — не идеальный вариант.

В этом руководстве мы настроим настраиваемые страницы ошибок для нескольких кодов ошибок HTTP.

Рабочее предположение состоит в том, что читателю достаточно удобно работать с Spring MVC; если нет, то это отличный способ начать .

Эта статья посвящена Spring MVC. В нашей статье « Настройка страницы ошибок Whitelabel » описывается, как создать пользовательскую страницу ошибок в Spring Boot.

· 4 мин. чтения

1. Обзор

В этой статье мы обсудим, как загрузить Hibernate 5 с помощью Spring , используя конфигурацию Java и XML.

Эта статья посвящена Spring MVC. В нашей статье Spring Boot with Hibernate описывается, как использовать Hibernate в Spring Boot.

2. Весенняя интеграция

Начальная загрузка SessionFactory с помощью собственного API Hibernate немного сложна и потребует от нас немало строк кода (посмотрите официальную документацию , если вам действительно нужно это сделать).

· 5 мин. чтения

1. Обзор

В этой статье основное внимание будет уделено реализации возможности обнаружения в службе Spring REST и удовлетворению ограничения HATEOAS.

Эта статья посвящена Spring MVC. В нашей статье Введение в Spring HATEOAS описывается, как использовать HATEOAS в Spring Boot.

2. Разделение возможности обнаружения с помощью событий

Обнаруживаемость как отдельный аспект или проблема веб-уровня должна быть отделена от контроллера , обрабатывающего HTTP-запрос. Для этого Контроллер будет запускать события для всех действий, требующих дополнительных манипуляций с ответом.

· 8 мин. чтения

1. Обзор

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

В этом руководстве мы рассмотрим наиболее распространенные функции аккуратной внешней библиотеки под названием System Rules , которая предоставляет набор правил JUnit для тестирования кода, использующего класс System .

2. Зависимости Maven

Во-первых, давайте добавим зависимость System Rules к нашему pom.xml :

· 3 мин. чтения

1. Весна и Ява

>> Анонс GraalVM 20.3 [ medium.com ]

Улучшенная осведомленность о контейнерах , G1 GC для нативных образов и многие другие улучшения производительности — все это в новой версии GraalVM!

>> Ванильная Java: использование Java SE в качестве фреймворка [ renato.athaydes.com ]

Минимальная серверная структура поверх Java SE : горячая перезагрузка, процессоры аннотаций и генерация кода, собственные изображения и интеграция с JUnit.

>> Что мы знаем о Java 16 и 17 на данный момент [ infoq.com ]