import org.apache.commons.lang3.StringUtils;
import org.joda.time.DateTime;
import org.joda.time.Period;
import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter;
import java.util.Locale;
/**
* 월 달력 생성기
*
* @author
*/
public class Test {
public static void main(String[] args) {
final int addMonth = 2; //2개월 후 데이터 생성
DateTimeFormatter fmtMonth = DateTimeFormat.forPattern("yyyyMM");
DateTimeFormatter fmtDay = DateTimeFormat.forPattern("yyyyMMdd");
//대상 월
DateTime now = DateTime.now();
String strTargetMonth = now.plus(Period.months(addMonth)).toString(fmtMonth);
DateTime dt = DateTime.parse(strTargetMonth, fmtMonth);
int startDay = dt.dayOfMonth().getMinimumValue();
int endDay = dt.dayOfMonth().getMaximumValue();
String strDay;
String dayOfWeek;
//boolean isHoliDay = false;
for (int i = startDay; i <= endDay; i++) {
strDay = strTargetMonth + StringUtils.leftPad(Integer.toString(i), 2, "0");
dayOfWeek = DateTime.parse(strDay, fmtDay).dayOfWeek().getAsShortText(Locale.KOREA);
System.out.println(String.format("%s | %s", strDay, dayOfWeek));
}
}
}
'JAVA > Java 일반' 카테고리의 다른 글
java 11 vs 17 performance (0) | 2022.09.02 |
---|---|
Java Optional에 대한 생각 (0) | 2022.07.12 |
Java의 java.time.LocalDateTime 관련 몇가지 사용 예 (0) | 2022.04.15 |
java stream을 이용한 정렬 (0) | 2022.01.10 |
대용량 처리시 부하분산을 위한 데이터 분할 처리(간략) (0) | 2021.12.10 |