Media is too big
    VIEW IN TELEGRAM
  При работе с микросервисами часто возникает вопрос: как управлять конфигурациями для десятка разных сервисов? Один из популярных паттернов — вынести все проперти в отдельный Git-репозиторий и подключать их через Spring Cloud Config.
Например, в spring-petclinic-microservices-config хранятся настройки сразу для нескольких микросервисов Petclinic: discovery, visits-service, customers-service и других.
Это удобно:
spring.profiles.activeНо есть один нюанс, который выводит из себя Spring-разработчиков. IDE не понимает, что в этом репозитории лежат настройки для Spring-приложений. И никак не помогает во время редактирования. IDE думает, что это просто набор YAML-ов, как будто они вообще к проекту не относятся.
Мы это пофиксили! В Amplicode есть действие Mark Directory as Spring Application Properties Root
Вы просто указываете каталог с конфигурациями — и начинается магия 😉. Работает автокомплишн, подсветка и автодополнение значений.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍19🔥9❤4
  This media is not supported in your browser
    VIEW IN TELEGRAM
  Циклические зависимости трудно обнаружить — особенно когда приложение всё-таки запускается благодаря использованию
@Lazy.Мы давно показываем циклические зависимости между бинами, которые мешают запуску приложения, а начиная со следующего релиза будем подсвечивать и те, что были разрешены с помощью
@Lazy.Please open Telegram to view this post
    VIEW IN TELEGRAM
  1👍14🔥6❤3
  🧩 Агрегаты в Spring Data JDBC: как понять, что вы вообще построили? #coming_soon 
Когда вы строите приложение следуя DDD, одна из ключевых задач — чётко понимать границы агрегатов:
🟣  Кто чей root? 
🟣  Какие связи действительно важны, а какие просто случайные зависимости? 
Особенно это актуально для Spring Data JDBC, где парадигмы DDD зашиты в ДНК фреймворка, а вместо привычных многим аннотаций
Разобраться в структуре проекта с такими вводными – нетривиальная задача.
Даже если вы придерживаетесь всех рекомендаций DDD — всё равно в какой-то момент ловите себя на мысли: «А где, собственно, начинается и заканчивается мой Order агрегат? Почему он вдруг знает про Payment, а тот — про Discount?»
Мы поняли, что с этим сталкиваются многие, кто разрабатывает приложения с использованием Spring Data JDBC, и решили помочь. 
Начиная со следующего релиза, Amplicode Explorer будет показывать структуру вашей доменной модели именно с точки зрения агрегатов. Не просто дерево сущностей, а агрегаты как концепции DDD. Что является AggregateRoot, какие есть вложенные коллекции через
P.S. Как вам такая визуализация DDD? Может стоит и для JPA сделать подобное представление 😉?
Когда вы строите приложение следуя DDD, одна из ключевых задач — чётко понимать границы агрегатов:
Особенно это актуально для Spring Data JDBC, где парадигмы DDD зашиты в ДНК фреймворка, а вместо привычных многим аннотаций
@ManyToOne, @ManyToMany и т.д., используются AggregateReference и @MappedCollection.Разобраться в структуре проекта с такими вводными – нетривиальная задача.
Даже если вы придерживаетесь всех рекомендаций DDD — всё равно в какой-то момент ловите себя на мысли: «А где, собственно, начинается и заканчивается мой Order агрегат? Почему он вдруг знает про Payment, а тот — про Discount?»
Начиная со следующего релиза, Amplicode Explorer будет показывать структуру вашей доменной модели именно с точки зрения агрегатов. Не просто дерево сущностей, а агрегаты как концепции DDD. Что является AggregateRoot, какие есть вложенные коллекции через
@MappedCollection, где используются AggregateReference.P.S. Как вам такая визуализация DDD? Может стоит и для JPA сделать подобное представление 😉?
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥21👍8❤6👎1
  🥳 1 000 000 просмотров
За чуть больше чем год видео Amplicode на YouTube собрали уже более миллиона просмотров.
Спасибо, что смотрите, комментируете и делитесь❤️ 
Ну и почти 5 000 подписчиков! Если ещё не подписаны – сейчас самое время 😉
😉  Канал Amplicode
За чуть больше чем год видео Amplicode на YouTube собрали уже более миллиона просмотров.
Спасибо, что смотрите, комментируете и делитесь
Ну и почти 5 000 подписчиков! Если ещё не подписаны – сейчас самое время 😉
Please open Telegram to view this post
    VIEW IN TELEGRAM
  10🔥29🤩9
  Начиная со следующего релиза Connekt поддерживает OAuth 2.0 прямо из коробки. Указываете client ID, secret и эндпоинты.
