Java News – Telegram
Java News
4.31K subscribers
247 photos
5 videos
1 file
1.48K links
Все новости связанные с Java!

По всем вопросам: @NadikaKir

Мы на бирже: https://telega.in/c/java_newss
Download Telegram
Мой топ-10 фреймворков и библиотек Java

Начиная новый проект, я задумался о том, что, вероятнее всего, я могу упустить важные фреймворки и библиотеки Java из-за того, что я просто никогда с ними не сталкивался. Возможно, мои знакомые или знакомые знакомых используют что-то, что сможет спасти меня от написания своих велосипедов и костылей.

В этой статье представлен мой джентельменский набор Java-библиотек/фреймворков (иногда используются куски переводов базовых технических объяснений).

Читать статью
👍10🔥2
Инструменты, которыми пользуются Java-программисты в повседневной работе

Не все люди, выбирая язык программирования, понимают, с чем им придётся столкнуться и к чему готовиться. В этой статье я хочу описать инструменты, которые использую в повседневной работе. В каждом компании может быть своя специфика. Тем не менее, перечисленные здесь инструменты являются общими для львиной доли Java-разработчиков, а некоторые — и вовсе для большинства backend-программистов.

Читать статью
👍9🔥3
Знакомимся с Javassist

Всем большой привет! Перед началом стоит сказать, что библиотека Javassist довольно мощный инструмент, так как стирает почти все границы у того безграничного языка JAVA, позволяя разработчику осуществлять манипуляции связанные с байткодом.

В этой статье мы рассмотрим Javassist, как инструмент, с помощью которого мы будем вклиниваться в существующий байткод и трансформировать его.

Читать статью
👍2🔥2😱2
Использование паттернов Event Sourcing и CQRS для разработки приложения на Spring Boot и Axon Framework

Axon — это один из немногих фреймворков, который позволяет создавать гибкие микросервисные решения, используя архитектурные паттерны Event Sourcing и CQRS.

Подход Event Sourcing сильно отличается от обычного метода создания приложений, когда для сохранения, изменения и выборки состояния объектов используется одно и тоже хранилище в базе данных.

В этой статье мы создадим простое приложение на примере библиотеки книг с использованием Spring Boot и Axon Framework.

Читать статью
👍2🔥1
JEP 425: Virtual Threads to Deliver Improved Throughput

JEP 425, Virtual Threads (Preview), has been promoted from Proposed to Target to Targeted status for JDK 19. This JEP, under the umbrella of Project Loom, introduces virtual threads. These lightweight threads aim to dramatically reduce the effort of writing, maintaining, and observing high-throughput concurrent applications to the Java platform. This is a preview feature.

Читать статью
👍4🔥4
Java News Roundup: JEPs for Projects Loom and Panama, JobRunr 5.1.0, Kotlin 1.7.0 Preview

This week's Java roundup for May 2nd, 2022, features news from OpenJDK, JEPs targeted for JDK 19, JobRunr 5.1.0, Quarkus 2.8.3.Final, Hibernate 6.0.1.Final, Kotlin 1.7.0 preview, Apache Camel versions 3.14.3 and 3.11.7, Apache Tika version 2.4.0 and 1.28.2, a Micronaut survey on a minimal JDK version and the 2022 JFokus Conference.

Читать статью
👍2🔥2
Ускоряем java-рефлексию в 2022

После прочтения заголовка у кого-то наверняка возникнет весьма логичный вопрос: «Кто такая эта ваша рефлексия и зачем её ускорять?»

И если первая часть будет волновать только совсем уж откровенных неофитов, то вторая точно нуждается в пояснении.

К текущему моменту рефлексия (и особенно рефлективные вызовы методов) так или иначе используется в прорве самых разных фреймворков, библиотек и просто любых приложениях, по какой-либо причине требующих динамические возможности.

