Java Developer – Telegram
Java Developer
15.8K subscribers
1.86K photos
135 videos
2 files
2.07K links
Авторский канал действующего разработчика — интересные заметки, новые технологии, библиотеки и фреймворки

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

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

Реклама на бирже: https://telega.in/c/java_tg
Download Telegram
👩‍💻 Spring Security 6: Авторизация и аутентификация на основе БД

В данной статье автор представляет вашему вниманию минимальный скелет сервиса с авторизацией и аутентификацией на основе БД, с нескольким эндпоинтами, допуски к которым регулируются ролями и уровнями доступа.

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

Ссылка на статью — КЛИК

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
11💯1
Что выведет код сверху?
Anonymous Quiz
21%
10, 12, 14
17%
12, 14
47%
10, 14
7%
11, 13, 15
8%
14
😁13💯64
👩‍💻 Log4j

Log4j — это популярный фреймворк для логирования в Java.

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

Зависимость Maven — КЛИК

Следующий этап после подключения библиотеки — создание конфигурационного файла. Создайте файл log4j2.xml (или log4j2.properties) в ресурсах проекта и настройте его в соответствии с вашими потребностями:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="Console"/>
</Root>
</Loggers>
</Configuration>


➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
21
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣89😁12💯4
Вопрос с собеседования

Какие существуют способы перебирать элементы списка?

Ответ: ответ на картинке.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
241
👩‍💻 Java 22: Что нового?

В данной статье автор более подробно рассказывает о новой общедоступной версии Java 22. В этот релиз попало около 2300 закрытых задач и 12 JEP'ов.

Java 22 не является LTS-релизом, и у неё будут выходить обновления только полгода (до сентября 2024 года).

Ссылка на статью — КЛИК

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
83💯2😁1
Какой класс отвечает за получение информации от пользователя?
Anonymous Quiz
68%
Scanner
9%
Get
1%
Out
12%
Scaner
9%
System
13😁6
👩‍💻 Records

Records (записи) — это новая возможность, добавленная в Java 14, которая предоставляет удобный способ создания неизменяемых классов для представления данных.

Они представляют собой компактный способ определения классов, которые автоматически генерируют конструкторы, методы доступа и другие стандартные методы.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
253
Вопрос с собеседования

Как создать Base64 кодировщик и декодировщик?

Ответ: ответ на картинке.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
21
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣47😁85💯2
Сколько параметров может принимать функция?
Anonymous Quiz
4%
Не более 3
2%
Не более 10
2%
Не более 5
2%
Не более 20
90%
Неограниченное количество
🤣16😁95
👩‍💻 Liquibase

Liquibase — это инструмент для управления изменениями в схеме базы данных. Он позволяет разработчикам определить и отслеживать изменения в структуре базы данных с помощью миграционных скриптов.

Liquibase поддерживает различные СУБД, такие как MySQL, PostgreSQL, Oracle и другие.

Основные компоненты Liquibase:

Changelog — это файл XML, YAML или JSON, который содержит список миграций и их порядок выполнения. Changelog определяет, какие изменения должны быть применены к базе данных.

Changeset — это отдельная единица изменения в базе данных. Он может содержать операции, такие как создание таблицы, добавление столбца, изменение данных и другие.

DatabaseChangeLog — это таблица в базе данных, которая хранит информацию о примененных миграциях. Она используется для отслеживания состояния базы данных и контроля версий.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
177👍1😁1
Вопрос с собеседования

Что такое StringJoiner?

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

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
18
👩‍💻 Внутренний мир: Java NIO

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

Статья не является руководством по использованию или собранием best-practices, она направлена в первую очередь на обзор существующих в Java NIO каналов и принцип работы неблокируемого I/O.

Ссылка на статью — КЛИК

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
8
5
Что выведет код сверху?

Ошибка компиляции
Anonymous Quiz
19%
false false
21%
true true
5%
false true
55%
true false
10
👩‍💻 ListFormat

ListFormat — это инструмент, появившийся в Java 22, позволяющий форматировать список строк с учетом языковых особенностей.

Он полезен для создания списков строк, которые будут отображаться для пользователей. Пусть у нас есть список из трех дней недели — «Понедельник», «среда», «пятница». С помощью ListFormat мы можем отформатировать его следующим образом — «Понедельник» , «среда» и «пятница» в виде списка.

Предусмотрено 3 типа конкатенации: STANDARD, OR, UNIT и 3 стиля для каждого типа: FULL, SHORT, NARROW.

Подробнее — КЛИК

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
15
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣609😁6💯1
Вопрос с собеседования

Как работает HashMap при попытке сохранить в него два элемента по ключам с одинаковым hashCode(), но для которых equals() == false?

Ответ: По значению hashCode() вычисляется индекс ячейки массива, в список которой этот элемент будет добавлен. Перед добавлением осуществляется проверка на наличие элементов в этой ячейке. Если элементы с таким hashCode() уже присутствует, но их equals() методы не равны, то элемент будет добавлен в конец списка.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
215
👩‍💻 Doxygen

Doxygen — это кроссплатформенная система документирования исходных текстов, которая поддерживает C++, Си, Objective-C, Python, Java, PHP, C# и другие.

Пример шаблонного документирования класса:
/**
* Описание класса.
*/
public class MyClass {
// код класса
}


Пример документирования при помощи Doxygen:
/**
* Описание класса.
*/
public class MyClass {
/**
* Описание метода.
* @param param Описание параметра.
* @return Описание возвращаемого значения.
*/
public int myMethod(int param) {
// код метода
return param;
}
}


Doxygen сгенерирует документацию, включая описание класса и метода, а также информацию о параметрах и возвращаемом значении.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
17💯2