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

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

1. Обзор

В этом руководстве мы продолжим изучение потока кода авторизации OAuth2, который мы начали собирать в нашей предыдущей статье , и сосредоточимся на том, как обрабатывать токен обновления в приложении Angular. Мы также будем использовать прокси-сервер Zuul.

Мы будем использовать стек OAuth в Spring Security 5. Если вы хотите использовать устаревший стек Spring Security OAuth, ознакомьтесь с этой предыдущей статьей: OAuth2 для Spring REST API — обработка токена обновления в AngularJS (устаревший стек OAuth)

2. Срок действия токена доступа

Во-первых, помните, что клиент получал токен доступа, используя тип предоставления кода авторизации, в два этапа. На первом шаге получаем Код авторизации . И на втором этапе мы фактически получаем Access Token .

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

1. Обзор

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

Примечание . В этой статье используется устаревший проект Spring OAuth . Для версии этой статьи, использующей новый стек Spring Security 5, ознакомьтесь с нашей статьей OAuth2 для Spring REST API — обработка токена обновления в Angular .

2. Срок действия токена доступа

Во-первых, помните, что клиент получал токен доступа, когда пользователь входил в приложение:

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

1. Обзор

В этом руководстве мы увидим, как использовать библиотеку Java Native Access (сокращенно JNA) для доступа к собственным библиотекам без написания кода JNI (Java Native Interface) .

2. Почему ЮНА?

В течение многих лет Java и другие языки на основе JVM в значительной степени соответствовали своему девизу «написал один раз, работает везде». Однако иногда нам нужно использовать нативный код для реализации некоторых функций :

  • Повторное использование устаревшего кода, написанного на C/C++ или любом другом языке, позволяющем создавать собственный код.
  • Доступ к специфичным для системы функциям, недоступным в стандартной среде выполнения Java
  • Оптимизация скорости и/или использования памяти для определенных разделов данного приложения.

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

1. Введение

По мере того, как все больше организаций переходят на контейнеры и виртуальные серверы, Docker становится все более важной частью рабочих процессов разработки программного обеспечения. С этой целью одной из замечательных новых функций в Spring Boot 2.3 является возможность легко создавать образ Docker для приложений Spring Boot.

В этом руководстве мы рассмотрим, как создавать образы Docker для приложения Spring Boot.

2. Традиционные сборки Docker

Традиционный способ создания образов Docker с помощью Spring Boot — использовать Dockerfile. Ниже приведен простой пример:

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

В самом начале 2014 года я решил начать лучше документировать свои читательские привычки и делиться ими со всеми вами .

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

Надеюсь, они вам понравятся, поскольку мы продвигаемся во второй половине 2014 года.

Вот так…

1. Ява

>> Первая партия JEP, предложенная для JDK 9

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

1. Обзор

В этом руководстве мы рассмотрим интересную функцию CDI (внедрение контекста и зависимостей), называемую переносимым расширением CDI.

Сначала мы начнем с понимания того, как это работает, а затем посмотрим, как написать расширение. Мы пройдем шаги по внедрению модуля интеграции CDI для Flyway, чтобы мы могли запустить миграцию базы данных при запуске контейнера CDI.

Этот учебник предполагает базовое понимание CDI. Взгляните на эту статью для введения в CDI.

2. Что такое портативное расширение CDI?

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

1. Весна и Ява

>> Пересылка заголовков HTTP в микросервисах [ frankel.ch ]

>> Отслеживание процесса интеграции Spring с помощью Spring Cloud Sleuth [ java-allandsundry.com ]

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

Вот две интересные статьи об одном из этих инструментов — Spring Cloud Sleuth — и об отслеживании HTTP-запроса в нескольких сервисах.

>> Юнит 5 Государство Союза [ sitepoint.com ]

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

Вот так…

1. Весна и Ява

>> Отчет о тенденциях Java InfoQ — июль 2019 г. [ infoq.com ]

Обзор текущих тенденций внедрения технологий в экосистеме Java по данным InfoQ.

>> Развитие Java с --enable-preview aka Preview Features [ blog.codefx.org ]

Руководство для начинающих по включению экспериментальных функций в сборках с ранним доступом .

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

1. Весна и Ява

>> Создание эффективных образов Docker с помощью Spring Boot 2.3 [ spring.io ]

Больше никаких файлов Docker: использование многоуровневых JAR-файлов и пакетов сборки для создания эффективных образов Docker для приложений Spring Boot.

>> Тестирование приложений Spring Boot с помощью Kotlin и Testcontainers [ rieckpil.de ]

Эффективная работа с Kotlin и Testcontainers: преодоление рекурсивного определения универсального типа и, конечно же, новая аннотация @DynamicPropertySource .

>> Облегченные альтернативы Spring JPA/Hibernate [ 4comprehension.com ]

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

1. Обзор

В этом кратком руководстве мы узнаем, как создать новый файл в Java — сначала используя классы Files и Path из NIO, затем классы Java File и FileOutputStream , Google Guava и, наконец, библиотеку Apache Commons IO .

Эта статья является частью серии «Java — Back to Basic» здесь, на ForEach.

2. Настройка

В примерах мы определим константу для имени файла: