若是項目中須要使用到定時任務來完成某些業務,通常有兩種作法:定時任務依賴於項目;定時任務用批處理(windows執行)或者shell腳本(Linux)啓動,不依賴於項目。html
我的以爲,定時任務不依賴於項目的方式更優!獨立執行,不會影響到應用的性能。
java
不能使用hibernate等高級方式,或者公司框架使用的高級工具。由於shell腳本不依賴於項目,獨立執行的。mysql
用jdbc寫簡單的增刪改查業務的demo,具體可參考:http://blog.csdn.net/yanzi1225627/article/details/26950615web
最後,把完成業務的類經過Eclipse導出成jar,用以shell調用。
sql
bat文件:shell
.\jdk1.6.0\bin\java -Xms512m -Xmx512m -XX:NewRatio=3 -classpath .;./lib/mysql-connector-java-5.1.29.jar;./lib/match.jar com.test.web.Match數據庫
shell腳本:windows
/usr/java/jdk1.6.0_32/bin/java -Xms512m -Xmx512m -XX:NewRatio=3 -classpath ./match.jar:./mysql-connector-java-5.1.29.jar com.test.web.Match框架
其中,bat文件與shell腳本不一樣之處在於jdk所在路徑不一樣工具
.\jdk1.6.0\bin 指定jdk路徑
-Xms512m -Xmx512m -XX:NewRatio=3 配置跑當前腳本的內存
-classpath .;./lib/mysql-connector-java-5.1.29.jar;./lib/match.jar com.test.web.Match 跑當前腳本須要用到的jar,最後一個爲本身編寫且導出生成的jar。腳本會執行到Match.class的main方法
編譯代碼
定位到須要導出的Java文件
右鍵--export--選擇導出類型爲 JRE file --選擇保存jar的路徑--挑選main方法所在的Java文件--finish
詳細操做指引可參考:http://www.cnblogs.com/lionden/archive/2013/03/10/2952604.html