Запросы к MongoDB из Java с помощью билдера фильтров
В этой статье разберемся, как использовать класс Filters для запросов к MongoDB.
Класс Filters представляет собой билдер для удобного написания фильтров запросов. Фильтры — это некоторые условные операции, которые MongoDB использует для ограничения результатов.
Читать статью
В этой статье разберемся, как использовать класс Filters для запросов к MongoDB.
Класс Filters представляет собой билдер для удобного написания фильтров запросов. Фильтры — это некоторые условные операции, которые MongoDB использует для ограничения результатов.
Читать статью
Telegraph
Запросы к MongoDB из Java с помощью билдера фильтров
1. Обзор В этой статье разберемся, как использовать класс Filters для запросов к MongoDB. Класс Filters представляет собой билдер для удобного написания фильтров запросов. Фильтры — это некоторые условные операции, которые MongoDB использует для ограничения…
👍4🔥2
Деплой приложения на Java. Хостим проект через push в Git
В статье мы рассмотрим, как развернуть в облаке приложение на Java, на примере Spring Boot приложения с встраиваемой базой данных H2. А именно, мы попробуем развернуть приложение с простым REST API, сборкой Maven и тремя эндпоинтами, позволяющими добавить продукт, получить список всех продуктов и узнать общую стоимость всех продуктов.
Читать статью
В статье мы рассмотрим, как развернуть в облаке приложение на Java, на примере Spring Boot приложения с встраиваемой базой данных H2. А именно, мы попробуем развернуть приложение с простым REST API, сборкой Maven и тремя эндпоинтами, позволяющими добавить продукт, получить список всех продуктов и узнать общую стоимость всех продуктов.
Читать статью
Teletype
Деплой приложения на Java. Хостим проект через push в Git
В статье мы рассмотрим, как развернуть в облаке приложение на Java, на примере Spring Boot приложения с встраиваемой базой данных H2...
👍4🔥1
📚 Пройди тест на знание Java и получи доступ к 59 открытым урокам по Spring
🕗 Два открытых урока можно посмотреть без регистрации и оценить формат обучения. Для доступа ко всем открытым урокам из курса «Разработчик на Spring Framework» от OTUS необходимо пройти входное тестирование: ответить на 21 вопрос и уложиться в тайминг.
📊 -Курс рассчитан на профессионалов с практическим опытом работы на Java.
- Мы будем 5 месяцев погружать вас в теорию и практику Spring Framework. - Дадим 18 практических работ. Процесс review сдаваемой работы максимально приближен к тому, каким он мог быть на реальном проекте. Помимо этого, мы попросим вас сдать дипломную работу , каких скучных записанных занятий, только живые онлайн-лекции, интересные практические задачи и развернутая обратная связь от лучших экспертов ниши. 📅 Старт группы уже 31 июля 2024г . Доступна рассрочка на обучение.
➡️ НАЧАТЬ ТЕСТИРОВАНИЕ
🕗 Два открытых урока можно посмотреть без регистрации и оценить формат обучения. Для доступа ко всем открытым урокам из курса «Разработчик на Spring Framework» от OTUS необходимо пройти входное тестирование: ответить на 21 вопрос и уложиться в тайминг.
📊 -
- Мы будем 5 месяцев погружать вас в теорию и практику Spring Framework.
➡️ НАЧАТЬ ТЕСТИРОВАНИЕ
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru👍4❤3🔥2
Как писать понятный код на Java
В этой статье Реза Ганджи делится советами по написанию более ясного кода на Java 🖥:
- Пишите простой и понятный код
- Изучайте основы
- Не изобретайте велосипед
- Делайте периодически рефакторинг
- Соблюдайте стандарты кодирования и принципы SOLID и KISS
Больше подробностей в предлагаемой статье💡
Читать статью
В этой статье Реза Ганджи делится советами по написанию более ясного кода на Java 🖥:
- Пишите простой и понятный код
- Изучайте основы
- Не изобретайте велосипед
- Делайте периодически рефакторинг
- Соблюдайте стандарты кодирования и принципы SOLID и KISS
Больше подробностей в предлагаемой статье💡
Читать статью
DZone
How To Think Simple In Java
This guide aims to help you think simply in Java, emphasizing clean, readable, and maintainable code without sacrificing the power and capabilities of the language.
👍3🔥2
Ждем вас на открытом вебинаре, где мы познакомимся с механизмом рефлексии в языке Java и посмотрим, где он применяется.
После занятия вы сможете лучше понять, как работают современные фреймворки, использующие аннотации.
Встречаемся 7 августа в 20:00 мск.
Спикер Александр Фисунов — Senior Kotlin Developer в SSP Software на проекте ВТБ, опытный Java-разработчик и кандидат технических наук.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2
Как ускорить прогон тестов в многомодульном проекте Maven
Большое количество модулей Maven замедляет сборку проекта и время прогона тестов. Для того, чтобы сохранить многомодульную структуру проекта и быстро прогонять тесты, мы в Wrike написали новый инструмент — Maven Modules Merger, который сократил время некоторых сборок с 50 до 12 минут. В статье подробно расскажу о том, с какими проблемами нам помог справиться Maven Modules Merger и поделюсь подробностями его создания.
Читать статью
Большое количество модулей Maven замедляет сборку проекта и время прогона тестов. Для того, чтобы сохранить многомодульную структуру проекта и быстро прогонять тесты, мы в Wrike написали новый инструмент — Maven Modules Merger, который сократил время некоторых сборок с 50 до 12 минут. В статье подробно расскажу о том, с какими проблемами нам помог справиться Maven Modules Merger и поделюсь подробностями его создания.
Читать статью
Telegraph
Как ускорить прогон тестов в многомодульном проекте Maven
Большое количество модулей Maven замедляет сборку проекта и время прогона тестов. Для того, чтобы сохранить многомодульную структуру проекта и быстро прогонять тесты, мы в Wrike написали новый инструмент — Maven Modules Merger, который сократил время некоторых…
👍4🔥2
RabbitMQ + Spring boot + Docker. Отправляем и получаем сообщения через Producer и Consumer. Пошаговое руководство
Меня зовут Андрей Вербицкий и я столкнулся с тем, что мое знакомство с RabbitMQ, а в частности его запуск на локальной машине и отправка сообщений в очередь с помощью приложения на Spring Boot, вылилась в несколько дней поисков информации о том, как это вообще работает, какие есть сущности и как в итоге переслать это сообщение. Я решил собрать все это в одном месте и сделать из этого практическое руководство, которое поможет из ничего получить рабочий прототип и понять как это работает. Эта статья ориентированная на новичков, которые только хотят познакомиться с RabbitMQ. Целью я поставил максимально простыми словами и по шагам рассказать, как быстро и легко поднять все окружение локально, отправить и получить сообщения через очередь.
Читать статью
Меня зовут Андрей Вербицкий и я столкнулся с тем, что мое знакомство с RabbitMQ, а в частности его запуск на локальной машине и отправка сообщений в очередь с помощью приложения на Spring Boot, вылилась в несколько дней поисков информации о том, как это вообще работает, какие есть сущности и как в итоге переслать это сообщение. Я решил собрать все это в одном месте и сделать из этого практическое руководство, которое поможет из ничего получить рабочий прототип и понять как это работает. Эта статья ориентированная на новичков, которые только хотят познакомиться с RabbitMQ. Целью я поставил максимально простыми словами и по шагам рассказать, как быстро и легко поднять все окружение локально, отправить и получить сообщения через очередь.
Читать статью
Telegraph
RabbitMQ + Spring boot + Docker. Отправляем и получаем сообщения через Producer и Consumer. Пошаговое руководство
Всем привет. Поскольку не смог найти полноценной статьи о том, как с нуля написать свой spring boot сервис с подключением к нему rabbitMQ, с конфигурацией всего это чуда через графический интерфейс и успешной отправкой и получением сообщения из очереди, то…
👍5🔥2
На открытом уроке курса «Java Developer. Advanced» разберем, как просматривать и читать байт код классов и для чего это может быть нужно. Научитесь создавать утилиты для изменения байт кода существующих классов в runtime. Это знание поможет вам улучшить производительность ваших приложений и решать сложные задачи.
Вебинар будет полезен Java-разработчикам, которые сталкиваются с вопросами производительности приложений.
Встречаемся 7 августа в 20:00 мск.
Спикер — Tech Lead в одном из крупнейших российских банков и кандидат технических наук.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1
Может ли Java-приложение использовать больше памяти, чем размер кучи
Возможно, вы замечали, что Java-приложение может превышать лимит памяти, указанный в параметре -Xmx (максимальный размер кучи). Дело в том, что JVM помимо кучи использует и другие области памяти.
Читать статью
Возможно, вы замечали, что Java-приложение может превышать лимит памяти, указанный в параметре -Xmx (максимальный размер кучи). Дело в том, что JVM помимо кучи использует и другие области памяти.
Читать статью
Telegraph
Может ли Java-приложение использовать больше памяти, чем размер кучи
1. Введение Возможно, вы замечали, что Java-приложение может превышать лимит памяти, указанный в параметре -Xmx (максимальный размер кучи). Дело в том, что JVM помимо кучи использует и другие области памяти. Давайте начнем со структуры памяти Java-приложения…
👍7🔥1😢1
📚 Пройди тест на знание Java и получи доступ к 7️⃣ 2️⃣ открытым урокам по Java
Два открытых урока можно посмотреть без регистрации и оценить формат обучения. Для доступа ко всем открытым урокам из курса «Java Developer. Professional» от OTUS необходимо пройти входное тестирование: ответить на 20 вопросов и уложиться в тайминг.
📊 -Курс рассчитан на профессионалов с практическим опытом работы на Java.
На курсе вы освоите:
- создание современных Java-приложений;
- основы функционирования JVM (сборка мусора, byteCode);
- приемы применения многопоточности;
- решение задач уровня Middle+;
- современные фреймворки Spring WebFlux, Kafka, реактивный Postgres и Kubernetes;
- написание кода чище и быстрее.
Забудьте о скучном обучении — здесь вас ждут настоящие челленджи и нестандартные практические решения. А еще сильные проекты для портфолио и карьерный сапорт! 📅 Старт группы уже 29 августа 2024г . Доступна рассрочка на обучение.
➡️ НАЧАТЬ ТЕСТИРОВАНИЕ
Два открытых урока можно посмотреть без регистрации и оценить формат обучения. Для доступа ко всем открытым урокам из курса «Java Developer. Professional» от OTUS необходимо пройти входное тестирование: ответить на 20 вопросов и уложиться в тайминг.
📊 -
- создание современных Java-приложений;
- основы функционирования JVM (сборка мусора, byteCode);
- приемы применения многопоточности;
- решение задач уровня Middle+;
- современные фреймворки Spring WebFlux, Kafka, реактивный Postgres и Kubernetes;
- написание кода чище и быстрее.
Забудьте о скучном обучении — здесь вас ждут настоящие челленджи и нестандартные практические решения. А еще сильные проекты для портфолио и карьерный сапорт!
➡️ НАЧАТЬ ТЕСТИРОВАНИЕ
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1
Декомпозиция систем по ограниченным контекстам DDD — глубокое погружение
"Отдайте этот функционал в другую системы - он относится к ним" - ворчал мой собеседник. Ему с пылом отвечали: "Так быть не должно. Мы сами должны его сделать!" Спор грозил затянуться до вечера. Ни одна из сторон не могла привести ни одного настоящего аргумента, почему новый функционал нужно поместить в ту или иную автоматизированную систему.
Проблема была в том, что никто не понимал как правильно делить системы на части и по каким признакам включать в них новые модули. У собеседников не было никакой единой простой методики.
Но методика на самом деле есть, и весьма неплохая. Называется она Предметно Ориентированным Дизайном (Domain Driven Design, DDD). С помощью DDD деление большой системы на (микро)сервисы становится простым и понятным.
Читать статью
"Отдайте этот функционал в другую системы - он относится к ним" - ворчал мой собеседник. Ему с пылом отвечали: "Так быть не должно. Мы сами должны его сделать!" Спор грозил затянуться до вечера. Ни одна из сторон не могла привести ни одного настоящего аргумента, почему новый функционал нужно поместить в ту или иную автоматизированную систему.
Проблема была в том, что никто не понимал как правильно делить системы на части и по каким признакам включать в них новые модули. У собеседников не было никакой единой простой методики.
Но методика на самом деле есть, и весьма неплохая. Называется она Предметно Ориентированным Дизайном (Domain Driven Design, DDD). С помощью DDD деление большой системы на (микро)сервисы становится простым и понятным.
Читать статью
Telegraph
Декомпозиция систем по ограниченным контекстам DDD — глубокое погружение
"Отдайте этот функционал в другую системы - он относится к ним" - ворчал мой собеседник. Ему с пылом отвечали: "Так быть не должно. Мы сами должны его сделать!" Спор грозил затянуться до вечера. Ни одна из сторон не могла привести ни одного настоящего аргумента…
👍5🔥2
Семь принципов хорошей разработки
Принципы разработки программного обеспечения играют решающую роль при создании высококачественных, удобных в сопровождении и эффективных программных систем. К этим принципам относятся: DRY. KISS, YAGNI, SLAP, SOLID. О них и пойдет речь в данной статье.
Читать статью
Принципы разработки программного обеспечения играют решающую роль при создании высококачественных, удобных в сопровождении и эффективных программных систем. К этим принципам относятся: DRY. KISS, YAGNI, SLAP, SOLID. О них и пойдет речь в данной статье.
Читать статью
👍3🔥2
Ждем вас на открытом уроке, где вы узнаете, что такое Java Instrumentation API и для чего нужны агенты. В онлайне изучим агент, позволяющий изменять код бизнес-классов для добавления дополнительных trace-логов для отладки приложения.
Вебинар подходит Java-разработчикам, которые сталкиваются с вопросами производительности приложений.
После занятия вы сможете писать и подключать Java-агенты самостоятельно, а также будете иметь представление о возможностях Java Instrumentation API.
Встречаемся 22 августа в 20:00 мск.
Спикер — Tech Lead в одном из крупнейших российских банков и кандидат технических наук.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1
Forwarded from Книги для Java программиста
Компания-разработчик СУБД Postgres Professional выпустила новую книгу «PostgreSQL 16 изнутри». Электронная версия учебника находится в свободном доступе. Автор книги — Егор Рогов, директор по разработке образовательных программ Postgres Professional.
Первое издание этого учебника, основанное на 14-й версии PostgreSQL, было выпущено в марте 2022 года и обновлено до 15 версии. Из-за большого читательского интереса компания перевела книгу на английский язык. Позже она стала самым популярным тематическим изданием 2023 года по версии Postgres Weekly и вошла в список профессиональной литературы на официальном сайте сообщества PostgreSQL.
В актуальной редакции книги «PostgreSQL 16 изнутри» учтены замечания читателей, исправлены опечатки, а также отражены изменения, произошедшие в версии PostgreSQL 16.
Также Postgres Professional обновила локализованную документацию к PostgreSQL 16.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍11🔥3❤2
Ждем вас на открытом вебинаре, где мы познакомимся с одной из базовых тем языка Java — Обобщения (Generics).
Изучим, для чего они нужны, где они применяются в стандартной Java-библиотеке, а также как их можно использовать в своем коде.
Встречаемся 21 августа в 20:00 мск.
Спикер Александр Фисунов — Senior Kotlin Developer в SSP Software на проекте ВТБ, опытный Java-разработчик и кандидат технических наук.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1
JPA Entity. Загрузи меня не полностью
JPA часто подвергается критике за невозможность загружать сущности частично, что на самом деле является большим заблуждением. Spring Data JPA и Hibernate включают в себя множество инструментов по частичной загрузке сущностей.
Подготовили статью, в которой рассмотрели имеющиеся в Spring Data JPA инструменты для частичной загрузки сущностей, а также разобрали их особенности и corner-кейсы.
Читать статью
JPA часто подвергается критике за невозможность загружать сущности частично, что на самом деле является большим заблуждением. Spring Data JPA и Hibernate включают в себя множество инструментов по частичной загрузке сущностей.
Подготовили статью, в которой рассмотрели имеющиеся в Spring Data JPA инструменты для частичной загрузки сущностей, а также разобрали их особенности и corner-кейсы.
Читать статью
Teletype
JPA Entity. Загрузи меня не полностью
JPA часто подвергается критике за невозможность загружать сущности частично, что на самом деле является большим заблуждением. Spring...
1👍6🔥2
Новое событие в JFR для диагностики использования устаревшего (deprecated) кода
В Java есть специальная аннотация @Deprecated для маркировки уставшего кода. С определенной периодичностью такой код из JDK удаляется. Обычно о конкретных сроках удаления анонс делается заранее и в теории можно успеть подготовиться, но на практике не все так просто.
В больших проектах найти куски устаревшего кода в куче зависимостей задача не тривиальная и требующая хорошей автоматизации. В этой ситуации к нам приходит на помощь новый тип события в JFR. Он был добавлен в JDK 22.
Давайте посмотрим на простом примере как это работает.
Читать статью
В Java есть специальная аннотация @Deprecated для маркировки уставшего кода. С определенной периодичностью такой код из JDK удаляется. Обычно о конкретных сроках удаления анонс делается заранее и в теории можно успеть подготовиться, но на практике не все так просто.
В больших проектах найти куски устаревшего кода в куче зависимостей задача не тривиальная и требующая хорошей автоматизации. В этой ситуации к нам приходит на помощь новый тип события в JFR. Он был добавлен в JDK 22.
Давайте посмотрим на простом примере как это работает.
Читать статью
Teletype
Новое событие в JFR для диагностики использования устаревшего (deprecated) кода
В Java есть специальная аннотация @Deprecated для маркировки уставшего кода. С определенной периодичностью такой код из JDK удаляется...
1👍3🔥2
Хотите освоить ключевой навык для Java-разработчика и обеспечить безопасность данных в своих проектах?
Ждем вас на открытом вебинаре 27 августа в 20:00 мск, где мы разберем:
- основы Spring Security;
- применение Spring Security для защиты данных и повышения безопасности проектов;
- применение магии «Alohomora» для открытия запертых дверей в мире безопасности.
Урок идеально подходит для Java- и Kotlin-разработчиков.
Встречаемся в преддверии старта курса «Разработчик на Spring Framework».
Все участники вебинара получат специальную цену на обучение!
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
1👍3
Абстрактные классы и интерфейсы в Java
В каких случаях стоит использовать абстрактный класс, а в каких — интерфейс? Давайте разбираться, в чем между ними разница.
Читать статью
В каких случаях стоит использовать абстрактный класс, а в каких — интерфейс? Давайте разбираться, в чем между ними разница.
Читать статью
Telegraph
Абстрактные классы и интерфейсы в Java
В каких случаях стоит использовать абстрактный класс, а в каких — интерфейс? Давайте разбираться, в чем между ними разница. Абстрактные классы и интерфейсы встречаются повсюду как в Java-приложениях, так и в самом Java Development Kit (JDK). Каждый из них…
👍5🔥2
Мечтаешь о карьере в бигтехе?
Приходи на интенсив в Открытые школы Т1 для Java-разработчиков с опытом от года. Лучшие выпускники получат оффер от Т1 — крупнейшей ИТ-компании по версии RAEX 2023🔝 и уникальный карьерный фаст-трек до мидла в бигтехе.
В портфеле Холдинга Т1 800+ масштабных проектов и 70+ продуктов и услуг.
🧠 Всего за полгода мы выпустили 500+ специалистов. Участники присоединились к командам финтех-разработки и разработки ИТ-продуктов. Выпускников также ждут в юнитах облачных сервисов, развития ИИ-решений, интеграции и консалтинга.
Программа курса: spring framework; docker; синхронное и асинхронное взаимодействие, брокеры сообщений; паттерны, SOLID.
⌛️ Быстрое обучение: 1 месяц.
💻Гибкий формат: все этапы онлайн, занятия по вечерам.
Готов прокачаться вместе с экспертами индустрии? Тогда подавай заявку до 22 августа!
Старт интенсива — 28 августа.
Реклама. ООО "Т1". ИНН 7720484492.
Приходи на интенсив в Открытые школы Т1 для Java-разработчиков с опытом от года. Лучшие выпускники получат оффер от Т1 — крупнейшей ИТ-компании по версии RAEX 2023🔝 и уникальный карьерный фаст-трек до мидла в бигтехе.
В портфеле Холдинга Т1 800+ масштабных проектов и 70+ продуктов и услуг.
🧠 Всего за полгода мы выпустили 500+ специалистов. Участники присоединились к командам финтех-разработки и разработки ИТ-продуктов. Выпускников также ждут в юнитах облачных сервисов, развития ИИ-решений, интеграции и консалтинга.
Программа курса: spring framework; docker; синхронное и асинхронное взаимодействие, брокеры сообщений; паттерны, SOLID.
⌛️ Быстрое обучение: 1 месяц.
💻Гибкий формат: все этапы онлайн, занятия по вечерам.
Готов прокачаться вместе с экспертами индустрии? Тогда подавай заявку до 22 августа!
Старт интенсива — 28 августа.
Реклама. ООО "Т1". ИНН 7720484492.
👍1