TGViewer
Channel Public Channel
Java Developer

Java Developer

@java_tg

Авторский канал действующего разработчика — интересные заметки, новые технологии, библиотеки и фреймворки

Сотрудничество: @bape_ads
Прайс: @bape_media

РКН: https://clck.ru/3GHfTK

Реклама на бирже: https://telega.in/c/java_tg
Subscribers
14.8K
Photos
2.2K
Videos
162
Links
2.5K

Showing posts older than #3051 · Back to latest

Older Posts 20 shown
Post #3049 3.66K
👩‍💻 От конфигурации к динамике. Новый API по созданию бинов в Spring

В статье разбирается новый API BeanRegistrar из Spring Framework 7 — он упрощает динамическую регистрацию бинов и заменяет устаревшие способы вроде BeanDefinitionRegistryPostProcessor.

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

⛓ Читать статью

tags: #статья

📱 Java Developer | Чат
  • ❤ 4
  • 👍 3
  • 🔥 2
Post #3048 3.76K
❔ Вопрос с собеседования

Что такое множество в Java и какие существуют его стандартные реализации?

Ответ: Множество (Set) в Java — это коллекция без повторяющихся элементов. Оно реализуется через интерфейс java.util.Set. Стандартные реализации в JDK:

▶ HashSet — основан на хеш-таблице, не сохраняет порядок элементов, допускает null.

▶ LinkedHashSet — расширяет HashSet, сохраняет порядок добавления.

▶ TreeSet — реализует NavigableSet, хранит элементы в отсортированном порядке по Comparable или Comparator.

▶ EnumSet — оптимизирован для хранения элементов одного перечисления (enum), очень быстрый и компактный.

▶ CopyOnWriteArraySet — потокобезопасная реализация на базе CopyOnWriteArrayList, используется, если читающих потоков больше, чем записывающих.

Эти классы покрывают разные сценарии: от высокой производительности до потокобезопасности и сортировки.


tags: #собеседование

📱 Java Developer | Чат
  • ❤ 16
  • 🔥 10
  • 👍 3
  • 💯 1
Post #3047 4.55K
Требования на вакансию джуна, 2025 год, фото в цвете:

📱 Java Developer | #memes
  • 🤣 76
  • 😁 13
  • ❤ 3
  • 🤯 1
Post #3046 4.65K
maven-cheat-sheet.pdf147.3 KB
👩‍💻 Шпаргалка по основным командам Maven

Полезная памятка, чтобы каждый раз не вспоминать — как собрать проект, запустить нужную фазу, пропустить тесты или посмотреть дерево зависимостей.

Всё нужное на одном листе: базовые команды, рабочие флаги, создание архетипов, часто используемые плагины и даже специфичные штуки вроде mvn help:effective-pom или dependency:analyze.

tags: #полезное #шпаргалка

📱 Java Developer | Чат
  • 👍 10
  • ❤ 5
  • 🔥 3
Post #3045 3.75K
  • 🔥 9
  • ❤ 6
Post #3043 3.94K
Такая валидация должна быть в каждом проекте 😆

📱 Java Developer | #memes
  • 🤣 38
  • ❤ 6
  • 😁 6
Post #3042 3.52K
👩‍💻 Неблокирующий вызов внешнего сервиса в процессе

В статье показано, как реализовать неблокирующие вызовы внешних API в бизнес-процессах с использованием BPMN-движков Camunda и Flowable.

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

⛓ Читать статью

tags: #статья

📱 Java Developer | Чат
  • 🔥 4
  • 👍 3
  • ❤ 2
Post #3041 3.55K
❔ Вопрос с собеседования

Какова структура у JWT-токена?

Ответ: JWT (JSON Web Token) состоит из трёх частей, разделённых точками:

▶️ Заголовок (Header) — содержит тип токена (JWT) и алгоритм подписи, например HMAC SHA256 или RSA