Читать статью
👍6🔥2
Сколько нужно времени, чтобы освоить востребованную профессию Java-программиста? Всего 10 месяцев! И начать можно бесплатно: https://clck.ru/h7jAJ

Научим:
=> Писать код на Java, использовать фреймворки Javalin, Spring
=> Применять принципы ООП, работать с базами данным, SQL
=> Настраивать окружение: IDEA, Gradle/Maven, JDK
=> Пользоваться командной строкой и Git

Поможем:
=> Наработать практику — вы сделаете 5 проектов на GitHub
=> Грамотно оформить резюме
=> Подготовиться к собеседованиям

А еще порекомендуем в хорошие компании и познакомим с сообществом из 28 тысяч айтишников. Присоединяйтесь!
👍5😁2
Как правильно хешировать пароли в Java-приложениях

Из этой статьи вы узнаете, как правильно и безопасно хешировать пароли в Java-приложениях.

Читать статью
🔥5👍3😁1
Java News Roundup: JEPs for JDK 19, Project Lilliput Milestone, Spring Framework, Quarkus 2.9.0

This week's Java roundup for May 9th, 2022, features news from OpenJDK, JEPs targeted for JDK 19, Project Lilliput milestone release, Spring Framework 5.3.20 and 5.2.22, Open Liberty
22.0.0.5 and 22.0.0.6-beta, Quarkus 2.9.0.Final, Apache Camel Quarkus 2.9.0, WildFly Preview 27 Alpha1, Hibernate Search 6.1.5, JobRunr 5.1.1, Piranha 22.5.0, Failsafe 3.2.4, Micronaut survey results and Devoxx UK.

Читать статью
👍6
Почему важен graceful shutdown в облачной среде (на примере Kubernetes + Spring Boot)

В облаке многие думают над стартом приложения, но не все задумываются о том, как оно завершается. В свое время мы наловили довольно много ошибок, связанных именно с остановкой подов. Например, увидели, что Kubernetes изредка убивает наше приложение до того, как оно успевает освободить ресурсы, хотя вроде бы так происходить не должно. Воспроизвести проблему с первого подхода не получилось, и мы задались вопросом, а что же там происходит под капотом?

Читать статью
👍6
Релиз Spring Boot 2.7.0

Состоялся релиз Spring Boot 2.7.0. В этом выпуске добавлено значительное количество новых функций и улучшений. Все подробности в статье.

Читать статью
🔥4👍3
Какая версия JVM самая быстрая?

Как используемая версия JVM влияет на высокопроизводительное Java-приложение с малой задержкой? Каждая наносекунда на счету для торговых и других приложений, где обмен сообщениями между двумя разными потоками занимает около 500 нс!

В данной статье проводится тестирование скорости работы Java 8, Java 11 и Java 17, а также GraalVM Community и Enterprise Edition с помощью Chronicle Queue. Это постоянная среда обмена сообщениями Java с малой задержкой для высокопроизводительных и критически важных приложений.

Прочтите эту статью и узнайте, какой вариант JDK окажется лучшим!

Читать статью
👍8
Java News Roundup: OpenJDK, Spring Updates and CVEs, Payara Platform, Apache Tomcat Updates

This week's Java roundup for May 16th, 2022 features news from OpenJDK for JDK 19, Jakarta EE 10, Spring milestone and point releases and CVEs, May 2022 Payara Platform release, Quarkus 2.9.1.Final, Micronaut 3.4.4, WildFly 16.1.1, Hibernate ORM 5.6.9.Final, Hibernate Reactive 11.5.Final, JDKMon 17.0.25, JobRunr 5.1.2, JReleaser early-access, Apache Tomcat point releases and Apache Camel 3.17.0.

Читать статью
👍4
Java библиотека для работы с внешним сервисом по протоколу RESTful API

