Библиотека джависта | Java, Spring, Maven, Hibernate
24.8K subscribers
1.88K photos
38 videos
42 files
2.66K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://yangx.top/proglibrary/9197

Для обратной связи: @proglibrary_feeedback_bot

По рекламе: @proglib_adv

РКН: https://gosuslugi.ru/snet/67a5bbda1b17b35b6c1a55c4
加入频道
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

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

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
charBuffer

Метод charBuffer() используется для получения буфера символов из строки. Он принадлежит классу String.

Этот метод возвращает объект CharBuffer, который представляет последовательность символов строки.
CharBuffer позволяет эффективно читать и манипулировать символами строки без создания копий.

В этом примере создается строка «Hello». Затем из этой строки получаем буфер символов методом charBuffer().
В цикле посимвольно читаем из буфера символы и выводим их на экран.
⛓️🗄️ Соединения в SQL. Часть 1. Типы соединений и простые примеры

Вводная статья об такой важной теме в SQL как соединения

В статье рассматриваются типы соединений и разбираются базовые примеры

👉Ссылочка
🤔 Всё ещё используете If/else валидацию в Spring 6.0+ / SpringBoot 3.0+?

Если да, то вам следовало бы обновить свой код, используя приведенные ниже рекомендации.

Чтобы избежать влияния несанкционированных параметров на ваш бизнес, в ваших веб-сервисах должна быть реализована проверка параметров на уровне контроллера! В большинстве случаев параметры запроса можно разделить на два следующих вида:

👉 POST и PUT-запросы, использующие requestBody для передачи параметров.
👉 GET-запросы, использующие requestParam/PathVariable для передачи параметров.

Читать далее

#туториал
⚡️Итоги недели в мире ИИ и обзоры новых сервисов

У нас вышла очередная статья на 📰 по мотивам еженедельной рассылки про последние новости и тенденции в мире ИИ.

Ниже — небольшая выдержка из статьи, а целиком читайте здесь 👈

💬Новости

▫️ Создан новый тест для ИИ — WMDP (Weapons of Mass Destruction Proxy), который будет проверять модели на знание:
— способов создания и применения всех видов оружия массового поражения;
— методов взлома систем кибербезопасности.
▫️Глава OpenAI Сэм Альтман обнародовал переписку с Илоном Маском, в которой последний указывает на то, что ожидает от OpenAI прибыли. Это противоречит недавним заявлениям Маска.

🛠 Инструменты

▫️ Corgea — находит и автоматически исправляет уязвимости в коде.
▫️ GenWebBilder — делает полнофункциональные веб-сайты по скетчам и скриншотам.
▫️ Framedrop AI — автоматически конвертирует длинные видео, влоги и стримы в рилсы и короткие клипы для X и TikTok.
▫️ Vocalo AI — личный репетитор, который научит свободно говорить по-английски.

👍 Робототехника

Профессор Кен Голдберг из Университета Беркли поделился соображениями по поводу технических, этических и экономических проблем, которые препятствуют широкому внедрению ИИ-роботов на данном этапе.

➡️ Вы можете подписаться на email-рассылку здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
Очередной #дайджест для джавистов

👩‍💻 Безопасность веб-приложений — разработка проектов со Spring

👩‍💻 Погубит ли Java 22 сборочные инструменты? — выполнение исходного кода сразу из нескольких файлов и как это работает

👩‍💻 Enum на примерах — спикер рассказывает о Enum в языке программирования Java, показывает разные варианты применения Enum на примерах

👩‍💻 Jextract — инструмент для преобразования кода C в Java-код, поддерживающий различные аспекты C++

👩‍💻 Новый терминал — JetBrains представили бету нового терминала для своих IDE
💬 Open Source по-русски: путь к технологической независимости или обочина прогресса?

Для одних организаций open source является ключом к преодолению зависимости от иностранных вендоров и драйвером инноваций, для других — дырой в безопасности и обочиной технологического прогресса.

Мы хотим изучить текущее состояние и возможности открытого ПО в России. Пройдите опрос и помогите нам увидеть ситуацию глазами IT-профессионалов.

👉 Ссылка на опрос 👈

Прохождение займёт примерно 4 минуты
Монитор

Монитор представляет собой механизм, который обеспечивает синхронизированный доступ к критическим секциям кода, что позволяет избежать состояния гонки (race condition) и обеспечивает координацию между потоками.

Ключевое слово synchronized может быть применено к методам или блокам кода. Когда метод или блок кода помечен как synchronized, только один поток может выполнить этот код или метод в определенный момент времени. Если другой поток попытается войти в синхронизированный блок или вызвать синхронизированный метод, он будет ожидать, пока первый поток не завершит выполнение.
Маркерный интерфейс — это интерфейс, который не содержит ни одного метода.

Он используется для пометки классов, чтобы указать на определенные свойства или функциональность, которые могут быть использованы во время выполнения программы.
🎉🥳🍾 Кстати, нас уже больше 25 000! Спасибо за интерес к «Библиотека джависта».
📚Clean Code Cookbook: Recipes to Improve the Design and Quality of your Code (2023)

✍️Автор: Maximiliano Contieri

📃Страниц: 428

На реальных примерах из JavaScript, PHP, Java, Python и многих других языков программирования в этой книге представлены проверенные рецепты, которые помогут вам масштабировать и поддерживать большие системы

Что внутри:
🔸Шаг за шагом изучайте методы рефакторинга
🔸Получите наглядные примеры кода на нескольких современных языках программирования

Скачать книгу
#дайджест самых юзабельных фич в Java

✖️ Project Loom — определяет и реализует в Java новые легковесные параллельные примитивы

✖️ Project Amber — исследуйте и внедряйте, ориентированные на производительность функции Java, которые были приняты в OpenJDK JEP Process

✖️ ZGC — оптимизированный и допиленный сборщик мусора

✖️ Project Leyden — призван уменьшить время старта и достижения максимальной производительности для java-приложений

✖️ Project Valhalla — дополнение объектной модели Java объектами-значениями, сочетающими абстракции объектно-ориентированного программирования с характеристиками производительности простых примитивов
#вопрос_с_собеседования

LinkedList — это односвязный, двусвязный или четырехсвязный список?

Двусвязный. Каждый элемент LinkedList хранит ссылку на предыдущий и следующий элементы.
🔟 10 суровых истин, которые должен знать каждый джун

Вы думаете, что карьера в ИТ — это сплошные плюшки? Забудьте! Реальность жестока: низкие зарплаты на старте, бесконечные задачи и битва за релокацию. Откройте глаза на суровые реалии прямо сейчас!

👉 Читать статью
👉 Зеркало
🎉🎉 Вышел Spring AI 0.8.0

Проект призван упростить создание приложений, которые используют ChatGPT и другие AI-модели, предоставляющие API для взаимодействия. Разработчики Spring AI хотят дать абстракции для работы со всеми основными моделями так, чтобы между ними было легко переключаться с минимальным изменением кода. В этой версии представлена такая функциональность:

API для взаимодействия с AI-моделями от разных поставщиков: OpenAI, Microsoft, Amazon, Google, Huggingface и других;
поддержка Vector Store API, которое предоставляет интерфейс для взаимодействия с векторными БД, поддерживается 8 различных БД;
вызов функций — блоков кода в ИИ-моделях, фича для Open AI;
автоконфигурация и стартеры Spring Boot для моделей ИИ и векторных хранилищ;
ETL-фреймворк для Data Engineering.

Продолжение здесь

#почитать