▶️ Полезная нагрузка (Payload) — включает так называемые “утверждения” (claims): данные вроде ID пользователя, срока действия токена, ролей и другой метаинформации

▶️ Подпись (Signature) — создаётся из заголовка и payload с использованием секретного ключа. Она гарантирует, что содержимое токена не было подделано.

Эти части кодируются в base64 и объединяются через точки: header.payload.signature.


tags: #собеседование

📱 Java Developer | Чат
  • ❤ 20
  • 👍 7
  • 🔥 5
Post #3040 4.03K
Будни тестировщика

📱 Java Developer | #memes
  • 🤣 42
  • ⚡ 5
  • ❤ 5
  • 👍 5
  • 😁 3
Post #3039 4.06K
👩‍💻 Архитектурные принципы Spring Security. Часть третья

В статье объясняется, как работает AuthenticationProvider — ключевая абстракция, отвечающая за проверку учетных данных и создание аутентифицированных объектов в Spring Security.

Автор на примере показывает, как реализовать собственный провайдер, зарегистрировать его в конфигурации и обрабатывать особые кейсы (например, “впускать Даниэля без пароля”) без нарушения встроенной логики безопасности.

Что вы узнаете из статьи:

▶️ Как устроено взаимодействие AuthenticationProvider и AuthenticationManager

▶️ Чем отличается Authentication до и после успешной проверки

▶️ Как обрабатывать логин под разные сценарии без переписывания фильтров

▶️ Как правильно возвращать null из authenticate()

▶️ Как подключать свои провайдеры в HttpSecurity и управлять порядком

▶️ Как логировать успешную аутентификацию через AuthenticationSuccessEvent


Это заключительная часть цикла, где архитектура Spring Security раскрывается через реализацию собственного AuthenticationProvider.

⛓ Читать статью

🔖 Предыдущая часть — КЛИК


tags: #статья

📱 Java Developer | Чат
  • ❤ 9
  • 🔥 3
  • 👍 2
Post #3038 3.34K
❔ Вопрос с собеседования

Из каких частей состоит HTTP-запрос?

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

tags: #собеседование

📱 Java Developer | Чат
  • ❤ 12
  • 👍 6
  • 🔥 2
Post #3035 4.05K
👩‍💻 Гибкий поиск в Spring Data Elasticsearch

В статье показывается, как в Spring Data Elasticsearch организовать поиск, который понимает запросы с ошибками, склонениями и неполными словами.

Например, чтобы “программирование” находилось по запросам “прога”, “програм”, “pragramirovanie” — подключаются fuzziness, русские стеммеры и настраиваются аналайзеры через Java-конфигурацию.

⛓ Читать статью

tags: #статья

📱 Java Developer | Чат
  • ❤ 9
  • 🔥 3
  • 🤣 1
Post #3034 3.7K
❔ Вопрос с собеседования

Что такое String Pool в Java и как он работает?

Ответ: String Pool — это специальная область в памяти, где хранятся строковые литералы. Когда создается строка с помощью литерала (например, String s = "Hello";), JVM проверяет, существует ли уже такая строка в пуле. Если строка с таким значением уже есть, используется существующая строка, иначе создается новая строка и добавляется в пул. Это позволяет экономить память, так как одинаковые строковые литералы будут ссылаться на один и тот же объект в пуле.

📱 Java Developer | #собеседование
  • 👍 14
  • ❤ 4
  • 🔥 3
  • 👨‍💻 1
Post #3031 3.83K
👩‍💻 Как устроена Caffeine — быстрая библиотека кэширования на Java

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

Автор показывает, почему эту библиотеку выбирают такие проекты, как Kafka и Cassandra, и что из её подходов можно применить в своих приложениях.

⛓ Читать статью

tags: #статья

📱 Java Developer | Чат
  • ❤ 6
  • 🔥 4
Post #3029 3.76K
  • 🤯 15
  • 🔥 7
  • ❤ 5
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →