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

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

1. Обзор

В этой статье мы узнаем, как использовать аннотации @PreFilter и @PostFilter для защиты операций в приложении Spring.

При использовании вместе с аутентифицированной основной информацией @PreFilter и @PostFilter позволяют нам определять подробные правила безопасности с использованием Spring Expression Language.

2. Представляем @PreFilter и @PostFilter

Проще говоря, аннотации @PreFilter и @PostFilter используются для фильтрации списков объектов на основе определяемых нами пользовательских правил безопасности.

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

1. Введение

В предыдущей статье мы показали, как добавить WebSockets в проект Spring MVC.

Здесь мы опишем, как добавить безопасность к Spring WebSockets в Spring MVC . Прежде чем продолжить, убедитесь, что у вас уже есть базовое покрытие безопасности Spring MVC — если нет, ознакомьтесь с этой статьей .

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

Есть две основные группы зависимостей Maven , которые нам нужны для нашей реализации WebSocket.

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

1. Введение

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

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

2. Добавление ограничений к компоненту

В нашем примере мы будем использовать простой контроллер Spring, который управляет базой данных фильмов. Мы сосредоточимся на методе, который принимает список фильмов и добавляет их в базу данных после проверки списка.

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

1. Введение

Следуя Руководству по модульности Java 9 , в этой статье мы собираемся изучить API java.lang.Module , который был представлен вместе с системой модулей платформы Java.

Этот API предоставляет способ программного доступа к модулю, получения конкретной информации из модуля и, как правило, работы с ним и его дескриптором модуля . ``

2. Чтение информации о модуле

Класс Module представляет как именованные, так и неименованные модули. Именованные модули имеют имя и конструируются виртуальной машиной Java при создании уровня модуля, используя граф модулей в качестве определения.

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

1. Обзор

В этом руководстве мы кратко обсудим аннотацию @SpringBootConfiguration . Мы также рассмотрим его использование в приложении Spring Boot.

2. Конфигурация приложения Spring Boot

@SpringBootConfiguration — это аннотация уровня класса , которая является частью среды Spring Boot. Это указывает на то, что класс предоставляет конфигурацию приложения .

Spring Boot предпочитает конфигурацию на основе Java. В результате аннотация @SpringBootConfiguration является основным источником конфигурации в приложениях. Как правило, класс, определяющий метод main() , является хорошим кандидатом для этой аннотации.

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

1. Обзор

Мы видим перечисления почти в каждом приложении. К ним относятся коды состояния заказа, такие как ЧЕРНОВИК и ОБРАБОТКА, а также коды веб-ошибок, такие как 400, 404, 500, 501 и т. д. Всякий раз, когда мы видим пронумерованные данные в домене, мы будем видеть Enum для них в нашем приложении. Мы можем использовать данные во входящем запросе и найти это перечисление. Например, мы можем сопоставить веб-ошибку 400 с BAD_REQUEST .

Таким образом, нам нужна логика для поиска перечисления по критериям. Это может быть его имя или значение. В качестве альтернативы, это может быть даже произвольный целочисленный код.

В этом уроке мы узнаем, как искать перечисление по критериям. Кроме того, мы также рассмотрим различные способы возврата найденного перечисления.

2. Поиск Enum по имени

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

1. Введение

Spring MVC — это традиционное приложение, созданное с использованием шаблона Front Controller. DispatcherServlet , выступающий в роли переднего контроллера, отвечает за маршрутизацию и обработку запросов.

Как и в случае любого веб-приложения или веб-сайта, Spring MVC возвращает код ответа HTTP 404, когда запрошенный ресурс не может быть найден. В этом руководстве мы рассмотрим распространенные причины ошибок 404 в Spring MVC .

2. Возможные причины ответа 404

2.1. Неверный URI

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

1. Обзор

В первой статье этой серии мы рассказали об использовании библиотеки тегов формы и о том, как связать данные с контроллером.

В этой статье мы рассмотрим различные теги, которые Spring MVC предоставляет для помощи в создании и проверке форм .

2. Входной тег

Начнем с тега input . Этот тег отображает тег ввода HTML , используя связанное значение и type='text' по умолчанию:

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

1. Введение

В этом руководстве мы рассмотрим, как проверять параметры HTTP-запроса и переменные пути в Spring MVC.

В частности, мы проверим параметры String и Number с помощью аннотаций JSR 303 .

Чтобы изучить валидацию других типов, обратитесь к нашим руководствам по валидации Java Bean и ограничениям методов или узнайте, как создать свой собственный валидатор .

2. Конфигурация

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

1. Обзор

В этом руководстве мы более подробно рассмотрим ошибку Java «неявный суперконструктор не определен» . Во-первых, мы создадим пример того, как его производить. Далее мы объясним основную причину исключения, а позже посмотрим, как это исправить.

2. Практический пример

Теперь давайте посмотрим на пример, который генерирует ошибку компиляции «Неявный суперконструктор X() не определен. Должен явно вызывать другой конструктор».

Здесь X представляет родительский класс, который расширяется любым подклассом, который видит эту ошибку.