Поисковик новостей (RSS), написанный на Java + SQLite

от автора

Данная идея не претендует на уникальность. Суть проста — тратить как можно меньше времени на чтение интересующих Вас новостей, отсеивая ненужные заголовки. Проект делал в рамках моего обучения языку Java и SQL, начиная с 2018 года. В настоящий момент программа включена в Реестр российского ПО. Функционал продублирован в Telegram боте.

Актуальная версия программы для windows и linux находится на avandy-news.ru. Исходный код проекта будет полезно изучить тем, кто хочет создавать свои десктопные приложения на Swing (но рекомендую изучать JavaFX) или для изучения процесса работы с базой данных посредством чистого JDBC. Для улучшения дизайна интерфейса применён FlatLaf.

Демонстрация исключения слова "принц". Теперь заголовки, содержащие это слово, показаны не будут!

Демонстрация исключения слова «принц». Теперь заголовки, содержащие это слово, показаны не будут!

Поиск ведётся по активным RSS, указанным в Sources. При создании нового пользователя будут автоматически добавлены 20 различных источников новостей.

Возможности программы
  • многопользовательское приложение с персонализированными настройками интерфейса и фильтрацией новостей

  • поиск новостей по одному слову или по нескольким ключевым словам за период без фильтрации заголовков

  • поиск всех новостей с применением фильтрации

  • возможность добавления/удаления/деактивации источников новостей (более 20 источников RSS по умолчанию)

  • анализ частоты употребления слов в новостных заголовках — «Топ-10» с применением метода схожести строк Джаро-Винклера

  • отображение заголовков по двойному клику на слове из «Топ-10» за период

  • возможность исключать слова из «Топ-10» и возвращать их обратно

  • установка ощущений от прочтения новости (позитив/негатив) и её значимости (вес)

  • автоматическая установка ощущений по заранее установленным правилам (добавление/удаление/деактивация правил определения позитив/негатив)

  • встроенная СУБД SQLite

  • сохранение заголовков в избранные

  • ручное добавление новостей в архив

  • уведомление о заранее добавленных событиях

  • быстрый переход на часто используемые сайты

  • экспорт результатов в Excel и CSV

  • двойной щелчок по заголовку открывает веб-страницу с новостью

  • быстрое переключение между пользователями (можо завести несколько пользователей с разными настройками и фильтрами)

  • для синхронизации между компьютерами можно поменять путь к файлу базы данных в настройках приложения

  • сохранение состояния интерфейса

  • разнообразные темы интерфейса

  • настройка прозрачности окна

  • журнал работы программы

  • режим чтения

Приложение работает в Linux. Ссылка для скачивания здесь. Перед запуском jar файла выполните установку Java командой sudo apt install default-jre

Путь к файлам программы:

Windows: C:\Users\username\News

Linux: home/username/News


ссылка на оригинал статьи https://habr.com/ru/articles/595749/