Connekt сам:
Работает с Google, Keycloak, Yandex и другими провайдерами. Без Postman-хака с ручной подстановкой токена. Без лишнего кода. Без рутины. Без боли.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥24❤10👍6
  This media is not supported in your browser
    VIEW IN TELEGRAM
  Аудит важен в любом серьёзном приложении, но его легко реализовать неправильно.
Amplicode помогает избежать ошибок благодаря:
@CreatedBy, @CreatedDate, @LastModifiedBy, @LastModifiedDate@EnableJdbcAuditingAuditorAware Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍9🔥5❤4🎉1
  Forwarded from OpenIDE
This media is not supported in your browser
    VIEW IN TELEGRAM
  🚀 Друзья, у нас отличные новости — вышла новая версия OpenIDE!
Что изменилось в версии 2025.1
• Обновлена сама платформа до 2025.1
• Плагин Lombok теперь входит в базовую поставку
• В Windows-версии появилась возможность автоматической установки Git
• Исправлены неточности перевода интерфейса
• При установке плагинов, собранных в OpenIDE, больше не всплывают предупреждения
Статус плагинов:
Часть плагинов мы собираем сами, и не все успели обновить к релизу.
Уже доступны:
Пока недоступны:
😌 Незаметно присоединяйтесь ©
Что изменилось в версии 2025.1
• Обновлена сама платформа до 2025.1
• Плагин Lombok теперь входит в базовую поставку
• В Windows-версии появилась возможность автоматической установки Git
• Исправлены неточности перевода интерфейса
• При установке плагинов, собранных в OpenIDE, больше не всплывают предупреждения
Статус плагинов:
Часть плагинов мы собираем сами, и не все успели обновить к релизу.
Уже доступны:
• Scala
• Lombok
• .env files
• Python
• Protocol Buffers
• MCP Server
• Material Theme UI Lite
• Nginx Configuration
Пока недоступны:
• Terraform & HCL
• macOS Keymap
• Android
• ReSharper Keymap
• Error Prone Compiler
• Plugin DevKit
• Xcode Keymap
• Ant
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍11🔥11❤6
  This media is not supported in your browser
    VIEW IN TELEGRAM
  Интеграция с DBeaver в следующем релизе Amplicode станет ещё удобнее: теперь результаты выполнения SQL-запросов будут отображаются внутри IDE.
Не нужно переключаться в DBeaver, чтобы посмотреть данные — всё видно сразу, будь то обычный SQL, метод Spring Data репозитория или таблица из панели Amplicode Explorer.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥39👍11❤6
  Forwarded from Spring АйО
Какой IDE пользуетесь для разработки на Java/Spring?
  Final Results
    25%
    IntelliJ IDEA Community
      
    42%
    IntelliJ IDEA Ultimate (получаю обновления, сижу на актуальной версии)
      
    18%
    IntelliJ IDEA Ultimate (сижу на старой версии с perpetual лицензией)
      
    2%
    IntelliJ IDEA EAP
      
    12%
    OpenIDE
      
    10%
    Giga IDE
      
    5%
    VS Code
      
    3%
    Другой вариант, напишу в комментариях
      
    👍9🔥4❤3
  😎 Работа с объектами в HTTP-запросах
Работать с объектами намного удобнее и безопаснее, чем со строками: IDE подсказывает поля, типы проверяются на этапе компиляции – меньше шансов ошибиться.
Connekt, построенный на Kotlin DSL, позволяет использовать все эти преимущества при работе с HTTP-запросами — результат можно сразу сохранять в объект, а затем передавать его дальше по сценарию, например, в следующий шаг авторизации или повторно использовать данные без лишнего парсинга.
😏  Больше фич для работы с HTTP
Работать с объектами намного удобнее и безопаснее, чем со строками: IDE подсказывает поля, типы проверяются на этапе компиляции – меньше шансов ошибиться.
Connekt, построенный на Kotlin DSL, позволяет использовать все эти преимущества при работе с HTTP-запросами — результат можно сразу сохранять в объект, а затем передавать его дальше по сценарию, например, в следующий шаг авторизации или повторно использовать данные без лишнего парсинга.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  ❤15🔥9👍7
  Реактивный стек — мощный, но отлаживать его по-прежнему сложно.
В следующем мажорном релизе Amplicode начнет помогать в отладке реактивного кода: цепочки операций визуализируются, переходы между операторами понятны, стек вызовов — читаем.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥27👍9❤7
  This media is not supported in your browser
    VIEW IN TELEGRAM
  @Value станет максимально простым и удобным #coming_soon Надо получить значение из
