[java] Apache Tika 의 주요 클래스와 인터페이스
Apache Tika는 다양한 문서 형식의 데이터를 추출하고 처리하는 오픈 소스 라이브러리입니다. 이 라이브러리는 다양한 파일 형식을 처리하고, 텍스트 추출, 메타데이터 추출, 언어 감지, 문서 유형 식별 등 다양한 기능을 제공합니다. 이번 포스트에서는 Apache Tika의 주요 클래스와 인터페이스에 대해 알아보겠습니다.
1. Tika 클래스
Tika 클래스는 Apache Tika의 핵심 클래스로, 주어진 파일을 처리하기 위한 메소드를 제공합니다. Tika 클래스의 주요 메소드는 다음과 같습니다.
parse(File file)
: 주어진 파일을 파싱하여 추출된 내용을 반환합니다.parse(InputStream stream)
: 주어진 입력 스트림을 파싱하여 추출된 내용을 반환합니다.parseToString(File file)
: 주어진 파일을 파싱하여 추출된 내용을 문자열로 반환합니다.detect(File file)
: 주어진 파일의 MIME 타입을 감지하여 반환합니다.
2. Metadata 클래스
Metadata 클래스는 Apache Tika에서 추출된 메타데이터를 관리하는 클래스입니다. 이 클래스는 파일의 메타데이터를 표현하기 위해 키-값 쌍의 형태로 정보를 저장합니다. Metadata 클래스는 다음과 같은 주요 메소드를 제공합니다.
set(String name, String value)
: 지정된 이름과 값을 가진 메타데이터를 설정합니다.get(String name)
: 지정된 이름의 메타데이터 값을 반환합니다.names()
: 모든 메타데이터 이름을 반환합니다.
3. Parser 인터페이스
Parser 인터페이스는 Apache Tika에서 사용되는 문서 파서의 기본 인터페이스입니다. 이 인터페이스는 다양한 파일 형식의 문서를 추출하고 처리하기 위한 추상 메소드를 정의합니다. Parser 인터페이스를 구현하는 클래스는 주어진 문서를 처리하는 적절한 파서 기능을 제공해야 합니다.
주요 Parser 인터페이스의 메소드는 다음과 같습니다.
parse(InputStream stream, ContentHandler handler, Metadata metadata, ParseContext context)
: 주어진 입력 스트림을 파싱하여 처리 결과를 반환합니다.getSupportedTypes(ParseContext context)
: 해당 파서가 지원하는 문서 형식의 MIME 타입을 반환합니다.
참고 자료
- Apache Tika 공식 홈페이지: https://tika.apache.org/
- Apache Tika GitHub 저장소: https://github.com/apache/tika