Вступ до плагіна Animal Sniffer Maven

Вступ до плагіна Animal Sniffer Maven

1. Вступ Працюючи в Java, бувають випадки, коли нам потрібно одночасно використовувати кілька мовних версій. Загальноприйнятим є той факт, що наша програма Java повинна бути сумісною під час компіляції з однією версією Java (скажімо - Java 6), але нам потрібно використовувати іншу версію (скажімо - Java 8) у наших засобах розробки та, можливо, іншу версію для запуску програми . У цій короткій статті ми продемонструємо, як легко додати заходи захисту від несумісності на основі версії Java та як плагін Animal Sniffer можна використовувати для позначення цих проблем під час побудови, перевіряючи

Детальніше

   Перетворення широти та довготи у двовимірні точки на Java

Перетворення широти та довготи у двовимірні точки на Java

1. Огляд Застосовуючи програми, що використовують карти, ми, як правило, стикаємося з проблемою перетворення координат. Найчастіше нам потрібно перетворити широту та довготу в 2D-точку для відображення . На щастя, для вирішення цієї проблеми ми можемо використовувати формули проекції Меркатора. У цьому посібнику ми розглянемо проекцію Меркатора та дізнаємось, як реа

Детальніше

   Використання Mapmaker від Guava

Використання Mapmaker від Guava

1. Вступ MapMaker - це клас будівельника в Гуаві, який полегшує створення потокобезпечних карт. Java вже підтримує WeakHashMap для використання слабких посилань для ключів. Але не існує готового рішення використовувати те саме для значень. На щастя, MapMaker пропонує прості методи побудови для використання WeakReference як для ключів, так і для значень . У цьому посібнику давайте подивимося, як MapMaker спрощує

Детальніше

   Складові сховища Spring Data

Складові сховища Spring Data

1. Вступ При моделюванні реальної системи чи процесу, сховища стилів дизайну на основі домену (DDD) є хорошим варіантом. Саме для цієї мети ми можемо використовувати Spring Data JPA як наш рівень абстракції доступу до даних. Якщо ви новачок у цій концепції, ознайомтесь із цим вступним посібником, який допоможе вам набрати швидкість. У цьому навчальному посібнику ми зосередимося на конце

Детальніше

   Нульові безпечні потоки Java з колекцій

Нульові безпечні потоки Java з колекцій

1. Огляд У цьому підручнику ми побачимо, як створити безпечні потоки з колекцій Java. Почнемо з того, що для повного розуміння цього матеріалу потрібно ознайомитись із посиланнями на методи Java 8, лямбда-виразами, необов’язковим та Stream API. Якщо ви не знайомі з жодною з цих тем, спочатку ознайомтесь із попередніми статтями: Нові функції в Java 8, Посібник для Java 8 Необов’язково та Вступ до потоків Java 8. 2. Залежні

Детальніше

   Весняні переговори про вміст MVC

Весняні переговори про вміст MVC

1. Огляд У цій статті описано, як реалізувати узгодження вмісту у весняному проекті MVC. Як правило, існує три варіанти визначення типу носія запиту: Використання суфіксів URL-адрес (розширень) у запиті (наприклад, .xml / .json ) Використання параметра URL у запиті (наприклад ,? Format = json ) Використання заголовка Accept у запиті За замовчуванням це порядок, коли менеджер п

Детальніше

   Позначте прапори з весною

Позначте прапори з весною

1. Огляд У цій статті ми коротко визначимо прапори функцій і запропонуємо вибагливий та прагматичний підхід до їх реалізації у програмах Spring Boot. Потім ми розглянемо більш складні ітерації, використовуючи різні функції Spring Boot. Ми обговоримо різні сценарії, які можуть вимагати позначення функцій, і поговоримо про можливі рішення. Ми зробимо це за допомогою прикладу програми Bitcoin Miner. 2. Функціо

Детальніше

   ПОДІБНІ запити у весняних сховищах JPA

ПОДІБНІ запити у весняних сховищах JPA

