깜놀하는 해므찌로

Java 자바 캘린더 달력형 -> 데이트형 형변환 예시 / 데이트형 -> 문자열 형변환 예시 본문

IT

Java 자바 캘린더 달력형 -> 데이트형 형변환 예시 / 데이트형 -> 문자열 형변환 예시

agnusdei1207 2022. 8. 18. 17:18
반응형
SMALL
/* 날짜 포멧 */
String searchStartDate = searchVO.getSearchStartDate();
String searchEndDate = searchVO.getSearchEndDate();

/* 포멧 형식 : 문자열 -> 데이트형 */
SimpleDateFormat formatter = new SimpleDateFormat("yyyy.MM.dd"); 
/* 포멧 형식 : 데이트형 -> 캘린더형 */
DateFormat dateFormat = new SimpleDateFormat("yyyy.MM.dd");

/* 포멧  */ 
Date startDate = (Date) formatter.parse(searchStartDate); 
Date endDate = (Date) formatter.parse(searchEndDate);

/* 두 날 차이 계산 */
int length = (int)Math.abs((endDate.getTime() - startDate.getTime())/(1000 * 60 * 60 * 24));

/* day 단위 길이로 배열 길이 셋팅 */
arrEt01VO = new Et01VO[31];  
arrOt01VO = new Ot01VO[31];       

/* 달력  */
Calendar cal = Calendar.getInstance();

/* 달력 날짜 셋팅 */
cal.setTime(startDate);  
/* 날짜 +1 */
cal.add(Calendar.DATE, 1);

/* 캘린더형 -> 데이트형 -> 문자열 형변환 */
String tempDate = dateFormat.format(cal.getTime());   
System.out.println("결과 조회 : " + tempDate);

1. JSP 로부터 넘어온 문자열 시작날과 종료날을 전달 받는다.

2. 시작일로부터 +1 씩 카운트하여 종료날까지 DB 조회를 하기 위해 날짜를 셋팅한다.

3. 우선 두 날짜의 차이를 하루 기준으로 잘라내어 반복할 수 있도록 한다. : int length

4. 두 날짜의 차가 음수가 나올 수 있으므로 절대값 처리

5. 달력형 데이트에 +1 씩 한 후 결과를 "2022.08.15" 처럼 만들기 위해 포멧을 진행한다.

6. 결과 값을 문자열 변수에 담은 후 결과를 출력하여 확인한다.

 

반응형
LIST