Глубокое погружение в конфигурацию Spring Boot
Из статьи вы узнаете о настройке Spring Boot в различных средах: Kubernetes, Cloud и т. д.
Читать статью
Из статьи вы узнаете о настройке Spring Boot в различных средах: Kubernetes, Cloud и т. д.
Читать статью
👍4🔥3
Юнга, стоп, у нас кончились ресурсы. Или как мы оптимизировали наши микросервисы
Всем привет. Как вы все знаете после определенных событий у нас случился ресурсный кризис. И появился запрос на оптимизацию потребляемых ресурсов.
Темой и станет оптимизация потребления ресурсов микросервисов и уменьшение времени выполнения наших запросов.
Читать статью
Всем привет. Как вы все знаете после определенных событий у нас случился ресурсный кризис. И появился запрос на оптимизацию потребляемых ресурсов.
Темой и станет оптимизация потребления ресурсов микросервисов и уменьшение времени выполнения наших запросов.
Читать статью
Telegraph
Юнга, стоп, у нас кончились ресурсы. Или как мы оптимизировали наши микросервисы
Всем привет. Как вы все знаете, после определенных событий у нас случился ресурсный кризис. И появился запрос на оптимизацию потребляемых ресурсов. Темой и станет оптимизация потребления ресурсов микросервисов и уменьшение времени выполнения наших запросов.…
👍5🔥3
Подготовка к интервью по Spring Data JPA
Одним из самых популярных модулей в приложениях Spring Boot является Spring Data JPA. Следовательно, у вас почти нет шансов избежать вопросов на собесе, связанных с этой темой. В этой статье будут рассмотрены наиболее часто задаваемые вопросы с подробными ответами по JPA/JDBC/Hibernate.
Читать статью
Одним из самых популярных модулей в приложениях Spring Boot является Spring Data JPA. Следовательно, у вас почти нет шансов избежать вопросов на собесе, связанных с этой темой. В этой статье будут рассмотрены наиболее часто задаваемые вопросы с подробными ответами по JPA/JDBC/Hibernate.
Читать статью
👍6🔥1👏1
It is Wednesday, my java dudes, или насколько сложно сделать свою JVM
Что делать, если накануне переезда повысилась тревожность, а привычные методы не приносят успокоения?
Конечно же вырабатывать дофамин через решение упоротых инженерных задач!
Мне стало интересно - насколько тяжко было бы сделать свой интерпретатор байт-кода Java? И насколько сложно было бы научить его “новым трюкам”?
Писать я буду на Rust, поэтому и проект, не мудрствуя лукаво, назвал Rjava.
Читать статью
Что делать, если накануне переезда повысилась тревожность, а привычные методы не приносят успокоения?
Конечно же вырабатывать дофамин через решение упоротых инженерных задач!
Мне стало интересно - насколько тяжко было бы сделать свой интерпретатор байт-кода Java? И насколько сложно было бы научить его “новым трюкам”?
Писать я буду на Rust, поэтому и проект, не мудрствуя лукаво, назвал Rjava.
Читать статью
Telegraph
It is Wednesday, my java dudes, или насколько сложно сделать свою JVM
Что делать, если накануне переезда повысилась тревожность, а привычные методы не приносят успокоения? Конечно же вырабатывать дофамин через решение упоротых инженерных задач! Мне стало интересно - насколько тяжко было бы сделать свой интерпретатор байт-кода…
🔥3👍2
Познакомьтесь с востребованным направлением программирования. Освойте базовые инструменты и возможности Java на практике. Узнайте 5 правил синтаксиса языка Java, которые нужно соблюдать каждому начинающему разработчику. Участвуйте в онлайн-интенсиве Skillbox с 25 по 27 августа в 19:00 по московскому времени.
Успейте зарегистрироваться: 👉 https://clc.to/LH6i9g.
Сразу отправим вам на почту чек-лист по знаниям и навыкам, которые необходимы backend-разработчику для трудоустройства.
Кому подойдёт интенсив:
📌 Новичкам в программировании.
Получите базовые навыки программирования на Java, научитесь писать простой код и узнаете основные функции. Попрактикуетесь в разработке, создадите свой первый проект и заложите основу для новой карьеры.
📌Начинающим разработчикам.
Углубите знания о Java и станете увереннее в своих проектах. Разработаете приложение за 3 дня, выявите ошибки, получите практические советы от опытного программиста.
Интенсив ведёт Даниил Пилипенко — основатель и директор центра подбора IT-специалистов SymbioWay.
С 2004 года разрабатывает и руководит разработкой на Java, PHP и во фронтенде. 50 раз выступил на семинарах и конференциях.
🎁 Всем, кто дойдёт до конца интенсива, подарим электронную книгу «Человек + машина» издательства МИФ.
Подключайтесь к прямым эфирам и используйте возможность получить сертификат на 10 000 рублей на любой курс Skillbox.
Сделайте первый шаг к перспективной IT-профессии!
Успейте зарегистрироваться: 👉 https://clc.to/LH6i9g.
Сразу отправим вам на почту чек-лист по знаниям и навыкам, которые необходимы backend-разработчику для трудоустройства.
Кому подойдёт интенсив:
📌 Новичкам в программировании.
Получите базовые навыки программирования на Java, научитесь писать простой код и узнаете основные функции. Попрактикуетесь в разработке, создадите свой первый проект и заложите основу для новой карьеры.
📌Начинающим разработчикам.
Углубите знания о Java и станете увереннее в своих проектах. Разработаете приложение за 3 дня, выявите ошибки, получите практические советы от опытного программиста.
Интенсив ведёт Даниил Пилипенко — основатель и директор центра подбора IT-специалистов SymbioWay.
С 2004 года разрабатывает и руководит разработкой на Java, PHP и во фронтенде. 50 раз выступил на семинарах и конференциях.
🎁 Всем, кто дойдёт до конца интенсива, подарим электронную книгу «Человек + машина» издательства МИФ.
Подключайтесь к прямым эфирам и используйте возможность получить сертификат на 10 000 рублей на любой курс Skillbox.
Сделайте первый шаг к перспективной IT-профессии!
👍6
Spring Authorization Server 1.0 Planned for November 2022
Just over two years since it was introduced to the Java community, Spring Authorization Server 1.0 is planned for a GA release in November 2022. The Spring Authorization Server project replaces the Spring Security OAuth project that has already been declared as end-of-life. The project is led by the Spring Security team and delivers support for OAuth 2.1 Authorization Server for Spring applications.
Читать статью
Just over two years since it was introduced to the Java community, Spring Authorization Server 1.0 is planned for a GA release in November 2022. The Spring Authorization Server project replaces the Spring Security OAuth project that has already been declared as end-of-life. The project is led by the Spring Security team and delivers support for OAuth 2.1 Authorization Server for Spring applications.
Читать статью
👍6
Чувак, где моя черепаха?
Как написать программу, чтобы победить на конкурсе плохого кода? Этот вопрос я задал сам себе, когда прочёл о необычном челлендже на форуме reddit. Да, вы правильно поняли. Это статья не о чистом коде и правильных тестах. Но здесь не будет и речи о плохом, заурядно плохом коде, том коде, который мы очень часто видим в наших проектах. Я расскажу об экстремальном, невообразимом, гениально плохом коде, коде, который использует те возможности джавы, о которых вы, скорее всего, и не догадывались, и те приёмы, которые вы никогда не встретите в обычных проектах. Сможете ли вы использовать эти приёмы на практике? Думаю, нет. Если вы прагматичный человек, то сэкономите своё время и остановитесь. Не читайте эту статью. Однако если вы хотите немного отвлечься от повседневной рутины, увидеть и узнать что-то новое о нашем любимом языке Java, - милости просим!
Читать статью
Как написать программу, чтобы победить на конкурсе плохого кода? Этот вопрос я задал сам себе, когда прочёл о необычном челлендже на форуме reddit. Да, вы правильно поняли. Это статья не о чистом коде и правильных тестах. Но здесь не будет и речи о плохом, заурядно плохом коде, том коде, который мы очень часто видим в наших проектах. Я расскажу об экстремальном, невообразимом, гениально плохом коде, коде, который использует те возможности джавы, о которых вы, скорее всего, и не догадывались, и те приёмы, которые вы никогда не встретите в обычных проектах. Сможете ли вы использовать эти приёмы на практике? Думаю, нет. Если вы прагматичный человек, то сэкономите своё время и остановитесь. Не читайте эту статью. Однако если вы хотите немного отвлечься от повседневной рутины, увидеть и узнать что-то новое о нашем любимом языке Java, - милости просим!
Читать статью
Telegraph
Чувак, где моя черепаха?
Как написать программу, чтобы победить на конкурсе плохого кода? Этот вопрос я задал сам себе, когда прочёл о необычном челлендже на форуме reddit. Да, вы правильно поняли. Это статья не о чистом коде и правильных тестах. Но здесь не будет и речи о плохом…
👍8🔥1
Управление временем в Java приложениях
В продуктовой Java-разработке часто требуется сохранять дату и время в базу данных. Это может быть фиксация времени создания\последней модификации какого-либо объекта или указание срока действия документа, билета и т.п. Сама по себе эта задача несложная. Трудности возникают, когда мы хотим подобную систему протестировать и оценить, как она будет вести себя, скажем, через полгода или год. В будущем. Ниже я покажу несколько простых и изящных приёмов, которые позволят вам почувствовать себя настоящим доктором Стрэнджем…
Читать статью
В продуктовой Java-разработке часто требуется сохранять дату и время в базу данных. Это может быть фиксация времени создания\последней модификации какого-либо объекта или указание срока действия документа, билета и т.п. Сама по себе эта задача несложная. Трудности возникают, когда мы хотим подобную систему протестировать и оценить, как она будет вести себя, скажем, через полгода или год. В будущем. Ниже я покажу несколько простых и изящных приёмов, которые позволят вам почувствовать себя настоящим доктором Стрэнджем…
Читать статью
Telegraph
Управление временем в Java приложениях
Сегодня я хочу поговорить об управлении временем в Java приложениях: зачем это нужно, и как это можно делать. В реальном коде часто требуется сохранять дату и время в базу данных. Это может быть фиксация времени создания\последней модификации какого-либо…
👍9🔥1
В Java-дайджесте от infoQ за прошедшую неделю представлены:
- новости о JDK 19, JDK 20
Обновления:
- Spring Boot 2.7.3 и 2.6.11
- Spring Authorization Server 1.0.0-M1 и 0.4.0-M1
- Spring Security 5.7.3, 5.6.7 и 5.8.0-M2
- Spring Cloud Dataflow 2.9.5
- Spring Shell 2.1.1
- Payara Platform 5 Community Edition
- Micronaut 3.6.1, Helidon 3.0.1 и Apache Camel 3.14.5
Читать статью
- новости о JDK 19, JDK 20
Обновления:
- Spring Boot 2.7.3 и 2.6.11
- Spring Authorization Server 1.0.0-M1 и 0.4.0-M1
- Spring Security 5.7.3, 5.6.7 и 5.8.0-M2
- Spring Cloud Dataflow 2.9.5
- Spring Shell 2.1.1
- Payara Platform 5 Community Edition
- Micronaut 3.6.1, Helidon 3.0.1 и Apache Camel 3.14.5
Читать статью
👍5🔥2❤1
Соглашение о коммитах
Спецификация «Соглашение о коммитах» — простое соглашение о том, как нужно писать сообщения коммитов. Оно описывает простой набор правил для создания понятной истории коммитов, а также позволяет проще разрабатывать инструменты автоматизации, основанные на истории коммитов.
Читать
Спецификация «Соглашение о коммитах» — простое соглашение о том, как нужно писать сообщения коммитов. Оно описывает простой набор правил для создания понятной истории коммитов, а также позволяет проще разрабатывать инструменты автоматизации, основанные на истории коммитов.
Читать
👍9
Сравнение Quartz, kagkarlsson и кастомной реализации для запланированного задания в реактивном Spring Boot приложении
Часто Java-разработчикам требуется реализовать запланированные задания. Современные реалии диктуют нам, что система должна быть масштабируемой, то есть вне зависимости от количества реплик и распределения нагрузки мы ожидаем выполнения задания по условиям, которые были определены на входе. Существуют готовые решения для реализации jobService. Используя базу данных, можно написать собственное решение этой задачи, а при возникший трудностях, разбираться с тем, что же пошло не так. С одной стороны, вероятность ошибки больше, чем с готовым решением, но с другой стороны в своем коде разбираться и вносить правки проще, чем в общедоступной библиотеке. Кроме того, собственная реализация будет учитывать особенности системы, в нашем случае, это реактивность. В статье подробнее описаны плюсы и минусы этих подходов.
Читать статью
Часто Java-разработчикам требуется реализовать запланированные задания. Современные реалии диктуют нам, что система должна быть масштабируемой, то есть вне зависимости от количества реплик и распределения нагрузки мы ожидаем выполнения задания по условиям, которые были определены на входе. Существуют готовые решения для реализации jobService. Используя базу данных, можно написать собственное решение этой задачи, а при возникший трудностях, разбираться с тем, что же пошло не так. С одной стороны, вероятность ошибки больше, чем с готовым решением, но с другой стороны в своем коде разбираться и вносить правки проще, чем в общедоступной библиотеке. Кроме того, собственная реализация будет учитывать особенности системы, в нашем случае, это реактивность. В статье подробнее описаны плюсы и минусы этих подходов.
Читать статью
Telegraph
Сравнение Quartz, kagkarlsson и кастомной реализации для запланированного задания в реактивном Spring Boot приложении
Часто Java-разработчикам требуется реализовать запланированные задания. Современные реалии диктуют нам, что система должна быть масштабируемой, то есть вне зависимости от количества реплик и распределения нагрузки мы ожидаем выполнения задания по условиям…
👍5🔥1
Weekend Offer для Java-разработчиков в команду VK Звонков состоится 10-11 сентября
Вам предстоит участвовать в разработке новых фич, развивать и улучшать существующие решения, работать над улучшением качества звука и видео и решать задачи бесперебойной передачи данных в сложных сетевых условиях. Из требований – опыт бэкенд-разработки на Java, способность собрать требования к задаче, знание сетевых стеков и протоколов передачи данных и понимание классических алгоритмов и структур данных.
Подать заявку
Вам предстоит участвовать в разработке новых фич, развивать и улучшать существующие решения, работать над улучшением качества звука и видео и решать задачи бесперебойной передачи данных в сложных сетевых условиях. Из требований – опыт бэкенд-разработки на Java, способность собрать требования к задаче, знание сетевых стеков и протоколов передачи данных и понимание классических алгоритмов и структур данных.
Подать заявку
👍5
Ищем-ищем нужное…
Периодически у каждого возникает такая задача, когда необходимо произвести поиск в какой-либо директории, прямо внутри содержащихся там файлов, и найти нужные файлы по ключевым словам. Именно об этом мы и поговорим в этой статье.
Читать статью
Периодически у каждого возникает такая задача, когда необходимо произвести поиск в какой-либо директории, прямо внутри содержащихся там файлов, и найти нужные файлы по ключевым словам. Именно об этом мы и поговорим в этой статье.
Читать статью
Telegraph
Ищем-ищем нужное…
Периодически у каждого возникает такая задача, когда необходимо произвести поиск в какой-либо директории, прямо внутри содержащихся там файлов, и найти нужные файлы по ключевым словам. Именно об этом мы и поговорим в этой статье. Проблема На самом деле, эта…
👍6
Холостые циклы в Java
Привет, сегодня поговорим о тонкостях реализации холостых циклов (холостого ожидания) в Java. Эта задача встречается нечасто: за девять с небольшим лет работы я столкнулся с ней лишь пару раз. Тем не менее, тема видится интересной и по ней есть что сказать, так что добро пожаловать!
Читать статью
Привет, сегодня поговорим о тонкостях реализации холостых циклов (холостого ожидания) в Java. Эта задача встречается нечасто: за девять с небольшим лет работы я столкнулся с ней лишь пару раз. Тем не менее, тема видится интересной и по ней есть что сказать, так что добро пожаловать!
Читать статью
Telegraph
Холостые циклы в Java
Привет, сегодня поговорим о тонкостях реализации холостых циклов (холостого ожидания) в Java. Эта задача встречается нечасто: за девять с небольшим лет работы я столкнулся с ней лишь пару раз. Тем не менее, тема видится интересной и по ней есть что сказать…
👍4😱1
SOLID на практике в автоматизации тестирования
Как на практике реализовать все принципы и упростить разработку тестирования BDD ?
Примером будет интеграционное тестирование, но вам ничего не помешает реализовать для End2End
Читать статью
Как на практике реализовать все принципы и упростить разработку тестирования BDD ?
Примером будет интеграционное тестирование, но вам ничего не помешает реализовать для End2End
Читать статью
Telegraph
SOLID на практике в автоматизации тестирования
Как на практике реализовать все принципы и упростить разработку тестирования BDD ? Для чего нужны принципы SOLID При создании программных систем использование принципов SOLID способствует созданию такой системы, которую будет легко поддерживать и расширять…
👍4
Java News Roundup: Eclipse GlassFish, Open Liberty, MicroStream, JHipster, WildFly, EclipseLink
This week's Java roundup for August 29th, 2022, features news from OpenJDK, JDK 20, Eclipse GlassFish 7.0.0-M8, Quarkus 2.12.0, Open Liberty 22.0.0.9 and 22.0.0.10-beta, MicroStream 07.01.00-beta2, WildFly 26.1.2, JHipster 7.9.3, EclipseLink 4.0.0-RC1, Hibernate 5.6.11, JDKMon 17.0.35 and Apache Camel Quarkus 2.12.0.
Читать статью
This week's Java roundup for August 29th, 2022, features news from OpenJDK, JDK 20, Eclipse GlassFish 7.0.0-M8, Quarkus 2.12.0, Open Liberty 22.0.0.9 and 22.0.0.10-beta, MicroStream 07.01.00-beta2, WildFly 26.1.2, JHipster 7.9.3, EclipseLink 4.0.0-RC1, Hibernate 5.6.11, JDKMon 17.0.35 and Apache Camel Quarkus 2.12.0.
Читать статью
👍4
Лучшие практики по управлению зависимостями в Java
Если посмотреть на современные Java-приложения, почти все они содержат зависимости от библиотек, разработанных кем-то другим.
Зависимости занимают от 80 до 90 процентов бинарного файла, поэтому мы должны позаботиться о них при создании проекта Java. В этой статье я дам вам несколько советов и рекомендаций по работе с зависимостями Java в вашем проекте.
Читать статью
Если посмотреть на современные Java-приложения, почти все они содержат зависимости от библиотек, разработанных кем-то другим.
Зависимости занимают от 80 до 90 процентов бинарного файла, поэтому мы должны позаботиться о них при создании проекта Java. В этой статье я дам вам несколько советов и рекомендаций по работе с зависимостями Java в вашем проекте.
Читать статью
👍6
Атака на String.hashCode: прообразы и коллизии
Как-то раз мне понадобилось несколько наборов строк с коллизией по хеш-коду. То есть таких, чтобы значение String::hashCode() совпадало для всех строк в наборе.
Блуждание по интернету не дало результатов, примеров было мало и все они довольно однообразны. Поиск по словарям подарил забавную пару "javanoscript's".hashCode() == "monocle".hashCode(), но практической пользы не принёс. Полный перебор не рассматривался в виду скорой тепловой смерти вселенной.
Тот самый случай, когда проще сделать всё самому. Стандартная хеш-функция строки в Java считается криптографически нестойкой, так что знаний из школьного курса математики должно быть достаточно.
Читать статью
Как-то раз мне понадобилось несколько наборов строк с коллизией по хеш-коду. То есть таких, чтобы значение String::hashCode() совпадало для всех строк в наборе.
Блуждание по интернету не дало результатов, примеров было мало и все они довольно однообразны. Поиск по словарям подарил забавную пару "javanoscript's".hashCode() == "monocle".hashCode(), но практической пользы не принёс. Полный перебор не рассматривался в виду скорой тепловой смерти вселенной.
Тот самый случай, когда проще сделать всё самому. Стандартная хеш-функция строки в Java считается криптографически нестойкой, так что знаний из школьного курса математики должно быть достаточно.
Читать статью
Telegraph
Атака на String.hashCode: прообразы и коллизии
Как-то раз мне понадобилось несколько наборов строк с коллизией по хеш-коду. То есть таких, чтобы значение String::hashCode() совпадало для всех строк в наборе. Блуждание по интернету не дало результатов, примеров было мало и все они довольно однообразны.…
👍5
Java 8 была выпущена в марте 2014 года, а Java 18 — в марте 2022 года. Между этими двумя выпусками — 8 лет прогресса и 203 предложения (JEP) по улучшению JDK.
В этом видео Аурелио Гарсиа-Рибейро рассказывает о наиболее важных изменениях в Java, которые произошли за эти года, а также о преимуществах и проблемах по внедрению последних версий JDK как для новых приложений, так и для уже написанных.
В этом видео Аурелио Гарсиа-Рибейро рассказывает о наиболее важных изменениях в Java, которые произошли за эти года, а также о преимуществах и проблемах по внедрению последних версий JDK как для новых приложений, так и для уже написанных.
YouTube
Java 8 to 18: Most important changes in the Java Platform
Java 8 launched in March of 2014, Java 18 in March of 2022. There are 8 years of progress, 203 JDK Enhancement Proposals (JEPs), between those two releases. In this video, we will review the most important changes and discuss the benefits, and challenges…
👍9
JDK 19 and JDK 20: What We Know So Far
JDK 19, the second non-LTS release since JDK 17, has reached its initial release candidate phase as declared by Mark Reinhold, chief architect, Java Platform Group at Oracle. The main-line source repository, forked to the JDK stabilization repository in early June 2022 (Rampdown Phase One), defines the feature set for JDK 19. Critical bugs, such as regressions or serious functionality issues, may be addressed, but must be approved via the Fix-Request process. As per the release schedule, JDK 19 will be formally released on September 20, 2022.
Читать статью
JDK 19, the second non-LTS release since JDK 17, has reached its initial release candidate phase as declared by Mark Reinhold, chief architect, Java Platform Group at Oracle. The main-line source repository, forked to the JDK stabilization repository in early June 2022 (Rampdown Phase One), defines the feature set for JDK 19. Critical bugs, such as regressions or serious functionality issues, may be addressed, but must be approved via the Fix-Request process. As per the release schedule, JDK 19 will be formally released on September 20, 2022.
Читать статью
👍4🔥1
Большой гайд. Пишем микросервисы на Java и Spring Boot, заворачиваем в Docker, запускаем на EKS, мониторим на Grafana
В этой статье вы увидите пошаговое создание cloud-native микросервиса на Amazon AWS, пригодное для "чтения с листа". Чтобы понять, что здесь происходит, не нужно разворачивать проект - достаточно обладать живым воображением и прочитать текст по диагонали. Если же вы всё-таки захотите повторить шаги, вам будут жизненно нужны знания вида, как создавать классы в IDE и что такое Spring.
Вначале мы напишем пару простых микросервисов на Spring Boot, докеризуем их, зальём в AWS, настроим красивые доменные имена и HTTPS, прикрутим логирование и мониторинг, Prometheus и Grafana. Это небольшое путешествие по всем кругам ада, из которого вы не вернетесь прежним.
Читать статью
В этой статье вы увидите пошаговое создание cloud-native микросервиса на Amazon AWS, пригодное для "чтения с листа". Чтобы понять, что здесь происходит, не нужно разворачивать проект - достаточно обладать живым воображением и прочитать текст по диагонали. Если же вы всё-таки захотите повторить шаги, вам будут жизненно нужны знания вида, как создавать классы в IDE и что такое Spring.
Вначале мы напишем пару простых микросервисов на Spring Boot, докеризуем их, зальём в AWS, настроим красивые доменные имена и HTTPS, прикрутим логирование и мониторинг, Prometheus и Grafana. Это небольшое путешествие по всем кругам ада, из которого вы не вернетесь прежним.
Читать статью
👍8