1. Вступ У цьому короткому посібнику ми розглянемо різні способи створення LIKE запитів у Spring JPA Repositories. Для початку ми розглянемо різні ключові слова, які ми можемо використовувати під час створення методів запитів. Потім ми розглянемо анотацію @Query з іменованими та впорядкованими параметрами. 2. Налаштування Для нашого прикладу ми будемо запитувати таблицю фільмів . Дава

Детальніше

   Вступ до Spinnaker

Вступ до Spinnaker

1. Огляд У цьому підручнику ми розглянемо Spinnaker, платформу безперервної доставки з відкритим кодом, створену Netflix. Ми можемо використовувати його для розгортання наших програм у кількох хмарних постачальниках. Система побудована на базі Spring Boot і підтримує багатьох хмарних провайдерів. Ми побачимо, як це працює і для яких випадків ми можемо його використовувати. 2. П

Детальніше

   Мікросервіси з Oracle Helidon

Мікросервіси з Oracle Helidon

1. Огляд Helidon - це нова платформа мікросервісів Java, яка нещодавно була відкрита для Oracle. Він використовувався всередині проектів Oracle під назвою J4C (Java для хмари). У цьому підручнику ми розглянемо основні концепції фреймворку, а потім перейдемо до створення та запуску мікросервісу на основі Helidon. 2. Модель програмування На даний момент фреймворк підтримує дві моделі програмування для написання мікропослуг: Helidon SE та Helidon MP. Хоча Helidon SE розроблений як мікрокадр, що підтримує модель реактивного програ

Детальніше

   Ізоморфне застосування з React та Nashorn

Ізоморфне застосування з React та Nashorn

1. Огляд У цьому підручнику ми розберемося, що саме є ізоморфним додатком. Ми також обговоримо Nashorn, механізм JavaScript, що входить до складу Java. Крім того, ми дослідимо, як ми можемо використовувати Nashorn разом із інтерфейсною бібліотекою, як React, для створення ізоморфного додатка. 2. Трохи історії Традиційно клієнтські та серверні програми писалися досить серйозно на стороні сервера. Подумайте про PHP як про механізм сценаріїв, що генерує переважно статичний HTML та веб-браузери, я

Детальніше

   Запитувати сутності за датами та часом за допомогою Spring Data JPA

Запитувати сутності за датами та часом за допомогою Spring Data JPA

1. Вступ У цьому короткому посібнику ми побачимо, як запитувати сутності за датами за допомогою Spring Data JPA. Спочатку ми оновимо пам’ять про те, як зіставити дати та час за допомогою JPA. Потім ми створимо сутність із полями дати та часу, а також сховище Spring Data для запиту цих сутностей. 2. Складання дат та часу за доп

Детальніше

   Змінення атрибута XML у Java

Змінення атрибута XML у Java

1. Вступ Однією з найпоширеніших дій, коли ми працюємо з XML, є робота з його атрибутами. У цьому підручнику ми розглянемо, як змінити атрибут XML за допомогою Java. 2. Залежності Для того, щоб запускати наші тести, нам потрібно додати залежності JUnit та xmlunit-assertj до нашого проекту Maven: org.junit.jupiter junit-jupiter 5.5.0 test org.xmlunit xmlunit-assertj 2.6.3 test 3. Використання JAXP Почнемо з документа XML: [email protected] [email protected] Для його обробки ми будем

Детальніше

   Весняні параметри запиту за допомогою Thymeleaf

Весняні параметри запиту за допомогою Thymeleaf

1. Вступ У нашій статті Вступ до використання Thymeleaf навесні ми побачили, як прив’язати введені користувачем дані до об’єктів. Ми використовували th: object і th: field у шаблоні Thymeleaf та @ModelAttribute в контролері для прив'язки даних до об'єкта Java. У цій статті ми розглянемо, як використовувати анотацію Spring @RequestParam у поєднанні з Thymeleaf. 2. Параметри у формах Спершу створимо простий контролер, я

Детальніше

   Як отримати всі квасолі, керовані весною?

Як отримати всі квасолі, керовані весною?

