Для тех, кто был слишком занят на неделе или просто пропустил некоторые посты, публикуем дайджест!
– Spring АйО х Joker – сообщили об участии команды Spring АйО в Joker 2024
– Туториал по Spring Data Envers для начинающих – разобрались, как отслеживать изменения данных в приложении, используя Spring Data Envers
– Вышел Spring AI 1.0.0 M3 – сообщили о релизе Spring AI 1.0.0 M3, который содержит достаточно большое кол-во улучшений
– Лучший способ создания нескольких окружений для Spring Boot приложения – ананосировали статью про имеющиеся способы управления окружением с использованием Docker Compose в деталях
– Рандомный порт для Spring Boot приложения – рассказали, как можно зарандомить порт или выбрать порт рандомно из диапазона для Spring Boot приложения
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🔥4❤3
Forwarded from JPoint и Joker — канал конференций по Java
Чем заняться в перерывах между докладами?
Познакомиться с коллегами по цеху и обсудить с ними актуальные вопросы из разных сфер: безопасности, паттернов проектирования, тестирования, управления данными и будущего технологий. Всё это можно сделать на Random coffee от Spring АйО.
Как проходит активность?
В 30-минутных перерывах между докладами приходите к столам возле Дискуссионки 3. На них будут лежать карточки с вопросами для обсуждения. За каждым столиком будет по два человека, которые обсудят вопрос, а спустя 5 минут поменяются «парами», чтобы подискутировать на новые темы.
В одном раунде Random coffee участвуют 10 человек, включая эксперта. Полное расписание с темами и экспертами можно посмотреть по ссылке.
Познакомиться с коллегами по цеху и обсудить с ними актуальные вопросы из разных сфер: безопасности, паттернов проектирования, тестирования, управления данными и будущего технологий. Всё это можно сделать на Random coffee от Spring АйО.
Как проходит активность?
В 30-минутных перерывах между докладами приходите к столам возле Дискуссионки 3. На них будут лежать карточки с вопросами для обсуждения. За каждым столиком будет по два человека, которые обсудят вопрос, а спустя 5 минут поменяются «парами», чтобы подискутировать на новые темы.
В одном раунде Random coffee участвуют 10 человек, включая эксперта. Полное расписание с темами и экспертами можно посмотреть по ссылке.
👍11❤8🔥4
Вот и прошел первый день главного события этой осени для Java разработчиков - Joker 2024!
💚 Дружественная атмосфера и куча крутых докладов, в том числе по нашей любимой теме - Spring Framework
P.S. Увидимся на After Party!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥32👍8❤7
Вот и подошел к концу Joker 2024! Были рады пообщаться и обменяться экспертизой со всеми, кто пришел
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤31👍25🔥18⚡1
В новом переводе от команды Spring АйО вы узнаете, как минимизировать риски и обеспечить безопасность Docker-контейнеров с помощью CIS Benchmark рекомендаций и автоматизированных инструментов вроде Docker Bench for Security.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍5❤4👎1🤔1🤩1
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁43👍6🔥4
Со временем в любом приложении могут появиться дублирующиеся записи. Иногда их удаление реализуют на уровне приложения, хотя это можно сделать с помощью одного SQL-запроса.
Удалить дубликаты вручную не так просто, как может показаться. Обычно для этого используется команда
GROUP BY с функциями MIN(id) или MAX(id), чтобы оставить одну строку.
DELETE FROM contacts
WHERE id NOT IN (
SELECT MIN(id)
FROM contacts
GROUP BY firstname, lastname, email
);
Однако такой метод не всегда подходит, если есть дополнительные требования:
* Нужно сохранить не все дубликаты, а лишь часть, например, последние пять.
* Иногда важно не просто удалить первые или последние строки — дополнительные поля могут задавать приоритет, например, мы не хотим удалять пользователя, подтвердившего
email, ради того, который этого не сделал.Чтобы учесть все требования, можно воспользоваться оконными функциями:
1. Строки разбиваются на группы по дублирующимся полям, создавая отдельные группы для каждого уникального набора значений.
2. Каждая группа сортируется по важным полям, например, по дате создания.
3. Для каждой строки в группе с помощью функции
ROW_NUMBER назначается порядковый номер.4. Можно удалить любые строки с номером, превышающим необходимый, например, если нужно оставить только пять последних записей.
Тогда, запрос позволяющий сохранить не все дубликаты, а лишь часть, например, последние пять, будет выглядеть следующим образом:
WITH duplicates AS (
SELECT id, ROW_NUMBER() OVER(
PARTITION BY firstname, lastname, email
ORDER BY age DESC
) AS rownum
FROM contacts
)
DELETE FROM contacts
USING duplicates
WHERE contacts.id = duplicates.id AND duplicates.rownum > 5;
А запрос, для удаления дубликатов с учетом факта подтверждения
email следующим образом:
WITH duplicates AS (
SELECT
id,
ROW_NUMBER() OVER(
PARTITION BY email
ORDER BY email_confirmed DESC
) AS rownum
FROM contacts
)
DELETE FROM contacts
USING duplicates
WHERE contacts.id = duplicates.id AND duplicates.rownum > 1;
#DatabaseTip #SQL
Please open Telegram to view this post
VIEW IN TELEGRAM
👍37❤5🔥4🤩1
Компания JetBrains начала блокировать лицензии пользователей, находящихся в России. Несмотря на то, что ранее была возможность обходить ограничения через изменение страны проживания и использование иностранных банковских карт, теперь лицензии могут быть заблокированы без предупреждения.
Вот что отвечает тех. поддержка JetBrains пользователям, чьи лицензии были заблокированы:
Наша команда по соблюдению правил выявила использование вашей лицензии на территории Российской Федерации, что нарушает условия нашей лицензии и действующие экспортные ограничения. К сожалению, я вынужден сообщить вам, что ваша лицензия была приостановлена в связи с нарушением лицензионного соглашения.
Официальная позиция нашей компании следующая: в соответствии с правилами ЕС, определённые продукты JetBrains, включая наши IDE, Code With Me, Upsource, TeamCity и Space для локального использования, относятся к категории продуктов массового рынка с функциями шифрования (X.D.III.201). Как следствие, экспорт таких продуктов, включая их передачу в Российскую Федерацию, запрещён. Кроме того, предоставление решений для управления проектами (таких как YouTrack), услуг по IT-консалтингу и технической поддержке также запрещено.
Напоминаем, что JetBrains приостановила продажи в Российской Федерации и Беларуси в 2022 году. Вдобавок к этому, в соответствии с вышеуказанными правилами, JetBrains не может предоставлять прямую или косвенную поддержку ни одной организации или государственному органу в Российской Федерации, а также запрещена передача наших продуктов, использующих массовое шифрование или инструменты управления проектами, для использования в Российской Федерации без соответствующего разрешения на исключение из этих правил.
🔗 Источник: https://habr.com/ru/news/852254/
#breaking_news #ide #jetbrains #sber
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯61👎41👍7❤5⚡2🔥2
На российском рынке сложилась сложная ситуация с IDE для Java-разработчиков. Новости, связанные с ограничением скачивания IntelliJ IDEA Ultimate, недоступностью JetBrains маркетплейса и блокировкой лицензий, которые использовались на территории РФ порождают огромное количество вопросов, на которые не у всех есть ответы.
Команда Spring АйО подготовила цикл статей, в которых постарается ответить на все вопросы, связанные с уходом IntelliJ IDEA из России.
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍36🔥9❤4👎4⚡3🤔1