Для работы с внешними сервисами по протоколу RESTful API обычно бывает вполне достаточно встроенных средств языка Java или внешних библиотек, используемых в коде приложения там, где это необходимо. Пример - библиотека java.net.http.HttpClient, пользоваться ей очень легко. Для Spring Framework все еще лучше - встроенный RestTemplate позволяет делать почти все. Однако, иногда в разработке может возникнуть ситуация, когда этого недостаточно.

Читать статью
👍3🔥2😱1
Как стать уверенным разработчиком на главном языке «энтерпрайза» Java? Например, записаться на курс по Java-разработке от Хекслета: https://clck.ru/iLDdu

Курс поможет освоить язык, алгоритмы и структуры данных, работу с микросервисами, фреймворком Spring Boot, базами данных и инфраструктурой.

На Хекслете курс спроектирован так, что его невозможно просто «отсидеть» или «прослушать». Именно поэтому студенты могут получить оффер ещё во время обучения, а некоторые работодатели указывают их курсы как преимущество при найме. Узнайте подробнее о программе.
👍7
Что возможно стоит знать начинающему Spring java backend разработчику о работе с PostgreSQL

Дисклеймер: в данной статье много воды, отражены мысли и опыт воспаленного мозга, потому заранее предупреждаю, что можете потерять просто свое время зря. Из java тут вообще мало. Возможно данная статья будет полезна начинающим разработчикам.

Данная заметка - микс различных приемов работы с базой данных, мейнтененса, встречающихся проблем. В общем это чистой воды винегрет и что-то вроде шпаргалки. Я не являюсь гуру PostgreSQL, но могу поделиться своими наработками, которые использую достаточно часто являясь простым java разработчиком. Может кому-то что-то пригодиться.

Читать статью
👍8
JEP 405: Record Classes to Extend Pattern Matching in Java

JEP 405, Record Patterns (Preview), has been promoted from Proposed to Target to Targeted for JDK 19. Under the umbrella of Project Amber, this JEP proposes to enhance the language with record patterns to deconstruct record values. Record patterns may be used in conjunction with type patterns to "enable a robust, declarative, and composable form of data navigation and processing."

Читать статью
👍5🔥1
gRPC — безопасность или жесть?

Встроенные в gRPC способы проверки прав справляются со своими задачами, но накладывают ряд ограничений и не дают возможность писать сложные варианты проверок без «оригинальных» инженерных решений. А тот, кто хоть раз грешил обходом ограничений, знает, чем это чревато.

В одном из проектов мы решили попробовать упростить процесс валидации данных при внешней интеграции, соблюдая все правила безопасности. Шалость удалась:)

Наш backend-разработчик — Александр — нашел-таки то самое «оригинальное» инженерное решение. Решили поделиться с вами, чтобы и вам страдать не приходилось.

Читать статью
👍5
Сегодня паттерн Посетитель в Java уже не нужен – лучше использовать переключатели паттернов

В современном языке Java паттерн Посетитель (Visitor) уже не нужен. Он отлично компенсируется использованием запечатанных типов и переключателей, использующих сопоставление с шаблоном – в таком случае те же цели достигаются проще и меньшим объемом кода.

Всякий раз, оказываясь в ситуации, где мог бы применяться паттерн Посетитель, подумайте, не воспользоваться ли вместо него более современными возможностями языка Java. Разумеется, эти возможности могут использоваться и в других обстоятельствах, но в этой статье мы обсудим сравнительно узкую тему: чем заменить паттерн Посетитель. Для этого я начну с максимально краткого введения и приведу пример, а затем объясню, как достичь тех же целей более простым (и кратким) кодом.

Читать статью
👍4
JEP 428: Structured Concurrency to Simplify Java Multithreaded Programming

JEP 428, Structured Concurrency (Incubator), has been promoted from Proposed to Target to Targeted status for JDK 19. Under the umbrella of Project Loom, this JEP proposes simplifying multithreaded programming by introducing a library to treat multiple tasks running on different threads as an atomic operation. As a result, it will streamline error handling and cancellation, improve reliability, and enhance observability. This is still an incubating API.

Читать статью
👍6