1. Огляд У цій статті ми розглянемо різні техніки відображення всіх керованих весною бобів у контейнері. 2. Контейнер IoC Біб - це основа програми, якою керує Весна; всі боби знаходяться в контейнері МОК, який відповідає за управління їх життєвим циклом. Ми можемо отримати список усіх зерен у цьому контейнері двома способами: Використання інтерфейсу ListableBeanFactory Використання пружинного приводу завантажувача 3. Використання інтерфейсу Lis

Детальніше

   Просте впровадження тегів за допомогою Elasticsearch

Просте впровадження тегів за допомогою Elasticsearch

Стійкість зверху Я щойно оголосив про новий курс Learn Spring , орієнтований на основи Spring 5 та Spring Boot 2: >> ПЕРЕВІРИТИ КУРС Ця стаття є частиною серії: • Проста реалізація тегів за допомогою Elasticsearch (поточна стаття) • Розширена реалізація тегів за допомогою JPA • Проста реалізація тегів за допомогою MongoDB 1. Огляд Позначення - це загальний шаблон дизайну, який дозволяє класифікувати та фільтрувати елементи в нашій моделі даних. У цій статті ми реалізуємо тегування за допомогою Spring та Elasticsearch. Ми будемо викорис

Детальніше

   Весняні змінні шляху із чебрецем

Весняні змінні шляху із чебрецем

1. Вступ У цьому короткому навчальному посібнику ми дізнаємось, як використовувати Thymeleaf для створення URL-адрес за допомогою змінних шляху Spring. Ми використовуємо змінні шляху, коли хочемо передати значення як частину URL-адреси. У контролері Spring ми отримуємо доступ до цих значень за допомогою анотації @PathVariable . 2. Використання змінних шляху Спочатку давайте налаштуємо наш приклад, створивши

Детальніше

   Програмно перезапустити програму Spring Boot

Програмно перезапустити програму Spring Boot

1. Огляд У цьому посібнику ми покажемо, як програмно перезапустити програму Spring Boot . Перезапуск нашої програми може бути дуже зручним у деяких випадках: Перезавантаження конфігураційних файлів при зміні якогось параметра Зміна поточно активного профілю під час виконання Повторна ініціалізація контексту програми з будь-якої причини Хоча ця стаття висвітлює функціональність перезапуску програми Spring Boot, зауважте, що ми також маємо чудовий підручник щодо вимкнення програм Spring Boot. Тепер давайте дослідимо різні способи, як ми можемо реалізувати перезапуск програми Spring Boot

Детальніше

   Токени супер типу в Java Generics

Токени супер типу в Java Generics

1. Огляд У цьому підручнику ми збираємось ознайомитись із маркерами супертипу та побачити, як вони можуть допомогти нам зберегти загальну інформацію про тип під час виконання. 2. Стирання Іноді нам потрібно донести до методу інформацію про конкретний тип . Наприклад, тут ми очікуємо від Джексона перетворити байтовий м

Детальніше

   Файли Java відкриті параметри

Файли Java відкриті параметри

1. Огляд У цьому підручнику ми зосередимося на стандартних відкритих параметрах, доступних для файлів на Java. Ми дослідимо перелік StandardOpenOption, що реалізує інтерфейс OpenOption і який визначає ці стандартні відкриті параметри. 2. Параметр OpenOption У Java ми можемо працювати з файлами за допомогою API NIO2, який містить кілька корисних методів. Деякі з цих методів використовують необов’

Детальніше

   HATEOAS за весняну послугу REST

HATEOAS за весняну послугу REST

REST Top Я щойно оголосив про новий курс Learn Spring , орієнтований на основи Spring 5 та Spring Boot 2: >> ПЕРЕВІРИТИ КУРС 1. Огляд Ця стаття буде зосереджена на застосуванні можливості виявлення в Spring REST Service та на задоволенні обмежень HATEOAS. Ця стаття зосереджена на Spring MVC. У нашій статті Вступ до Spring HATEOAS описується, як використовувати HATEOAS у Spring Boot. 2. Роз’єднання

Детальніше