Вам нужен пакет стандартных java классов для работы со временем -
java.time . Изучайте, разбирайтесь, применяйте.
Если вы пишете на java до 8, то да, joda-time вам поможет.
А если вы совсем ленивый и безинициативный, то
вот же.
P.S. Если вам таки нужно знать про выходные, праздничные и предпраздничные дни, то пользуясь случаем прорекламирую один из своих домашних проектов -
productive-kalendar . Правда он на kotlin. И делает не совсем точно то, что вам нужно.
Однако, может что-то для себя утащите. А точнее, я там достаю информацию о выходных, праздничных и предпраздничных днях с
портала окрытых данных, паршу её и сохраняю в json, который потом использую для выполнения запросов типа "Сколько рабочих дней между датами" и т.п.
Есть у одного моего товарища подобный проект на groovy про вытаскивание производственного календаря с популярных сайтов в json -
holidays-calendar