TGViewer
Channel Public Channel
Java Ready | Программирование

Java Ready | Программирование

@java_ready

Авторский канал по разработке на Java.
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!

Cотрудничество: @energy_c
Subscribers
9.26K
Photos
1.4K
Videos
77
Links
759

Showing posts older than #1643 · Back to latest

Older Posts 12 shown
Post #1641 1.77K
  • 😁 12
  • ❤ 3
  • 👍 3
Post #1640 2.06K
Менеджер истории изменений!

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

Структура записи истории:
record HistoryEntry(String action, String value, LocalDateTime time) {}


Хранилище истории:
List<HistoryEntry> history = new ArrayList<>();


Фиксация изменения:
history.add(new HistoryEntry(
"UPDATE_PASSWORD",
"github.com",
LocalDateTime.now()
));


Просмотр всей истории:
for (HistoryEntry h : history) {
System.out.println(h.time() + " | " + h.action() + " | " + h.value());
}


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

👉 Java Ready | #совет
  • 👍 6
  • ❤ 5
  • 🔥 5
Post #1638 1.81K
☕️ Алгоритмы и структуры данных!

Автор рассуждает о том, почему проблемы производительности и странного поведения сервисов часто связаны не с отсутствием сложных алгоритмов, а с их неправильным применением.

В этой статье:
• Алгоритмы сами по себе бесполезны без задачи и корректной модели данных
• Переусложнение решений, частая причина технических проблем
• Грамотная постановка задачи важнее выбора модного алгоритма


Читать статью на Habr!


👉 Java Ready | #статья
  • 👍 6
  • 🔥 5
  • ❤ 4
Post #1633 1.85K
👩‍💻 Разбираем KeyStore — фундамент безопасности в Java-приложениях!

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

Использование KeyStore делает работу с криптографией управляемой и воспроизводимой. Вместо разрозненных файлов появляется централизованное хранилище, которое легко переносить и обновлять.

👉 Java Ready | #шпора
  • 🔥 9
  • ❤ 5
  • 👍 4
Post #1631 1.9K
📂 Напоминалка по версиям Java

Java постоянно развивается, и на картинке показано, как менялись ключевые фичи с 8 по 11 версии.

Лямбды, var, Optional, Stream API, Immutable List, unified logging всё в одной таблице.

Сохрани, чтобы быстро вспомнить, что появилось в какой версии!

👉 Java Ready | #ресурс
  • 👍 10
  • ❤ 8
  • 🔥 6
Post #1630 2.01K
Поиск файлов в папке!

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

Задаём папку для поиска:
Path dir = Path.of("docs");


Проходим по файлам рекурсивно:
Files.walk(dir)


Фильтруем по условию:
.filter(p -> p.toString().endsWith(".pdf"))


Выводим найденные файлы:
.forEach(p -> System.out.println(p));


🔥 Удобно для поиска логов, документов, отчётов и автоматизации задач.

👉 Java Ready | #совет
  • ❤ 9
  • 👍 5
  • 🔥 4
Post #1628 1.85K
❤️ Инженерия создания микросервиса на Spring WebFlux!

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

• Проектирование REST API
• Использование Spring WebFlux
• Генерация кода через
• Управление схемой БД


🔊 Читать статью на Habr!


👉 Java Ready | #статья
  • 🔥 6
  • ❤ 5
  • 👍 4
Post #1627 1.85K
Поисковик по текстовому файлу!

Иногда нужно быстро найти нужную информацию в большом .txt файле. Java позволяет построчно читать файл и искать совпадения без загрузки всего в память.

Указываем файл и слово для поиска:
var file = java.nio.file.Path.of("data.txt");
var query = "error";


Готовим счётчик найденных строк:
int found = 0;


Читаем файл построчно и проверяем каждую строку:
try (var lines = java.nio.file.Files.lines(file)) {
for (var line : (Iterable<String>) lines::iterator) {


Ищем совпадение и выводим строку:
        if (line.toLowerCase().contains(query.toLowerCase())) {
System.out.println(line);
found++;
}
}
}


Печатаем итог поиска:
System.out.println("Найдено строк: " + found);


🔥 В итоге получаем простой поисковик по текстовому файлу. Подходит для логов, отчётов и больших текстов.

👉 Java Ready | #практика
  • ❤ 8
  • 👍 7
  • 🔥 6
Post #1625 2.14K
📂 Шпаргалка по сортировке в Java!

Например, Comparable задаёт естественный порядок внутри класса через метод compareTo(), а Comparator реализует внешнюю кастомную сортировку через compare(o1, o2).

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

Сохрани, чтобы не забыть!

👉 Java Ready | #ресурс
  • ❤ 9
  • 👍 5
  • 🔥 4
Post #1624 2.04K
Запоминатор паролей в консоли!

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

1. Модель записи:

record Entry(String resource, String login, String password) {}


2. Хранилище в памяти:

List<Entry> storage = new ArrayList<>();


3. Добавление записи:
System.out.print("Введите ресурс: ");
String resource = sc.nextLine().trim();

System.out.print("Введите логин: ");
String login = sc.nextLine().trim();

System.out.print("Введите пароль: ");
String password = sc.nextLine();

storage.add(new Entry(resource, login, password));
System.out.println("Сохранено");


4. Вывод всего сохранённого:
System.out.println("=== Сохранённые записи (" + storage.size() + ") ===");
for (Entry e : storage) {
System.out.println("- " + e.resource() + " | " + e.login() + " | " + mask(e.password()));
}


5. Маска пароля:
static String mask(String s) {
return s.length() <= 2 ? "**" : s.substring(0, 2) + "*".repeat(s.length() - 2);
}


🔥 Дальше можно добавить шифрование, поиск по тегам и многое другое.

👉 Java Ready | #совет
  • ❤ 7
  • 🔥 5
  • 👍 4
Post #1622 1.98K
☕️ Google Guava — полезные утилиты и расширения!

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

Оставляю ссылочку: GitHub 📱


👉 Java Ready | #ресурс
  • ❤ 12
  • 👍 7
  • 🔥 5
Post #1617 1.91K
👩‍💻 Парсим Wi-Fi сети в Windows!

Java не имеет прямого API для работы с Wi-Fi, но может запускать системные утилиты Windows и разбирать их вывод.

В этом посте:
• Запускаем netsh;

• Считываем вывод консоли;

• Парсим SSID доступных Wi-Fi сетей.


Такой приём полезен для утилит, установщиков, и Java-приложений, которым нужно знать текущее Wi-Fi сети.

👉 Java Ready | #гайд
  • 🔥 9
  • 👍 5
  • ❤ 4
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 →