我的网页是用 jsp 写的,让用户插入了很多数据到数据库。我想写一个定时跑的东西,能够定时把数据库的内容生成一个报表发给我。这个定时器要怎么写?用什么方法?是写成 jsp 还是写成 java 的程序?

因为对 Java 不熟悉,仔细调研了一下,觉得有如下几种方法可以考虑:

  1. 如果是发邮件通知的话, 自己在后台 timer 一个 job 去做;如果是想用页面刷新来统计,那就 jsp 主动刷。
  2. 使用 Quartz 库。
  3. 还有一个方法,用系统的办法来解决,就是操作系统自带的定时器或是系统计划任务 cron,大不了里头搁一句批处理调 java 程序。
  4. 还有可以用 cron4j 这个东西,cron4j 挺好用的,又简单。

个人建议别用 Quartz 这玩意,建议写个可执行 jar,放到 server上用 crontab 或者 Window 计划任务跑。Quartz问题其实很多,不建议再增加web app的负担。