1. 라이브러리 jar 파일
quart 라이브러리
http://www.quartz-scheduler.org/
quartz-all-1.6.6.jar
quart - struts1 연동 라이브러리
http://demo.jgsullivan.com/struts/download.html
jgs-struts-0.3-dev.jar
jgs-quartz-0.1d.jar
2. Quart 참조 링크
anyframework
http://dev.anyframejava.org/docs/anyframe/4.2.0/reference/htmlsingle/anyframe.html#tech_ss_sec001
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36  | ============================================================== QuartzTest.java ============================================================== 01 package kr.co.rastech.common.quartz; 02  03 import java.text.SimpleDateFormat; 04 import java.util.Date; 05  06 import org.apache.commons.logging.Log; 07 import org.apache.commons.logging.LogFactory; 08 import org.quartz.Job; 09 import org.quartz.JobExecutionContext; 10 import org.quartz.JobExecutionException; 11  12  13 public class QuartzTest implements Job{ 14  15     private Log logger = LogFactory.getLog(this.getClass()); 16  17     @Override 18     public void execute(JobExecutionContext arg0) throws JobExecutionException { 19         long now = System.currentTimeMillis(); 20  21         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss a"); 22  23  24         String nowDateTime = sdf.format(new Date(now)); 25  26         logger.debug(nowDateTime + " : test"); 27     } 28  29 }  | cs | 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67  | web.xml ==============================================================     <servlet>         <servlet-name>ActionServlet</servlet-name>         <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>         <init-param>             <param-name>config</param-name>             <param-value>/WEB-INF/config/struts-config.xml</param-value>         </init-param>         <load-on-startup>1</load-on-startup>     </servlet>     <servlet-mapping>         <servlet-name>ActionServlet</servlet-name>         <url-pattern>*.do</url-pattern>     </servlet-mapping>     <servlet>         <servlet-name>QuartzInitializer</servlet-name>         <servlet-class>org.quartz.ee.servlet.QuartzInitializerServlet</servlet-class>         <init-param>             <param-name>shutdown-on-unload</param-name>             <param-value>true</param-value>         </init-param>         <init-param>         <param-name>start-scheduler-on-load</param-name>       <param-value>true</param-value>     </init-param>         <load-on-startup>3</load-on-startup>     </servlet> ==============================================================  | cs | 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77  | struts-config.xml /WEB-INF/config/struts-config.xml위치 ============================================================== <struts-config>     <action-mappings>         <action path="/test" forward="/index.jsp"></action>     </action-mappings>     <!-- Quartz framework 2010.08.09 -->     <plug-in className="com.jgsullivan.struts.plugins.QuartzPlugIn">         <set-property property="configPath" value="/WEB-INF/quartz-config.xml"/>     </plug-in> </struts-config> ============================================================== quartz-config.xml /WEB-INF/quartz-config.xml위치 ============================================================== <?xml version="1.0" encoding="UTF-8"?> <quartz-config>     <trigger-group>         <trigger name="secondTrigger" className="org.quartz.CronTrigger">             <set-property property="timeZone" value="Pacific/Marquesas" />             <set-property property="cronExpression" value="* * * * * ?" />         </trigger>     </trigger-group>     <job-group>         <job name="dumbJob" className="kr.co.rastech.common.quartz.QuartzTest" />     </job-group> </quartz-config>  | cs | 
※ 시간을 아무리설정해도 잘안맞는다 싶으면 timeZone을 서버컴시간으로 바꿔야합니다.
[<set-property property="timeZone" value="Pacific/Marquesas" />]
이부분을 삭제하면 default로 서버컴시간이 설정됩니다.
※ WAS가 이중화 되어있으면 2번씩 실행 될수 있으니 아이피 체크해야 합니다.
출처: http://thdnf1004.tistory.com/entry/quart-연동-스케쥴링 [야근없는 세상을 위해~]
'IT > Java' 카테고리의 다른 글
| java excel poi (눈금선,병합,배경색,테두리,글씨체,사이즈,금액,천단위) (0) | 2018.03.28 | 
|---|---|
| Maven - 실행 가능한 Jar 파일 만들기 (0) | 2018.03.20 | 
| [JAVA] java replace 실행시 주의사항들 (1) | 2018.02.19 | 
| java 파일 일괄다운로드 (2) | 2018.02.06 | 
| Spring에서 form-data에 XSS 방지 처리 하기(lucy-xss-filter) (0) | 2018.01.16 | 
