[java] Apache POI를 사용하여 Excel 파일의 데이터 유효성 검사 읽기

Apache POI는 Java에서 Microsoft Office 파일을 다루기 위한 라이브러리입니다. 이 라이브러리를 사용하면 Java 코드를 통해 Excel 파일의 데이터를 읽고 쓸 수 있습니다. 이번 포스트에서는 Apache POI를 사용하여 Excel 파일에 설정된 데이터 유효성 검사 규칙을 읽는 방법을 알아보겠습니다.

필요한 라이브러리 추가하기

먼저, Maven이나 Gradle과 같은 의존성 관리 도구를 사용하여 Apache POI 라이브러리를 프로젝트에 추가해야 합니다. 다음은 Maven을 사용하는 경우 pom.xml 파일에 추가해야 할 의존성입니다:

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>4.1.2</version>
</dependency>

Gradle을 사용하는 경우 build.gradle 파일에 다음과 같이 의존성을 추가하면 됩니다:

implementation 'org.apache.poi:poi:4.1.2'

Excel 파일에서 데이터 유효성 검사 읽기

Apache POI를 사용하여 Excel 파일의 데이터 유효성 검사를 읽으려면 다음과 같은 단계를 따르면 됩니다:

  1. Workbook 객체를 생성하고, 읽을 Excel 파일을 로드합니다.
  2. DataValidationHelper 객체를 사용하여 데이터 유효성 검사 기능을 사용할 수 있도록 합니다.
  3. Sheet 객체에서 DataValidation 개체의 목록을 가져옵니다.
  4. 개체 목록을 반복하여 개별 데이터 유효성 검사의 규칙을 확인할 수 있습니다.

아래는 위 단계를 구현한 예제 코드입니다:

import org.apache.poi.ss.usermodel.*;

import java.io.FileInputStream;
import java.io.InputStream;

public class ExcelDataValidationReader {

    public static void main(String[] args) {
        try {
            // 1. 읽을 Excel 파일 로드
            InputStream fis = new FileInputStream("path/to/excel/file.xlsx");
            Workbook workbook = WorkbookFactory.create(fis);

            // 2. 데이터 유효성 검사 기능 설정
            DataValidationHelper dvHelper = workbook.getCreationHelper().createDataValidationHelper();

            // 3. Sheet 객체에서 데이터 유효성 검사 개체 목록 가져오기
            Sheet sheet = workbook.getSheetAt(0);
            DataValidation[] validations = sheet.getDataValidations();

            // 4. 개별 데이터 유효성 검사의 규칙 확인
            for (DataValidation validation : validations) {
                DataValidationConstraint constraint = validation.getValidationConstraint();
                System.out.println("Validation Rule: " + constraint.getFormula1());
            }

            workbook.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

위 예제 코드에서는 path/to/excel/file.xlsx 경로에 있는 Excel 파일에서 데이터 유효성 검사를 읽어옵니다. 적절한 경로로 변경한 후 실행해보세요.

결론

Apache POI를 사용하여 Excel 파일의 데이터 유효성 검사를 읽는 방법에 대해 알아보았습니다. 이를 통해 Java 코드로 Excel 파일의 데이터에 대한 유효성 검사 규칙을 확인할 수 있습니다. Apache POI를 사용하면 Excel 파일을 다루는 다양한 작업을 자바 코드로 쉽게 수행할 수 있으므로 업무에서 유용하게 활용할 수 있습니다.

참고 자료