날짜 검색을 위한 범위 탐색 기능 만들기

1. 참조

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

 

2. N년/월/주/일 전 탐색 코드

String sch_end_date = "2020-04-10"; // 기준(종료)일자

String sch_period = "3"; // 기준 수치 (년/월/주/일)

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
Date date = formatter.parse(sch_end_date);

String[] strDate = sch_end_date.split("-");

Calendar cal = Calendar.getInstance();
cal.set(Integer.parseInt(strDate[0]), Integer.parseInt(strDate[1]), Integer.parseInt(strDate[2]));

if(sch_date_type.equalsIgnoreCase("year")) { // N년전 탐색

	cal.add(Calendar.YEAR, -(Integer.parseInt(sch_period))); 
	cal.add(Calendar.MONTH, -1); 
	date = cal.getTime();
}
else if(sch_date_type.equalsIgnoreCase("month")) { // N월전 탐색
				
	cal.add(Calendar.MONTH, -(Integer.parseInt(sch_period) + 1)); 
	date = cal.getTime();
}
else if(sch_date_type.equalsIgnoreCase("week")) { // N주전 탐색
				
	date = new Date(date.getTime() + (1000*60*60*24*-(Integer.parseInt(sch_period) * 7))); 
}
else if(sch_date_type.equalsIgnoreCase("day")) { // N일전 탐색
				
	date = new Date(date.getTime() + (1000*60*60*24*-(Integer.parseInt(sch_period)))); 
}
			
String sch_start_date = formatter.format(date); // 탐색 결과 - 시작 일자

 

탐색된 시작일자와 종료일자로 쿼리에 검색 파라미터 투척~ ㅎㅎㅎ

+ Recent posts