Знаете ли вы, что большинство 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
🔥13👍7❤4
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👍4🔥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
👍6❤5👏2
This media is not supported in your browser
VIEW IN TELEGRAM
Когда меня просят стартануть проект не на Spring Boot 😂
😁13🔥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
This media is not supported in your browser
VIEW IN TELEGRAM
Не то чтобы, нас сильно интересовал Python, но анимация очень интересная.
Жизненный цикл кода от IDE до рабочей программы.
Жизненный цикл кода от IDE до рабочей программы.
👍8🔥4👌3