Знаете ли вы, что большинство Java разработчиков активно используют Spring Boot в своей работе? Можно ли утверждать, что
Всем привет! Это канал русскоязычного сообщества Spring Boot - Spring АйО.
Здесь вы найдете новости и контент про Spring, Java и всему, с чем так или иначе соприкасается Spring Boot разработчик. Материалы будут не всегда на русском, но всегда полезные и актуальные.
Добро пожаловать и присоединяйтесь:
😌 @spring_aio
Java разработчик == Spring Boot разработчик? Вероятно, да!Всем привет! Это канал русскоязычного сообщества Spring Boot - Spring АйО.
Здесь вы найдете новости и контент про Spring, Java и всему, с чем так или иначе соприкасается Spring Boot разработчик. Материалы будут не всегда на русском, но всегда полезные и актуальные.
Добро пожаловать и присоединяйтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍7❤5
21 вопрос на собеседование по Maven.
Вопрос №1: А почему не Gradle? 🤔
А если серьезно, каждая из билд систем имеет свои преимущества. Тем не менее, start.spring.io по умолчанию выбирает Gradle, и что интересно, на Groovy.
🔗 https://www.java67.com/2024/04/top-21-maven-interview-questions.html
Подписывайтесь:
😌 @spring_aio
Вопрос №1: А почему не Gradle? 🤔
А если серьезно, каждая из билд систем имеет свои преимущества. Тем не менее, start.spring.io по умолчанию выбирает Gradle, и что интересно, на Groovy.
🔗 https://www.java67.com/2024/04/top-21-maven-interview-questions.html
Подписывайтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍5🔥3
Spring AI
Во всём мире сейчас наблюдается ажиотаж вокруг темы искусственного интеллекта и разработки приложений с его использованием. Многие стремятся внедрить искусственный интеллект в свои продукты и воспользоваться всеми его преимуществами. Поэтому сообщество Spring создало модуль 'Spring AI' для упрощения интеграции AI API в приложения Spring. Spring AI — это молодой проект, призванный упростить для разработчиков интеграцию функций искусственного интеллекта в приложения Spring. И он достигает этой цели, предлагая набор абстракций и инструментов, которые упрощают взаимодействие с такими ИИ-моделями, как OpenAI и Azure OpenAI.
🔗 https://habr.com/ru/companies/otus/articles/814713/
Подписывайтесь:
😌 @spring_aio
Во всём мире сейчас наблюдается ажиотаж вокруг темы искусственного интеллекта и разработки приложений с его использованием. Многие стремятся внедрить искусственный интеллект в свои продукты и воспользоваться всеми его преимуществами. Поэтому сообщество Spring создало модуль 'Spring AI' для упрощения интеграции AI API в приложения Spring. Spring AI — это молодой проект, призванный упростить для разработчиков интеграцию функций искусственного интеллекта в приложения Spring. И он достигает этой цели, предлагая набор абстракций и инструментов, которые упрощают взаимодействие с такими ИИ-моделями, как OpenAI и Azure OpenAI.
🔗 https://habr.com/ru/companies/otus/articles/814713/
Подписывайтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍5🔥3
IntelliJ IDEA
IntelliJ IDEA 2024.1 приносит множество новых функций, среди которых особенно выделяются навигация к логгеру и inline breakpoints. Теперь вы можете быстро переходить к соответствующему логгеру из лог-сообщения, что значительно упрощает отладку и анализ логов. Inline breakpoints позволяют устанавливать точки останова прямо в редакторе, что делает процесс отладки более интуитивным и удобным. Эти обновления делают IntelliJ IDEA еще более мощным инструментом для разработчиков. Также доступно в Community Edition.
#IntelliJ #IDE
🔗 https://blog.jetbrains.com/idea/2024/02/intellij-idea-2024-1-eap-6
Подписывайтесь:
😌 @spring_aio
IntelliJ IDEA 2024.1 приносит множество новых функций, среди которых особенно выделяются навигация к логгеру и inline breakpoints. Теперь вы можете быстро переходить к соответствующему логгеру из лог-сообщения, что значительно упрощает отладку и анализ логов. Inline breakpoints позволяют устанавливать точки останова прямо в редакторе, что делает процесс отладки более интуитивным и удобным. Эти обновления делают IntelliJ IDEA еще более мощным инструментом для разработчиков. Также доступно в Community Edition.
#IntelliJ #IDE
🔗 https://blog.jetbrains.com/idea/2024/02/intellij-idea-2024-1-eap-6
Подписывайтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥3❤🔥2👏1
Вышел Spring Boot 3.3.0. В обновлении представлены следующие нововведения:
🚀 Поддержка CDS для ускорения времени запуска.
🔍 Улучшение Observability.
🔐 Новые возможности Spring Security.
🧵 Поддержка виртуальных потоков для вебсокетов.
⚡ Обновление зависимостей и многое другое.
#Spring #SpringBoot
🔗 https://spring.io/blog/2024/05/23/spring-boot-3-3-0-available-now
Подписывайтесь:
😌 @spring_aio
🚀 Поддержка CDS для ускорения времени запуска.
🔍 Улучшение Observability.
🔐 Новые возможности Spring Security.
🧵 Поддержка виртуальных потоков для вебсокетов.
⚡ Обновление зависимостей и многое другое.
#Spring #SpringBoot
🔗 https://spring.io/blog/2024/05/23/spring-boot-3-3-0-available-now
Подписывайтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥4👏3
А тем временем, вышел Kotlin 2.0!
Основные изменения включают стабилизацию нового компилятора Kotlin K2, улучшение работы с многоплатформенными проектами, поддержку новых плагинов и улучшения производительности компилятора. В новой версии также прокачали smart-cast, а также ускорили работу IDE.
Несколько странно выглядит smart-cast для операций decrement и increment, меняющих тип объекта 🤯
#Kotlin
🔗 https://kotlinlang.org/docs/whatsnew20.html
Подписывайтесь:
😌 @spring_aio
Основные изменения включают стабилизацию нового компилятора Kotlin K2, улучшение работы с многоплатформенными проектами, поддержку новых плагинов и улучшения производительности компилятора. В новой версии также прокачали smart-cast, а также ускорили работу IDE.
Несколько странно выглядит smart-cast для операций decrement и increment, меняющих тип объекта 🤯
interface Rho {
operator fun inc(): Sigma = TODO()
}
var unknownObject: Rho = TODO()
++unknownObject // после этого unknownObject: Sigma 🤪 но Kotlin знает об этом)
#Kotlin
🔗 https://kotlinlang.org/docs/whatsnew20.html
Подписывайтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
Kotlin Help
What's new in Kotlin 2.0.0 | Kotlin
Read the Kotlin 2.0.0 release notes covering new language features, updates to Kotlin Multiplatform, JVM, Native, JS, and Wasm, and build tool support for Gradle and Maven.
👍6❤5👏2
This media is not supported in your browser
VIEW IN TELEGRAM
Когда меня просят стартануть проект не на Spring Boot 😂
😁14🔥3🤣3❤1👍1
Иногда полезно освежить в памяти базовые принципы фреймворка. В Spring Framework центральное место занимает Bean. В своем видео Джош Лонг рассказывает об истории Bean и его жизненном цикле.
#SpringTips #SpringBoot
📱 https://www.youtube.com/watch?v=Z5hxolai4Tk
Подписывайтесь:
😌 @spring_aio
#SpringTips #SpringBoot
Подписывайтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥3👏2
Hibernate — очень мощный и функциональный ORM (Object-Relational Mapping) фреймворк. Он связывает базы данных с помощью объектно-ориентированных языков программирования. Однако многие, начиная с ним работать, натыкаются на проблемы производительности или отсутствия нужной функциональности. Многие из этих проблем появляются просто из-за того, что разработчики не умеют его «готовить».
🔗 https://habr.com/ru/companies/magnit/articles/814573/
Подписывайтесь:
😌 @spring_aio
🔗 https://habr.com/ru/companies/magnit/articles/814573/
Подписывайтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥4👌2
Классная новость для всех Spring Boot разработчиков! Spring Academy дает бесплатный доступ ко всем своим обучающим материалам. 9 курсов и 12 гайдов по Spring Boot.
P.S. Есть сложности в регистрации из РФ.
🔗 https://spring.academy/
Подписывайтесь:
😌 @spring_aio
P.S. Есть сложности в регистрации из РФ.
🔗 https://spring.academy/
Подписывайтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👏3🤩2👍1
Контейнеризовать Spring Boot приложение можно так:
FROM gradle:8.5.0-jdk21
WORKDIR /
COPY / .
RUN ./gradlew installDist
CMD ./build/install/app/bin/app
И так:
FROM bellsoft/liberica-openjdk-alpine:21 AS builder
WORKDIR /application
COPY . .
RUN --mount=type=cache,target=/root/.gradle chmod +x gradlew && ./gradlew clean build -x test
FROM bellsoft/liberica-openjre-alpine:21 AS layers
WORKDIR /application
COPY --from=builder /application/build/libs/*.jar app.jar
RUN java -Djarmode=layertools -jar app.jar extract
FROM bellsoft/liberica-openjre-alpine:21
VOLUME /tmp
RUN adduser -S spring-user
USER spring-user
COPY --from=layers /application/dependencies/ ./
COPY --from=layers /application/spring-boot-loader/ ./
COPY --from=layers /application/snapshot-dependencies/ ./
COPY --from=layers /application/application/ ./
ENTRYPOINT ["java", "org.springframework.boot.loader.launch.JarLauncher"]
Второй вариант с одной стороны намного сложнее реализовать, но с другой стороны он даёт множество преимуществ, среди которых можно отметить:
🔗 Подробнее о том, как написать идеальный Dockerfile тут: https://spring.io/guides/topicals/spring-boot-docker
Подписывайтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤4🔥4
Spring Стартер Недели
Как сделать CRUD за 5 минут? Создаем модель данных, репозиторий, контроллер с 5-8 методами и, возможно, несколько dto. Если печатать со скоростью 600 символов в минуту, то можно успеть 🙈
Или берем Spring Data Rest, и получаем круды для своих репозиториев из коробки. И не только круды. Можно выставить наружу любой метод доступа к данным, прикрутить пагинацию и сортировку.
Однако, быстрый старт в начале может обернуться болью в процессе кастомизации или добавлении сложной (и не очень) логики. Тем не менее, выглядит как вполне себе хорошее решение для небольших REST сервисов, почти что Low Code 🙃.
Больше информации о данном стартере можно получить из доклада Рустама Курамшина на JPoint 2023.
📱 https://www.youtube.com/watch?v=roaGUHaWPxw
🔗 https://spring.io/projects/spring-data-rest
#SpringStarter #SpringBoot
Подписывайтесь:
😌 @spring_aio
Как сделать CRUD за 5 минут? Создаем модель данных, репозиторий, контроллер с 5-8 методами и, возможно, несколько dto. Если печатать со скоростью 600 символов в минуту, то можно успеть 🙈
Или берем Spring Data Rest, и получаем круды для своих репозиториев из коробки. И не только круды. Можно выставить наружу любой метод доступа к данным, прикрутить пагинацию и сортировку.
Однако, быстрый старт в начале может обернуться болью в процессе кастомизации или добавлении сложной (и не очень) логики. Тем не менее, выглядит как вполне себе хорошее решение для небольших REST сервисов, почти что Low Code 🙃.
Больше информации о данном стартере можно получить из доклада Рустама Курамшина на JPoint 2023.
🔗 https://spring.io/projects/spring-data-rest
#SpringStarter #SpringBoot
Подписывайтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤3🔥3