Spring now has a scheduling annotation feature. You can either use Quartz or use Spring Scheduling.
You'd have to set up a Spring context - look into the ContextLoaderListener (google it, for an example) - you mount it in your web.xml, and it will load a Spring configuration that you point to.
For example, you could use this setup:
/ (web root)
-- WEB-INF
-- spring
--- applicationContext.xml
Then use the path:
/WEB-INF/spring/applicationContext.xml when configuring the ContextLoaderListener parameters.
Ok, once that is done (again, plenty on setting up this in web.xml on Google) you can set up beans to fire via Quartz or by Spring's scheduler options. See this page for details:
http://static.springsource.org/spring/docs/3.0.5.RELEASE/reference/scheduling.html
See 25.6 for all the details you need to use quartz. You'll need to import the Quartz jars, but beyond that, this may really do it for you:
25.6.3: here are two types of quartz jobs you can schedule - direct from the documentation above.
SO access to simple repeating jobs, CRON syntax support, using Quartz jobs.
It really is a nice feature of the framework.
You should also check out @Scheduled and @Async - you can annotate a method async and have it run outside of your
thread. Pretty nifty for certain 'fire and forget' operations where normally you needed to set up JMS and a queue in the past.