Java
1.63K subscribers
223 photos
5 videos
3 files
901 links
Программирование на Java.

По всем вопросам: @un_ixtime
Download Telegram
Введение в Spring AI

Spring Framework официально включил возможности генерации подсказок искусственного интеллекта в проекте Spring AI. Цель этой статьи — дать подробное введение в интеграцию генеративного искусственного интеллекта в приложения Spring Boot. В рамках руководства мы познакомимся с основными концепциями искусственного интеллекта .
https://www.baeldung.com/spring-ai
👎2🔥2
Project Loom. Не только виртуальные потоки

Начиная с Java 19 нам доступны виртуальные потоки, которые отличаются от обычных, тем что умеют освобождать поток операционной системы во время блокирующих I/O операций. Для этого на уровне JVM был реализован механизм сохранения в хипе и восстановления из хипа стека вызова. Проще говоря, были реализованы полноценные корутины на уровне JVM.

И это небольшая революция, на которую мало кто обратил внимание. Само API для таких нативных корутин непубличное, доступно через класс jdk.internal.vm.Continuation, в котором есть методы yield() и run() для сохранения и восстановления стека вызова соответственно. Но получить доступ до него несложно, нужно лишь добавить пару аргументов в строку запуска JVM (либо воспользоваться инструментом, который позволяет обходить ограничения JPMS).

Поэтому представляю свою небольшую библиотеку для доступа к нативным корутинам на Java: https://github.com/Anamorphosee/loomoroutines.

https://habr.com/ru/articles/785334/
👍1
Виртуальная машина Java (JVM) является краеугольным камнем платформонезависимых возможностей Java. Он позволяет выполнять байт-код Java на любом устройстве, поддерживающем JVM. Центральным элементом этого механизма является .classфайл, который представляет собой скомпилированную версию исходных файлов Java. Цель этой статьи — объяснить структуру и содержимое файла Java .class, а также то, как он работает.

https://medium.com/@AlexanderObregon/the-anatomy-of-a-java-virtual-machine-class-file-e3773d23f3e3
👍1👎1
Обработка файлов — важный аспект, с которым мы часто сталкиваемся. Когда дело доходит до записи данных в файлы, обычно используется класс FileWriter . В этом классе два важных метода, flush() и close(), играют разные роли в управлении потоками вывода файлов.

В этом уроке мы рассмотрим обычное использование FileWriter и углубимся в различия между его методами flush () и close() . https://www.baeldung.com/java-filewriter-flush-vs-close
Как загружать классы в Java 8 и Java 9+?

Привет, Хабр! Я разработчик в Институте Системного Программирования РАН, занимаюсь разработкой статического анализатора Svace. Недавно я столкнулся с задачей самостоятельной загрузки классов в JVM, что оказалось непросто, потому что в проекте мы используем модули Java.

Модули появились в Java, начиная с версии 9. Прошло уже несколько лет, но если попытаться найти актуальную информацию о связи модулей и загрузчиков классов, её придётся собирать по крупицам. В статье я поделюсь своим опытом изучения вопроса самостоятельной (и автоматической) загрузки классов с помощью кастомного загрузчика, а также разберу примеры, описывающие большинство случаев загрузки, постараюсь их объяснить. https://habr.com/ru/companies/isp_ras/articles/788618/
👍1
Комплексное путешествие от Java 8 к Java 21 с примерами кода основных улучшений API»
Привет друзья! В этой статье я хотел бы поговорить о различных версиях Java. Я хотел охватить каждую важную функцию и API, которые были представлены в каждой версии Java, от Java 8 до Java 21, с примерами кодирования, чтобы получить больше информации.

https://medium.com/@rathod-ajay/a-comprehensive-journey-from-java-8-to-java-21-with-code-examples-of-essential-api-enhancements-6817d2ab3ba8
Гексагональная Архитектура и Spring Boot.

Всем привет!

Хочу рассказать про опыт применения гексагональной архитектуры в одном из наших микросервисов. С чем столкнулся и какие выводы сделал.

Читать далее https://habr.com/ru/articles/795127
Java без DTO
Выход за рамки DTO для улучшения дизайна приложений

https://medium.com/@bubu.tripathy/dto-free-java-ee70c43b5ad5
Методы в Java – объяснение на примерах кода

Методы необходимы для организации проектов Java, поощрения повторного использования кода и улучшения общей структуры кода.

В этой статье мы рассмотрим, что такое методы Java и как они работают, включая их синтаксис, типы и примеры. https://www.freecodecamp.org/news/java-methods

Создайте приложение Spring Boot с помощью AI Assistant

В этой статье мы создадим небольшое веб-приложение Java Spring Boot в IntelliJ IDEA с помощью JetBrains AI Assistant .https://blog.jetbrains.com/idea/2024/02/build-a-spring-boot-app-with-ai-assistant