application.yml или .properties, но не хочется вручную писать @Value и путь до свойства? Начиная со следюущего релиза Amplicode, можно просто начать печатать название нужного свойства в месте, где потребуется его значение, а остальное Amplicode сделает за вас
Please open Telegram to view this post
    VIEW IN TELEGRAM
  1🔥22👍10❤7
  This media is not supported in your browser
    VIEW IN TELEGRAM
  ⚡ Spring 7, Единый Дистрибутив, Spring Debugger, Spring Data JDBC 
– это и много другое в свежих версиях IntelliJ IDEA и Amplicode!
😉  СМОТРЕТЬ НА YOUTUBE
😄  СМОТРЕТЬ В VK ВИДЕО
🥰  СМОТРЕТЬ НА RUTUBE
– это и много другое в свежих версиях IntelliJ IDEA и Amplicode!
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍16🔥11😁10
  🤩 Главное из мира IDE и разработки на Spring
Сразу два крупных обновления — IntelliJ IDEA и Amplicode! Мы подготовили статьи для тех, кто хочет познакомиться с новыми возможностями в текстовом формате.
👣  Единый дистрибутив, JSpecify, Java 25 и новый Spring Debugger: это и много другое в IntelliJ IDEA 2025.2
👨💻  Поддержка Spring 7, Reactive Debugger, работа с БД и HTTP прямо в IDE: это и много другое в Amplicode 2025.2
#release #major
Сразу два крупных обновления — IntelliJ IDEA и Amplicode! Мы подготовили статьи для тех, кто хочет познакомиться с новыми возможностями в текстовом формате.
#release #major
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍18🔥10❤6
  This media is not supported in your browser
    VIEW IN TELEGRAM
  В Spring 7 появится еще один способ регистрации бинов – BeanRegistrar – интерфейс, позволяющий динамически регистрировать бины прямо из кода, без
@Bean, @Configuration, @Component и т.д.Spring 7 еще не вышел в свет, а Amplicode уже готов к этому сценарию 😇
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍14❤5🔥5
  Большинство Spring-разработчиков привыкли инжектировать бины через конструктор — это удобно и хорошо подходит для тестирования.
А вот с @Value всё не так однозначно: часто встречается инжекция прямо в поле. А как у вас? Как вы инжектируете @Value?
  А вот с @Value всё не так однозначно: часто встречается инжекция прямо в поле. А как у вас? Как вы инжектируете @Value?
Anonymous Poll
    38%
    Field-based injection
      
    2%
    Setter-based injection
      
    31%
    Constructor-based injection
      
    27%
    Вообще не использую @Value, только @ConfigurationProperties
      
    2%
    Свой вариант (напишу в комментах)
      
    👍12❤5🔥4
  В новом видео показываем, как быстро сгенерировать JPA-сущности из БД, организовать работу со Spring Data JPA и упростить написание Liquibase-скриптов.
Кроме создания с нуля также показали как автоматически вносить изменения из БД в уже существующие JPA-сущности.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥16❤10👍8😁1
  This media is not supported in your browser
    VIEW IN TELEGRAM
  Хотите запустить сервис в Docker или Kubernetes? Amplicode поможет с настройкой Docker Compose, Helm-чартов и Terraform файлов — всё генерируется и настраивается в пару кликов.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  ❤13👍8🔥3
  This media is not supported in your browser
    VIEW IN TELEGRAM
  🚀 Amplicode 2025.2.1: MyBatis, красный Connekt и фикс багов
В этом релизе мы добавили полноценную поддержку MyBatis:
🟣  мапперы теперь видны в Amplicode Explorer,
🟣  работает умная навигация и инжекция,
🟣  
Для тех, кто сидит на IntelliJ IDEA Ultimate, починили работу с SQL-файлами — они снова подсвечиваются и резолвятся как надо.
И, да — убрали тот самый красный нерабочий код в Connekt-скриптах. Можете снова работать с HTTP-запросами без раздражающих ошибок.
Текущий релиз поддерживает следующие версии IntelliJ IDEA: 2025.2, 2025.1, 2024.3, 2024.2
Установить | Чат | Release Notes | #release #minor
В этом релизе мы добавили полноценную поддержку MyBatis:
.mapTo() комплишен для MyBatis сущностей тоже работает.Для тех, кто сидит на IntelliJ IDEA Ultimate, починили работу с SQL-файлами — они снова подсвечиваются и резолвятся как надо.
И, да — убрали тот самый красный нерабочий код в Connekt-скриптах. Можете снова работать с HTTP-запросами без раздражающих ошибок.
Текущий релиз поддерживает следующие версии IntelliJ IDEA: 2025.2, 2025.1, 2024.3, 2024.2
Установить | Чат | Release Notes | #release #minor
Please open Telegram to view this post
    VIEW IN TELEGRAM
  2👍15🔥13❤6🎉1
  