[java] Apache POI를 이용한 Word 문서 파일 잠금

Microsoft Word는 문서 파일을 잠금하여 수정, 편집, 인쇄 등의 작업을 제한할 수 있는 기능을 제공합니다. 이렇게 잠긴 문서 파일은 보안이 강화되며, 불법적으로 수정되는 것을 방지할 수 있습니다. 이번 글에서는 Apache POI를 이용하여 자바로 Word 문서 파일을 잠금해보겠습니다.

Apache POI란?

Apache POI는 Java에서 Microsoft Office 파일 포맷을 다룰 수 있는 오픈 소스 라이브러리입니다. 이 라이브러리를 사용하면 Java 애플리케이션에서 Word, Excel, PowerPoint 등의 파일을 생성, 편집, 읽기 등 다양한 작업을 할 수 있습니다.

Word 문서 파일 잠금하기

Apache POI를 이용하여 Word 문서 파일을 잠금하는 방법은 간단합니다. 아래의 예제 코드를 통해 확인해보겠습니다.

import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFProperties;

import java.io.FileOutputStream;
import java.io.IOException;

public class WordDocumentLocker {

    public static void main(String[] args) {
        // 잠금할 Word 문서 파일 경로
        String filePath = "C:/example.docx";

        try {
            // 문서 파일 열기
            XWPFDocument document = new XWPFDocument();

            // 문서 속성 가져오기
            XWPFProperties properties = document.getProperties();

            // 문서 속성에 잠금 설정
            properties.setAllowEditing(false);

            // 잠금된 문서 파일로 저장
            FileOutputStream out = new FileOutputStream(filePath);
            document.write(out);
            out.close();

            System.out.println("문서 파일이 성공적으로 잠금되었습니다.");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위의 예제 코드를 실행하면 지정한 경로에 있는 Word 문서 파일이 잠금되어 저장됩니다. 잠금된 문서 파일은 더 이상 수정할 수 없으며, Word에서 열어보면 편집이 비활성화되어 있는 것을 확인할 수 있습니다.

참고 자료

위의 참고 자료를 통해 Apache POI와 Microsoft Word의 문서 보호 기능에 대해 더 자세히 알아볼 수 있습니다.

이번 글에서는 Apache POI를 이용하여 Word 문서 파일을 잠금하는 방법에 대해 알아보았습니다. 이를 응용하여 보안이 강화된 문서 파일을 생성하고 다룰 수 있을 것입니다.