В этом посте покажу, как удобно запускать код по таймеру — от однократных задач до бесконечных пингов. Всё на
ScheduledExecutorService
— мощно, безопасно и многопоточно.Сегодня рассмотрим:
• Создание планировщика задач.
• Запуск действий через задержку.
• Как делать повторяющиеся задачи.
• Правильное завершение работы потока.
Может быть полезно от фоновых задержек до автоочистки!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12❤6👍6
Например,
-Xmx8g
— устанавливает максимум памяти, -XX:+UseG1GC
— включает G1-сборщик мусора, а -XX:+PrintGC
— выводит события GC в консоль.На картинке — шпаргалка по опциям запуска JVM: стандартные, нестандартные и расширенные. Если работаешь с производительностью, памятью или отладкой Java-приложений держи всегда под рукой.
Сохрани, пригодится при оптимизации!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥5❤4
CSV-файлы в проектах есть везде: импорт, отчёты, админки. В этом посте покажу, как прочитать и распарсить CSV без зависимостей, используя только
Files.lines()
и Java Stream API
.Сегодня разберём:
• Как загрузить и распарсить CSV построчно.
• Извлечение заголовков и превращение данных в объекты.
• Применение это в реальных бэкендах и утилитах.
Используй для: парсинга отчётов, миграции данных, админ-утилит и API-обработки CSV.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12❤6👍4🤝3
Пишем утилиту, которая получает дату и выводит, как она будет выглядеть в формате США, Японии, Германии, Индии. Отличная практика работы с Locale, DateTimeFormatter и вводом с консоли.
В этом посте:
• Получаем дату с консоли.
• Используем DateTimeFormatter под каждую страну.
• Узнаём, где день пишется первым, а где год.
Задача помогает разобраться с Locale, форматами и обработкой дат в Java.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤9👍7
Копируем текст в буфер обмена!
Иногда нужно, чтобы программа автоматически скопировала что-то в буфер - ссылку, токен, пароль или результат.
Пример кода:
Теперь
👉 Java Ready | #практика
Иногда нужно, чтобы программа автоматически скопировала что-то в буфер - ссылку, токен, пароль или результат.
Toolkit.getDefaultToolkit
даёт Java доступ к ресурсам операционной системы, через getSystemClipboard
получаем буфер обмена, StringSelection
упаковывает строку в нужный формат, а setContents
уже помещает её в буфер.Пример кода:
import java.awt.*;
import java.awt.datatransfer.*;
String text = "Java"; // Текст для копирования
StringSelection data = new StringSelection(text); // Оборачиваем текст в объект для буфера обмена
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(data, null); // Копируем в буфер обмена
Теперь
text
уже в буфере обмена, и пользователь может просто нажать Ctrl+V. Удобно для генераторов, GUI-кнопок "Скопировать", логинов и DevTools.Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥7❤6
Группируй пользователей по ролям, считай количество заказов по статусам, строй распределения и собирай вложенные коллекции — всё в одну цепочку .stream().
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍5❤4