Третий ролик цикла посвящён работе с реляционными СУБД с применением Spring Data JPA. Кроме этого вкратце демонстрируется версионирование баз данных при помощи FlywayDB.
В цикле роликов "Разработка проектов со Spring" автор рассказывает на простых примерах о процессе разработки веб-приложений и REST-сервисов на языке программирования Java с использованием экосистемы Spring. Данный цикл охватывает разработку классических и реактивных проектов, вопросы их сопровождения, такие как документация и мониториг, адаптацию их к облачной инфраструктуре и процесс их развёртывания в Docker и Kubernetes.
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
SC24EP03 Работа с базами данных - Разработка проектов со Spring #java #spring #data #jpa #sql
Третий ролик цикла посвящён работе с реляционными СУБД с применением Spring Data JPA. Кроме этого вкратце демонстрируется версионирование баз данных при помощи FlywayDB.
В цикле роликов "Разработка проектов со Spring" я рассказываю на простых примерах о…
В цикле роликов "Разработка проектов со Spring" я рассказываю на простых примерах о…
👍20🔥5❤4🎉1
Бесплатный интенсив для тех, кто хочет работать фронтенд-разработчиком
В сфере IT сейчас кадровый голод и компании очень нуждаются в хороших спецах.
Мы знаем это наверняка, потому что сами постоянно проводим стажировки и пополняем команду новыми разработчиками.
Поэтому мы решили, что пора делиться нашим 10-летним опытом, помогать начинающим айтишникам быстрее и проще входить в IT.
А лучших — забирать в свою команду 😉
Как стать одним из них?
➡️ Все подробности ты узнаешь на бесплатном интенсиве 14-15 марта «ТОП профессия 2024 — Frontend-разработчик».
За 2 дня поймёшь:
➤ какие навыки помогают легко трудоустраиваться и быстро расти в IT карьере
➤ как можно за год выйти из позиции Junior в Middle и расти в доходе х3-х5
➤ где и как получить нужный опыт, чтобы компании сами предлагали тебе работу
✅ И всё это тебе расскажет технический директор Purrweb, спикер YaTalks Сергей Пономарев.
Регистрируйся и узнай больше о программе и бонусах за участие 👉Зарегистрироваться
В сфере IT сейчас кадровый голод и компании очень нуждаются в хороших спецах.
Мы знаем это наверняка, потому что сами постоянно проводим стажировки и пополняем команду новыми разработчиками.
Поэтому мы решили, что пора делиться нашим 10-летним опытом, помогать начинающим айтишникам быстрее и проще входить в IT.
А лучших — забирать в свою команду 😉
Как стать одним из них?
➡️ Все подробности ты узнаешь на бесплатном интенсиве 14-15 марта «ТОП профессия 2024 — Frontend-разработчик».
За 2 дня поймёшь:
➤ какие навыки помогают легко трудоустраиваться и быстро расти в IT карьере
➤ как можно за год выйти из позиции Junior в Middle и расти в доходе х3-х5
➤ где и как получить нужный опыт, чтобы компании сами предлагали тебе работу
✅ И всё это тебе расскажет технический директор Purrweb, спикер YaTalks Сергей Пономарев.
Регистрируйся и узнай больше о программе и бонусах за участие 👉Зарегистрироваться
👍3❤2🔥2
Sorted set
SortedSet — это интерфейс в Java Collection Framework, который предоставляет упорядочение элементов в множестве. Элементы упорядочиваются с помощью их естественного порядка или с помощью компаратора, который обычно предоставляется при создании отсортированного множества.
SortedSet имеет несколько дополнительных операций, которые позволяют использовать упорядочение элементов:
— first() и last() возвращают первый и последний элементы в множестве соответственно.
— headSet(), tailSet() и subSet() возвращают подмножества элементов, которые находятся до, после или между заданными элементами соответственно.
В этом примере мы создаем TreeSet (класс, который реализует SortedSet) и добавляем в него несколько строк. Поскольку строки реализуют интерфейс Comparable, они упорядочиваются в алфавитном порядке. Затем мы используем различные методы SortedSet для получения первого и последнего элементов, а также подмножеств элементов.
SortedSet — это интерфейс в Java Collection Framework, который предоставляет упорядочение элементов в множестве. Элементы упорядочиваются с помощью их естественного порядка или с помощью компаратора, который обычно предоставляется при создании отсортированного множества.
SortedSet имеет несколько дополнительных операций, которые позволяют использовать упорядочение элементов:
— first() и last() возвращают первый и последний элементы в множестве соответственно.
— headSet(), tailSet() и subSet() возвращают подмножества элементов, которые находятся до, после или между заданными элементами соответственно.
В этом примере мы создаем TreeSet (класс, который реализует SortedSet) и добавляем в него несколько строк. Поскольку строки реализуют интерфейс Comparable, они упорядочиваются в алфавитном порядке. Затем мы используем различные методы SortedSet для получения первого и последнего элементов, а также подмножеств элементов.
👍17🔥3❤2
Проверь насколько хорошо ты знаешь Java и готов освоить Spring!
Ответишь — пройдешь на продвинутый курс "Разработчик на Spring Framework" от OTUS по специальной цене.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
❤4👍2🔥2
Информационную систему сложно представить себе без аутентификации и авторизации - так или иначе нужно управлять доступом пользователя к тем или иным ресурсам. В четвёртом ролике серии речь пойдёт об обеспечении безопасности веб-приложения при помощи Spring Security и будет продемонстрирована настройка цепочки фильтров безопасности. В рамках ролика демонстрируется использование формы входа, Basic-аутентификации и применение OAuth 2.0/OpenID Connect.
В цикле роликов "Разработка проектов со Spring" автор рассказывает на простых примерах о процессе разработки веб-приложений и REST-сервисов на языке программирования Java с использованием экосистемы Spring. Данный цикл охватывает разработку классических и реактивных проектов, вопросы их сопровождения, такие как документация и мониториг, адаптацию их к облачной инфраструктуре и процесс их развёртывания в Docker и Kubernetes.
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
SC24EP04 Безопасность веб-приложений - Разработка проектов со Spring #java #spring #security
Информационную систему сложно представить себе без аутентификации и авторизации - так или иначе нужно управлять доступом пользователя к тем или иным ресурсам. В четвёртом ролике серии речь пойдёт об обеспечении безопасности веб-приложения при помощи Spring…
👍15❤5
Как архитектору эффективно работать с принципом инверсии зависимостей?
Узнайте на бесплатном практическом уроке от OTUS, где вы вместе с опытным экспертом разберете:
▫️определение и обоснование принципа инверсии зависимостей;
▫️примеры использования принципа в различных паттернах проектирования;
▫️связь принципа инверсии зависимостей с остальными принципами SOLID;
▫️связь паттерна Адаптер, луковичной архитектуры и принципа инверсии зависимостей.
Занятие пройдёт 13 марта в 20:00 мск в рамках курса «Архитектура и шаблоны проектирования». После урока у вас будет возможность стать студентом программы по специальной цене и даже в рассрочку!
👉🏻 Пройдите короткий тест прямо сейчас, чтобы посетить бесплатный урок и получить запись: пройти тест
Узнайте на бесплатном практическом уроке от OTUS, где вы вместе с опытным экспертом разберете:
▫️определение и обоснование принципа инверсии зависимостей;
▫️примеры использования принципа в различных паттернах проектирования;
▫️связь принципа инверсии зависимостей с остальными принципами SOLID;
▫️связь паттерна Адаптер, луковичной архитектуры и принципа инверсии зависимостей.
Занятие пройдёт 13 марта в 20:00 мск в рамках курса «Архитектура и шаблоны проектирования». После урока у вас будет возможность стать студентом программы по специальной цене и даже в рассрочку!
👉🏻 Пройдите короткий тест прямо сейчас, чтобы посетить бесплатный урок и получить запись: пройти тест
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru❤3👍1🔥1
Абстракция в Java
Абстракция — это способность выделять существенные характеристики объекта и упускать несущественные.
Абстракция позволяет сосредоточиться на важных свойствах и поведении объекта, скрыв детали реализации.
В Java абстракция реализуется с помощью абстрактных классов и интерфейсов.
Абстрактный класс содержит абстрактные методы без реализации. Подклассы обязаны реализовать эти методы.
Интерфейс задает «контракт», описывая поведение классов без деталей реализации. Классы реализуют интерфейс.
Реализация абстракции требует тщательного анализа предметной области и выделения общих свойств объектов.
Абстракция — это способность выделять существенные характеристики объекта и упускать несущественные.
Абстракция позволяет сосредоточиться на важных свойствах и поведении объекта, скрыв детали реализации.
В Java абстракция реализуется с помощью абстрактных классов и интерфейсов.
Абстрактный класс содержит абстрактные методы без реализации. Подклассы обязаны реализовать эти методы.
Интерфейс задает «контракт», описывая поведение классов без деталей реализации. Классы реализуют интерфейс.
Реализация абстракции требует тщательного анализа предметной области и выделения общих свойств объектов.
🔥11❤4👍2
В данном видео автор рассказывает о Enum в языке программирования Java. Показывает разные варианты применения Enum на примерах.
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Java. Enum на примерах.
В данном видео я рассказываю о Enum в языке программирования Java. Показываю разные варианты применения Enum на примерах.
Поддержать канал на Boosty:
https://boosty.to/arhitutorials
Наш чатик в Telegram:
https://news.1rj.ru/str/ArhiTutorials
#arhitutorialsjava #ityoutubersru
Поддержать канал на Boosty:
https://boosty.to/arhitutorials
Наш чатик в Telegram:
https://news.1rj.ru/str/ArhiTutorials
#arhitutorialsjava #ityoutubersru
👍13❤4🔥4
С бесплатного открытого урока «Многопоточность в Java» от OTUS!
На вебинаре мы:
Поговорим об организации многопоточной обработки на Java, обсудим когда ее стоит применять и какие проблемы возникают при ее использовании.
Занятие подойдет:
Тем, кто только начинает программировать на Java или думает о начале обучения программированию.
В результате:
Вы получите понимание, что такое многопоточное программирование и как это делается на языке Java
Занятие пройдёт 19 марта в 20:00 мск и будет приурочено к старту курса «Специализация Java-разработчик».
👉🏻Для бесплатного участия и получения записи урока регистрируйтесь прямо сейчас: регистрация
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍2😁2
Класс LocalDateTime
Класс LocalDateTime используется для работы с датой и временем без учета часового пояса.
Он появился в Java 8 в пакете java.time и является частью новой date/time API, которая пришла на смену устаревшим классам Date и Calendar.
Основные возможности класса LocalDateTime:
— Хранение даты и времени с точностью до наносекунд.
— Получение различных компонентов даты/времени (год, месяц, день недели и т. д.).
— Выполнение операций сложения и вычитания дат и интервалов.
— Сравнение и сортировка дат по времени.
— Форматирование и парсинг строк по заданному шаблону.
Класс LocalDateTime используется для работы с датой и временем без учета часового пояса.
Он появился в Java 8 в пакете java.time и является частью новой date/time API, которая пришла на смену устаревшим классам Date и Calendar.
Основные возможности класса LocalDateTime:
— Хранение даты и времени с точностью до наносекунд.
— Получение различных компонентов даты/времени (год, месяц, день недели и т. д.).
— Выполнение операций сложения и вычитания дат и интервалов.
— Сравнение и сортировка дат по времени.
— Форматирование и парсинг строк по заданному шаблону.
👍17❤3
🎙Спикер Александр Царев — Tech Lead в Сбере и кандидат технических наук.
На вебинаре вы:
- узнаете, что такое дамп памяти, как его собрать и какие инструменты существуют для этих целей;
- познакомитесь с инструментом Eclipse Memory Analyzer, с помощью которого можно исследовать дампы памяти;
- получите ответы на все свои вопросы.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍3🔥2
Бесплатный практический урок 💥«Эффекты в Scala на примере ZIO»💥
🔥 Спикер Алексей Воронец — руководитель разработки в «NAUMEN». На вебинаре:
- узнаем о предпосылках и истории возникновения ZIO;
- сформируем представление, какие задачи решают так называемые «функциональные эффекты» в целом и ZIO в частности;
- попрактикуемся в создании и комбинировании ZIO-эффектов.
Занятие пройдёт 25 марта в 20:00 мск в рамках курса «Scala-разработчик». Доступна рассрочка на обучение!
👉 Регистрируйтесь прямо сейчас, чтобы посетить бесплатный урок и получить запись: https://otus.pw/34S0/
🔥 Спикер Алексей Воронец — руководитель разработки в «NAUMEN». На вебинаре:
- узнаем о предпосылках и истории возникновения ZIO;
- сформируем представление, какие задачи решают так называемые «функциональные эффекты» в целом и ZIO в частности;
- попрактикуемся в создании и комбинировании ZIO-эффектов.
Занятие пройдёт 25 марта в 20:00 мск в рамках курса «Scala-разработчик». Доступна рассрочка на обучение!
👉 Регистрируйтесь прямо сейчас, чтобы посетить бесплатный урок и получить запись: https://otus.pw/34S0/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru❤6
charBuffer
Метод charBuffer() используется для получения буфера символов из строки. Он принадлежит java.nio.
Этот метод возвращает объект CharBuffer, который представляет последовательность символов строки.
CharBuffer позволяет эффективно читать и манипулировать символами строки без создания копий.
В этом примере создается строка «Hello». Затем из этой строки получаем буфер символов методом charBuffer().
В цикле посимвольно читаем из буфера символы и выводим их на экран.
Метод charBuffer() используется для получения буфера символов из строки. Он принадлежит java.nio.
Этот метод возвращает объект CharBuffer, который представляет последовательность символов строки.
CharBuffer позволяет эффективно читать и манипулировать символами строки без создания копий.
В этом примере создается строка «Hello». Затем из этой строки получаем буфер символов методом charBuffer().
В цикле посимвольно читаем из буфера символы и выводим их на экран.
👍16🔥2❤1
Бесплатный курс по Backend-разработке от Газпромбанка 💻
Газпромбанк приглашает тебя в бесплатную академию GPB IT Factory с оффером для лучших студентов.
Ты сможешь прокачать свои скиллы в backend-разработке, создать с нуля чат-бот «Минибанк» на языке Java/Kotlin и Java Spring Boot приложение, которые сможешь добавить в свое портфолио.
Кроме этого, лучшие студенты программы смогут присоединиться к команде Газпромбанка на позицию начинающего специалиста с перспективой роста до middle-позиции.
Мы ждем студентов 2 курса магистратуры или тех, кто уже завершил(-а) обучение в вузе и сможет посещать занятия в Москве. Для прохождения отбора достаточно обладать инженерным мышлением, владеть одним из языков программирования, а также знать основы SQL, Computer Science и Linux.
📍 Оставить заявку
Газпромбанк приглашает тебя в бесплатную академию GPB IT Factory с оффером для лучших студентов.
Ты сможешь прокачать свои скиллы в backend-разработке, создать с нуля чат-бот «Минибанк» на языке Java/Kotlin и Java Spring Boot приложение, которые сможешь добавить в свое портфолио.
Кроме этого, лучшие студенты программы смогут присоединиться к команде Газпромбанка на позицию начинающего специалиста с перспективой роста до middle-позиции.
Мы ждем студентов 2 курса магистратуры или тех, кто уже завершил(-а) обучение в вузе и сможет посещать занятия в Москве. Для прохождения отбора достаточно обладать инженерным мышлением, владеть одним из языков программирования, а также знать основы SQL, Computer Science и Linux.
📍 Оставить заявку
❤7😁2👍1🔥1
Контейнер Optional
Optional — это контейнер, который может содержать какое-то значение или не содержать ничего.
Он используется для обозначения отсутствия значения вместо null. Это позволяет избежать ошибок NullPointerException.
Optional появился в Java 8. Он представлен классом java.util.Optional.
Чтобы создать экземпляр Optional, используются статические методы:
— empty() для пустого Optional.
— of() для Optional с заданным значением.
Для получения значения из Optional используются методы get(), или orElse() с указанием значения по умолчанию. Также есть методы фильтрации значений, например filter(), map() и flatMap().
Optional — это контейнер, который может содержать какое-то значение или не содержать ничего.
Он используется для обозначения отсутствия значения вместо null. Это позволяет избежать ошибок NullPointerException.
Optional появился в Java 8. Он представлен классом java.util.Optional.
Чтобы создать экземпляр Optional, используются статические методы:
— empty() для пустого Optional.
— of() для Optional с заданным значением.
Для получения значения из Optional используются методы get(), или orElse() с указанием значения по умолчанию. Также есть методы фильтрации значений, например filter(), map() и flatMap().
👍17🔥4❤1
🔥 Какие актуальные технологии нужно знать для разработки на Spring?
🎙 Расскажет Александр Оруджев — Senior Software Engineer. Встречаемся на бесплатном практическом уроке от OTUS, где вы вместе с опытным экспертом разберете:
📅 Занятие пройдёт 20 марта в 20:00 мск и будет приурочено к старту курса «Разработчик на Spring Framework». Доступна рассрочка на обучение!
👉 Пройдите короткий тест прямо сейчас, чтобы занять место на открытом уроке и получить запись: https://otus.pw/xfKP/
- паттерны Controller, Service и Repository;
- какую пользу они могут принести;
- особенности использования данных шаблонов в Spring.
📅 Занятие пройдёт 20 марта в 20:00 мск и будет приурочено к старту курса «Разработчик на Spring Framework». Доступна рассрочка на обучение!
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
👍4❤3🔥2
Keycloak - популярный SSO-сервис (Single Sign On), предоставляющий единую точку входа для всех ваших приложений, реализующий протоколы OAuth и OIDC. Keycloak может быть использован в связке со Spring Security с минимальным количеством дополнительного кода. В этом ролике автор продемонстрирует настройку ресурс-сервера и логина Spring Security OAuth2 с использованием Keycloak.
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Keycloak и Spring Security
Keycloak - популярный SSO-сервис (Single Sign On), предоставляющий единую точку входа для всех ваших приложений, реализующий протоколы OAuth и OIDC. Keycloak может быть использован в связке со Spring Security с минимальным количеством дополнительного кода.…
🔥9👍7❤1
Можно ли считать Final переменную константой?
Поскольку у нас не получится присвоить новое значение для final переменной, кажется, что это переменные константы. Но это только на первый взгляд. Если тип данных, на который ссылается переменная — immutable, то да, это константа.
А если тип данных mutable, то есть изменяемый, при помощи методов и переменных можно будет изменить значение объекта, на который ссылается final переменная, и в таком случае назвать ее константой нельзя. Так вот, на примере видно, что часть финальных переменных действительно константы, а часть — нет, и их можно изменить.
Поскольку у нас не получится присвоить новое значение для final переменной, кажется, что это переменные константы. Но это только на первый взгляд. Если тип данных, на который ссылается переменная — immutable, то да, это константа.
А если тип данных mutable, то есть изменяемый, при помощи методов и переменных можно будет изменить значение объекта, на который ссылается final переменная, и в таком случае назвать ее константой нельзя. Так вот, на примере видно, что часть финальных переменных действительно константы, а часть — нет, и их можно изменить.
👍25❤2☃2🔥1🍾1
Тестирование является неотъемлемым этапом разработки программного обеспечения и обеспечивает качество разрабатываемых проектов, соблюдение требований и спецификаций, а также позволяет выявлять ошибки на ранних этапах. В пятом ролике серии речь пойдёт о модульном и интеграционном тестировании проектов на основе Spring WebMVC. Кроме этого в ролике рассматривается применение Testcontainers для развёртывания тестовой БД, а так же WireMock - для имитации сторонних REST-сервисов.
В цикле роликов "Разработка проектов со Spring" автор рассказывает на простых примерах о процессе разработки веб-приложений и REST-сервисов на языке программирования Java с использованием экосистемы Spring. Данный цикл охватывает разработку классических и реактивных проектов, вопросы их сопровождения, такие как документация и мониториг, адаптацию их к облачной инфраструктуре и процесс их развёртывания в Docker и Kubernetes.
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
SC24EP05 Тестирование веб-приложений - Разработка проектов со Spring #java #spring #softwaretesting
Тестирование является неотъемлемым этапом разработки программного обеспечения и обеспечивает качество разрабатываемых проектов, соблюдение требований и спецификаций, а также позволяет выявлять ошибки на ранних этапах. В пятом ролике серии речь пойдёт о модульном…
👍21❤4🔥2
Екатеринбург, 21 марта приглашаем на митап IT Talk by Sber! 😉
Поговорим о том, как сделать правильную анимацию в браузере, обсудим управление UI через backend и узнаем о проблемах наследования кода. А после — ответим на все вопросы, пообщаемся и просто отлично проведём время.
Спикеры и темы:
- Михаил Прядун, Frontend Developer, «Правильная анимация и хороший CSS»
- Алексей Кардашов, Java Developer, «Управление UI через backend в стеке jvm с использованием composite screen platform»
- Ирина Шахтарина, аналитик, «Это всё, что останется после меня: проблемы наследования кода и передачи права на него»
Встречаемся 21 марта в 18:30 в Технохабе Сбера по адресу ул. Розы Люксембург, 56а.
Ждём всех крутых разработчиков Урала! Регистрируйтесь по ссылке 💚
Поговорим о том, как сделать правильную анимацию в браузере, обсудим управление UI через backend и узнаем о проблемах наследования кода. А после — ответим на все вопросы, пообщаемся и просто отлично проведём время.
Спикеры и темы:
- Михаил Прядун, Frontend Developer, «Правильная анимация и хороший CSS»
- Алексей Кардашов, Java Developer, «Управление UI через backend в стеке jvm с использованием composite screen platform»
- Ирина Шахтарина, аналитик, «Это всё, что останется после меня: проблемы наследования кода и передачи права на него»
Встречаемся 21 марта в 18:30 в Технохабе Сбера по адресу ул. Розы Люксембург, 56а.
Ждём всех крутых разработчиков Урала! Регистрируйтесь по ссылке 💚
❤8👍3🔥2