JAVA/SPRING 2013. 9. 25. 00:35

cafe24 jsp 호스팅 받고 있다.


spring @Scheduled 중복 수행...

많이 찾아봤다...


톰캣 스타트 하면....


[ INFO] [2013-09-25 00:06:49,249][main] AbstractApplicationContext.java.prepareRefresh()-[495 Line] Refreshing WebApplicationContext for namespace 'appServlet-servlet': startup date [Wed Sep 25 00:06:49 KST 2013]; parent: Root WebApplicationContext

...
[ INFO] [2013-09-25 00:06:56,148][main] AbstractApplicationContext.java.prepareRefresh()-[495 Line] Refreshing WebApplicationContext for namespace 'appServlet-servlet': startup date [Wed Sep 25 00:06:56 KST 2013]; parent: Root WebApplicationContext


이렇게 두번 올라간다.(안올라가면 좋은건지 나쁜건지...모르겟다.


문제는 @Scheduled 이 두번 실행된다.

아주 약간의 시간차를 두고....


인터넷 찾아봐도 없다.

그래서....

우회?적인 방법으로 처리함.


DB 처리 방식.



CREATE TABLE `TBCRON01` (

  `CLASSIFICATION` varchar(50) NOT NULL COMMENT '크론작업구분',

  `JOBDATE` varchar(20) NOT NULL COMMENT '작업등록시간',

  PRIMARY KEY  (`CLASSIFICATION`,`JOBDATE`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;



    <insert id="cronInsert" parameterType="java.util.HashMap">
    INSERT TBCRON01 
    VALUES(#{classification}, #{jobdate})
    </insert>


@Resource(name="sqlSession")

private SqlSession session;


HashMap<String, String> mp = new HashMap<String, String>();

mp.put("classification", "DatabaseBackupExecutor");

mp.put("jobdate", CommonUtil.getDateFormat("yyyy_MM_dd_HH_mm"));

session.update("SqlCronMapper.cronInsert", mp);


꼼수긴 해도...어쩔 도리가 없다....



posted by 나는너의힘
: