Core issue
Catalyst switches like 3500XL, 2900XL, 2940, 2950, 2970, 3550, 3560 and 3750 do not have a battery-supported system clock. Therefore, they do not maintain the system time on reload. The switch clock has to either be manually set or configured.
If no other source of time is available, you can manually configure the current time and date after the system is restarted. The time remains accurate until the next system restart. It is recommended that you use manual configuration only as a last resort.
Resolution
In order to resolve this issue you need an outside source like Network Time Protocol (NTP), Simple Network Management Protocol (SNMP) or another time synchronization service to which the switch can synchronize. This way you do not need to manually set the system clock.
For more information, refer to the Managing the System Time and Date section of Administering the Switch.