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

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

1. Обзор

В этом руководстве мы узнаем, как обнаруживать повторяющиеся зависимости в pom.xml с помощью команд Maven. Мы также увидим, как завершить сборку при наличии повторяющихся зависимостей с помощью подключаемого модуля Maven Enforcer.

2. Зачем обнаруживать повторяющиеся зависимости?

Риск дублирования зависимостей в pom.xml заключается в том, что последняя версия целевой библиотеки может не применяться к пути сборки нашего проекта. Например, рассмотрим следующий файл pom.xml :

<project>
[...]
<dependencies>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.11</version>
</dependency>
</dependencies>
[...]
</project>

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

1. Введение

В этом руководстве мы поговорим об исключении EntityNotFoundException из пакета javax.persistence . Мы рассмотрим случаи, когда может возникнуть это исключение, а затем напишем тесты для этих случаев.

2. Когда возникает исключение EntityNotFoundException ?

Документация Oracle для этого исключения определяет три ситуации, в которых поставщик сохраняемости может генерировать исключение EntityNotFoundException :

  • EntityManager.getReference для несуществующей сущности
  • EntityManager.refresh для объекта, которого нет в базе данных
  • EntityManager.lock с пессимистичной блокировкой сущности, не существующей в базе данных

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

1. Обзор

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

Для краткого ознакомления с Thymeleaf обратитесь к этой статье .

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

Начнем с зависимостей Maven, которые необходимы для использования Thymeleaf вместе со Spring:

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

1. Обзор

Thymeleafуниверсальный шаблонизатор Java для обработки документов XML, XHTML и HTML5 .

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

Для получения дополнительной информации о Thymeleaf ознакомьтесь с нашей вводной статьей здесь .

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

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

1. Обзор

Apache Flink — это платформа обработки больших данных, которая позволяет программистам обрабатывать огромные объемы данных очень эффективным и масштабируемым образом.

В этой статье мы познакомим вас с некоторыми основными концепциями API и стандартными преобразованиями данных, доступными в Apache Flink Java API . Плавный стиль этого API упрощает работу с центральной конструкцией Flink — распределенной коллекцией.

Во-первых, мы рассмотрим преобразования Flink DataSet API и используем их для реализации программы подсчета слов. Затем мы кратко рассмотрим API Flink DataStream , который позволяет обрабатывать потоки событий в режиме реального времени.

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

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

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

Вот так…

1. Весна и Ява

>> Лучший способ регистрации операторов JDBC [ vladmihalcea.com ]

Несколько интересных приемов для настройки ведения журнала в системе Hibernate или непосредственно вокруг источника данных .

Этот относится к категории – «не знал, что ты так умеешь».

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

1. Весна и Ява

>> Уязвимость, затрагивающая несколько версий Log4j, делает возможным использование RCE Exploit [ infoq.com ]

Подробная статья о том, как работает уязвимость , и какие есть исправления для нее. Обязательно к прочтению на этой неделе!

>> Уязвимость Log4J2 и загрузка Spring [ spring.io ]

И, если вы переключили инструмент ведения журнала по умолчанию в Boot на использование Log4j, обязательно прочитайте эту статью, пройдя подробные инструкции по исправлению Maven/Gradle здесь.

>> Родной образ с Quarkus [ blog.frankel.ch ]

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

1. Обзор

В этом руководстве показано, как использовать HTTPS для защиты страницы входа в приложение с помощью функции безопасности канала Spring.

Использование HTTPS для аутентификации имеет решающее значение для защиты целостности конфиденциальных данных при транспортировке.

Статья основана на учебнике Spring Security Login , добавляя дополнительный уровень безопасности. Мы выделяем шаги, необходимые для защиты данных аутентификации, обслуживая страницу входа через закодированный канал HTTPS.

2. Первоначальная настройка без защиты канала

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

1. Обзор

В этой статье мы покажем, как создать пользовательскую службу UserDetailsService с поддержкой базы данных для аутентификации с помощью Spring Security.

2. Служба сведений о пользователе

Интерфейс UserDetailsService используется для получения данных, связанных с пользователем. Он имеет один метод с именем loadUserByUsername() , который можно переопределить, чтобы настроить процесс поиска пользователя.

Он используется DaoAuthenticationProvider для загрузки сведений о пользователе во время аутентификации.

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

1. Введение

В этом руководстве мы сосредоточимся на Spring Security Expressions и, конечно же, на практических примерах с этими выражениями.

Перед рассмотрением более сложных реализаций (таких как ACL) важно иметь четкое представление о выражениях безопасности, поскольку они могут быть достаточно гибкими и мощными при правильном использовании.

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

Чтобы использовать Spring Security, вам необходимо включить следующий раздел в файл pom.xml :