Научитесь этому на бесплатном открытом уроке с использованием Resilience4j!
В мире высоких нагрузок и распределенных систем стабильность — это ключ к успеху.
🗓 На уроке 19 декабря в 20:00 мск мы разберем фреймворк Resilience4j и покажем, как повысить отказоустойчивость ваших приложений.
Спикер Сергей Петрелевич — опытный разработчик на Java и Kotlin.
🔗 Регистрируйтесь на вебинар: https://vk.cc/cFWsGV
Все участники вебинара получат скидку на курс «Java Developer. Professional».
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Java. Быстрая сортировка. Реализация алгоритма QuickSort.
Как работает быстрая сортировка, разбор и реализация алгоритма.
источник
👉@BookJava
Как работает быстрая сортировка, разбор и реализация алгоритма.
источник
👉@BookJava
👍5
Какие возможности Spring предоставляет для коммуникации с базой данных?
Spring предоставляет мощный набор инструментов для работы с базами данных. Ниже перечислены некоторые из них:
🔹Spring JDBC: Абстракции над JDBC (Java Database Connectivity), что упрощает взаимодействие с базой данных через простые API.
🔹Spring Data JPA: Spring абстракция над JPA (Java Persistence API) и упрощает взаимодействие с объектно-реляционными базами данных (ORM).
🔹 Spring ORM: Spring ORM интегрирует ORM-фреймворки, такие как Hibernate, с Spring Framework. Он обеспечивает удобную интеграцию между Spring и ORM-фреймворками, предоставляя возможности управления транзакциями, упрощенный доступ к данным и возможности кэширования.
🔹Spring Data JDBC: Альтернативный подход к доступу к данным с использованием JDBC. В отличие от ORM, Spring Data JDBC предлагает простую и прямолинейную модель доступа к данным без использования объектно-реляционного отображения (ORM).
🔹Spring Transactions: Spring предоставляет механизм управления транзакциями для работы с базами данных. Он позволяет объявлять транзакции с помощью аннотаций или XML-конфигурации.
🔹Spring Batch: Spring Batch предоставляет возможности для пакетной обработки данных, включая чтение, обработку и запись данных в базу данных.
👉@BookJava
Spring предоставляет мощный набор инструментов для работы с базами данных. Ниже перечислены некоторые из них:
🔹Spring JDBC: Абстракции над JDBC (Java Database Connectivity), что упрощает взаимодействие с базой данных через простые API.
🔹Spring Data JPA: Spring абстракция над JPA (Java Persistence API) и упрощает взаимодействие с объектно-реляционными базами данных (ORM).
🔹 Spring ORM: Spring ORM интегрирует ORM-фреймворки, такие как Hibernate, с Spring Framework. Он обеспечивает удобную интеграцию между Spring и ORM-фреймворками, предоставляя возможности управления транзакциями, упрощенный доступ к данным и возможности кэширования.
🔹Spring Data JDBC: Альтернативный подход к доступу к данным с использованием JDBC. В отличие от ORM, Spring Data JDBC предлагает простую и прямолинейную модель доступа к данным без использования объектно-реляционного отображения (ORM).
🔹Spring Transactions: Spring предоставляет механизм управления транзакциями для работы с базами данных. Он позволяет объявлять транзакции с помощью аннотаций или XML-конфигурации.
🔹Spring Batch: Spring Batch предоставляет возможности для пакетной обработки данных, включая чтение, обработку и запись данных в базу данных.
👉@BookJava
👍2
Вы опытный Java-разработчик, но хотите большего?
📚 Углубитесь в устройство JVM, научитесь профилировать приложения, оптимизировать их для облаков и развертывать в Kubernetes. Это повышение квалификации для тех, кто готов выйти на новый уровень.
👉 Вы освоите реактивный подход, работу с метриками и логированием, научитесь анализировать дампы памяти и создавать REST API с OpenAPI и Protobuf.
🎁 Присоединяйтесь к курсу «Java Developer. Advanced» и получите скидку! Ваша карьера в IT ждет апгрейда: https://vk.cc/cG54Zz
📚 Углубитесь в устройство JVM, научитесь профилировать приложения, оптимизировать их для облаков и развертывать в Kubernetes. Это повышение квалификации для тех, кто готов выйти на новый уровень.
👉 Вы освоите реактивный подход, работу с метриками и логированием, научитесь анализировать дампы памяти и создавать REST API с OpenAPI и Protobuf.
🎁 Присоединяйтесь к курсу «Java Developer. Advanced» и получите скидку! Ваша карьера в IT ждет апгрейда: https://vk.cc/cG54Zz
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
This media is not supported in your browser
VIEW IN TELEGRAM
IntelliJ IDEA EAP обеспечивает навигацию по журналам именно в том месте, где было зарегистрировано сообщение!
https://blog.jetbrains.com/idea/2024/02/intellij-idea-2024-1-eap-6/
👉 @BookJava
https://blog.jetbrains.com/idea/2024/02/intellij-idea-2024-1-eap-6/
👉 @BookJava
👍4🤡3💩1🥴1
Media is too big
VIEW IN TELEGRAM
🚀 Совет по Spring 🚀
Тестовые библиотеки Spring Boot (Testjars) 🔥
Привет, поклонники Spring! В этом выпуске мы рассмотрим новый проект Spring Boot Testjars, который значительно упрощает создание и повторное использование вспомогательных сервисов на базе Java, таких как микросервисы на основе Spring Boot или инфраструктурные компоненты, например, Spring Authorization Server.
источник
👉@BookJava
Тестовые библиотеки Spring Boot (Testjars) 🔥
Привет, поклонники Spring! В этом выпуске мы рассмотрим новый проект Spring Boot Testjars, который значительно упрощает создание и повторное использование вспомогательных сервисов на базе Java, таких как микросервисы на основе Spring Boot или инфраструктурные компоненты, например, Spring Authorization Server.
источник
👉@BookJava
👍4
🎄👩💻🎄Создадим вместе интерактивную новогоднюю открытку на Java и LibGDX
Дата: 18 декабря в 20:00 мск.
Приглашаем вас на вебинар, где мы с нуля создадим графическое приложение на Java с использованием фреймворка LibGDX — интерактивную новогоднюю открытку.
Программа урока:
- Введение в Java и LibGDX.
- Создание интерактивной новогодней открытки.
- Реализация ваших идей.
- Завершение и запуск приложения.
🔗 Ссылка на регистрацию: https://vk.cc/cG7yEo
Дата: 18 декабря в 20:00 мск.
Приглашаем вас на вебинар, где мы с нуля создадим графическое приложение на Java с использованием фреймворка LibGDX — интерактивную новогоднюю открытку.
Программа урока:
- Введение в Java и LibGDX.
- Создание интерактивной новогодней открытки.
- Реализация ваших идей.
- Завершение и запуск приложения.
🔗 Ссылка на регистрацию: https://vk.cc/cG7yEo
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Если нужно хранить несколько значений для одного ключа в
Map
, можно использовать MultiValuedMap:- List для дублирующихся значений (с повторениями).
- Set для уникальных значений (без дубликатов).
Пример кода:
1. ArrayListValuedHashMap – значения хранятся в списке (допускаются дубликаты):
MultiValuedMap<Integer, String> listMap = new ArrayListValuedHashMap<>();
listMap.put(1, "A");
listMap.put(1, "A");
listMap.put(1, "B");
listMap.put(1, "C");
Collection<String> values = listMap.get(1);
// values = ["A", "A", "B", "C"]
2. HashSetValuedHashMap – значения хранятся в множестве (дубликаты не допускаются):
MultiValuedMap<Integer, String> listMap = new HashSetValuedHashMap<>();
listMap.put(1, "A");
listMap.put(1, "A");
listMap.put(1, "B");
listMap.put(1, "C");
Collection<String> values = listMap.get(1);
// values = ["A", "B", "C"]
MultiValuedMap – удобное решение, чтобы избежать ручного управления коллекциями значений для одного ключа. Можно легко переключаться между List и Set реализациями в зависимости от задачи.
👉@BookJava
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥3👎2
⚡️Хотите стать экспертом в разработке на Spring Framework?
Обучение «Разработчик на Spring Framework» от OTUS — это практический подход к освоению самого востребованного фреймворка для Java-разработчиков. Узнайте, как создавать веб-приложения на микросервисной архитектуре, автоматизировать задачи с Spring Boot и реализовывать высокоуровневые решения!
В конце курса у вас будет портфолио из готовых приложений и глубокое понимание работы со Spring. Пройдите вебинар-собеседование, чтобы быть готовым к реальным интервью.
👉Запишитесь на курс сейчас и перейдите на новый профессиональный уровень с дипломом, признанным крупными компаниями: https://vk.cc/cG8Yo5
Обучение «Разработчик на Spring Framework» от OTUS — это практический подход к освоению самого востребованного фреймворка для Java-разработчиков. Узнайте, как создавать веб-приложения на микросервисной архитектуре, автоматизировать задачи с Spring Boot и реализовывать высокоуровневые решения!
В конце курса у вас будет портфолио из готовых приложений и глубокое понимание работы со Spring. Пройдите вебинар-собеседование, чтобы быть готовым к реальным интервью.
👉Запишитесь на курс сейчас и перейдите на новый профессиональный уровень с дипломом, признанным крупными компаниями: https://vk.cc/cG8Yo5
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
🏰 Открытый урок «Знакомство с Resilience4j» 🏰
🗓 Дата: 19 декабря в 20:00 мск.
👩💻 Resilience4j — популярный инструмент для обеспечения стабильности и отказоустойчивости в Java-приложениях. В мире высоких нагрузок и распределенных систем важно познакомиться с этим фреймворком, чтобы улучшить надежность и производительность ваших приложений.
Программа урока:
- Введение в Resilience4.
- Применение Resilience4j для улучшения стабильности.
🔗 Регистрация на вебинар: https://vk.cc/cG8WlJ
🗓 Дата: 19 декабря в 20:00 мск.
Программа урока:
- Введение в Resilience4.
- Применение Resilience4j для улучшения стабильности.
🔗 Регистрация на вебинар: https://vk.cc/cG8WlJ
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
🤷♂2❤1
Совет 💡
Обычно при сортировке в Spring Data мы указываем свойство, по которому хотим отсортировать, как строку. Однако существует класс
👉@BookJava
Обычно при сортировке в Spring Data мы указываем свойство, по которому хотим отсортировать, как строку. Однако существует класс
TypedSort
, который дает нам возможность передавать функцию в качестве параметра для сортировки. Это повышает безопасность типов в нашем коде.👉@BookJava
👍8
Создаём CRUD REST API в Spring Boot быстро и просто вместе с Amplicode
Статья демонстрирует, как с помощью инструмента Amplicode эффективно создавать REST-контроллеры в приложениях на Spring Boot. Автор показывает процесс генерации CRUD-методов (создание, чтение, обновление, удаление) и делегирования существующих методов в контроллер, что упрощает разработку API. Приводятся практические примеры и рекомендации по использованию Amplicode для ускорения разработки и повышения качества кода.
https://habr.com/ru/companies/haulmont/articles/866060/
👉@BookJava
Статья демонстрирует, как с помощью инструмента Amplicode эффективно создавать REST-контроллеры в приложениях на Spring Boot. Автор показывает процесс генерации CRUD-методов (создание, чтение, обновление, удаление) и делегирования существующих методов в контроллер, что упрощает разработку API. Приводятся практические примеры и рекомендации по использованию Amplicode для ускорения разработки и повышения качества кода.
https://habr.com/ru/companies/haulmont/articles/866060/
👉@BookJava
👍5
Приглашаем вас на открытый вебинар: «Основы многопоточности в Java»
⏰Дата: 25 декабря в 20:00 мск
Спикер: Борис Кириллов
📚Программа урока:
- Введение в многопоточность: что это и зачем это нужно.
- Изучение базовых классов для работы с потоками.
- Разбор типовых проблем многопоточности и подходов к их решению.
🔥Урок будет полезен тем, кто хочет:
- Разобраться в основах многопоточности в Java.
- Понять, как писать многопоточные программы.
- Узнать, какие классы используются для работы с потоками в Java.
🚀В результате урока вы:
- Поймете подходы к многопоточности в Java.
- Изучите базовые классы и синтаксис многопоточной обработки.
- Сможете применять полученные знания для создания более эффективных Java-приложений.
Участники всех открытых уроков получат скидку🎁 на большое обучение
👉Регистрируйтесь на открытый вебинар по ссылке: https://vk.cc/cGdWNG
⏰Дата: 25 декабря в 20:00 мск
Спикер: Борис Кириллов
📚Программа урока:
- Введение в многопоточность: что это и зачем это нужно.
- Изучение базовых классов для работы с потоками.
- Разбор типовых проблем многопоточности и подходов к их решению.
🔥Урок будет полезен тем, кто хочет:
- Разобраться в основах многопоточности в Java.
- Понять, как писать многопоточные программы.
- Узнать, какие классы используются для работы с потоками в Java.
🚀В результате урока вы:
- Поймете подходы к многопоточности в Java.
- Изучите базовые классы и синтаксис многопоточной обработки.
- Сможете применять полученные знания для создания более эффективных Java-приложений.
Участники всех открытых уроков получат скидку🎁 на большое обучение
👉Регистрируйтесь на открытый вебинар по ссылке: https://vk.cc/cGdWNG
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Что выведет код?
👉@BookJava
public class Main {
public static final int END = Integer.MAX_VALUE;
public static final int START = END - 100;
public static void main(String[] args) {
int count = 0;
for (int i = START; i <= END; i++) count++;
System.out.println(count);
}
}
👉@BookJava
💯7👍2
👨💻Java VS Python – очередной раунд вечного противостояния
🔍Аналитики ICT2GO проанализировали более 100 российских мероприятий 2024 года, посвященных языкам программирования и выяснили, какой из них чаще всего обсуждается на отраслевых ивентах.
Можем поздравить себя с маленькой победой:
Java – 39
Python – 35
Впрочем, давайте дружить языками. Ведь информация обо всех мероприятиях для разработчиков и не только собрана в одном удобном агрегаторе. Телеграм-канал «ICT2GO.ru – мероприятия ИТ» уже более семи лет освещает самые яркие из них для того, чтобы вы точно не пропустили ничего важного.
📌На канале вы найдете:
– подборки ключевых ИТ-ивентов на следующую неделю;
– экспертные мнения и рекомендации по мероприятиям;
– прямые включения, фотоотчеты и самые интересные цитаты спикеров.
Подпишитесь и всегда узнавайте об актуальных событиях вовремя!
erid 2W5zFJ77LFz
🔍Аналитики ICT2GO проанализировали более 100 российских мероприятий 2024 года, посвященных языкам программирования и выяснили, какой из них чаще всего обсуждается на отраслевых ивентах.
Можем поздравить себя с маленькой победой:
Java – 39
Python – 35
Впрочем, давайте дружить языками. Ведь информация обо всех мероприятиях для разработчиков и не только собрана в одном удобном агрегаторе. Телеграм-канал «ICT2GO.ru – мероприятия ИТ» уже более семи лет освещает самые яркие из них для того, чтобы вы точно не пропустили ничего важного.
📌На канале вы найдете:
– подборки ключевых ИТ-ивентов на следующую неделю;
– экспертные мнения и рекомендации по мероприятиям;
– прямые включения, фотоотчеты и самые интересные цитаты спикеров.
Подпишитесь и всегда узнавайте об актуальных событиях вовремя!
erid 2W5zFJ77LFz
🎉2🙈2👏1