See if the javax.swing.Timer helps you. You can schedule something for a future time and it will sleep until the time and then do the thing. If this is your only scheduled event it might be overkill. You might start a thread that does something like this in a forever loop:
No guarantees anything there is spelled right or easy to do but hope it gives you some inspiration.
A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of the idea. John Ciardi
Assuming you have a process running continuously, you can start a thread that is responsible for showing the current date at the beginning of each day. You can then calculate the length of time before the beginning of the next day. You can then use Thread.sleep to sleep until it is time to show the display. That way, you don't use a lot of system resources waiting and checking. Check out Calendar, Runnable (and Thread). Good Luck Don