WEB/Spring

Spring scheduler(스프링 스케쥴러)

메인페이지에 가입한 회원의 수를 표시해주고 싶은데

회원이 가입했을때 바로 표시되는게 아니라 매일 시간을 정해두고 자동으로 업데이트 하게 하고싶었다.

 

 

servlet-context에 

xmlns:task="http://www.springframework.org/schema/task"

http://www.springframework.org/schema/task 
http://www.springframework.org/schema/task/spring-task.xsd

추가 해주었고 

<context:component-scan base-package="com.min.app" />
<task:scheduler id="jobScheduler" pool-size="10" />
<task:annotation-driven scheduler="jobScheduler" />

 

context:component-scan base-package 에는 적용하는 경로 적어주면 되는데

com.min.app 으로 시작하는 패키지 모두를 선택했다

 

그다음 스케쥴러 사용할 class를 만들어주었다.

 

	public static int userCount ;
	public static int partiUser;
	public static int endEvent;
	public static int continueEvent;
	
    int count = 0;
		
		//스케줄러
		@Scheduled(cron ="0 0 12 * * *")
		public void scaduler() {
			count++;
			System.out.println(count); // 스케줄러가 적용되는지 확인하기 위한 count변수
			try {
				userCount = e_service.userTotalCount();
				partiUser = e_service.partiUserCount();
				endEvent = e_service.endEvent();
				continueEvent = e_service.continueEvent();
				
			} catch (Exception e) {
				e.printStackTrace();
			}
		}

 

static 변수를 이용하여 내가 적용할 컨트롤러에서 화면에 뿌려주기 위해 add해주었다!

 

static 변수 이용하기 위해 클래스.변수이름

 

출처 IBM Knowledge Center

반응형