[java] Apache Commons Lang 을 사용하여 날짜와 시간을 더하고 빼는 방법

Java에서는 Apache Commons Lang 라이브러리를 사용하여 간단하게 날짜와 시간을 더하고 빼는 작업을 수행할 수 있습니다. 이 라이브러리는 자주 사용되며 많은 유용한 유틸리티 클래스와 메소드를 제공합니다.

Apache Commons Lang 라이브러리 추가

먼저, 프로젝트의 의존성에 Apache Commons Lang 라이브러리를 추가해야 합니다. Maven을 사용하는 경우, pom.xml 파일에 다음 의존성을 추가합니다:

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.12.0</version>
</dependency>

Gradle을 사용하는 경우, build.gradle 파일에 다음 종속성을 추가합니다:

implementation 'org.apache.commons:commons-lang3:3.12.0'

라이브러리를 추가한 후, 프로젝트를 다시 빌드해야 합니다.

날짜와 시간 더하기

Apache Commons Lang의 DateUtils 클래스는 날짜와 시간을 다루는데 유용한 메소드들을 제공합니다. 예를 들어, 현재 날짜에 일주일을 더하고 싶다면 다음과 같이 작성할 수 있습니다:

import org.apache.commons.lang3.time.DateUtils;
import java.util.Date;

public class DateExample {
    public static void main(String[] args) {
        Date currentDate = new Date();
        Date oneWeekLater = DateUtils.addWeeks(currentDate, 1);
        
        System.out.println("일주일 후 : " + oneWeekLater);
    }
}

위 코드에서 DateUtils.addWeeks 메소드는 주어진 날짜에 주 수를 더한 결과를 반환합니다. DateUtils 클래스의 다른 메소드들을 사용하여 다른 시간 단위에 대해서도 더하는 작업을 수행할 수 있습니다 (예: addDays, addHours, addMinutes, 등).

날짜와 시간 빼기

날짜와 시간을 빼는 것도 마찬가지로 쉽게 수행할 수 있습니다. 아래의 예시는 현재 날짜에서 2주를 빼는 방법을 보여줍니다:

import org.apache.commons.lang3.time.DateUtils;
import java.util.Date;

public class DateExample {
    public static void main(String[] args) {
        Date currentDate = new Date();
        Date twoWeeksAgo = DateUtils.addWeeks(currentDate, -2);
        
        System.out.println("2주 전 : " + twoWeeksAgo);
    }
}

위 코드에서 주 수에 -2 값을 전달하여 2주 전의 날짜를 얻습니다. DateUtils 클래스의 다른 메소드들을 사용하여 다른 시간 단위에 대해서도 빼는 작업을 수행할 수 있습니다 (예: addDays, addHours, addMinutes, 등).

Apache Commons Lang은 다양한 유틸리티 클래스와 메소드를 제공하므로, 자세한 내용은 공식 문서를 참조하시기 바랍니다.