行业知识
SpringBoot + Apache tika 轻松实现各种文档内容解析
2026-11-06 13:36:09
来源:互联网转载
Apache tika是Apache开源的一个文档解析工具。Apache Tika可以解析和提取一千多种不同的文件类型(如PPT、XLS和PDF)的内容和格式,并且Apache Tika提供了多种使用方式,既可以使用图形化操作页面(tika-app),又可以独立部署(tika-server)通过接口调用,还可以引入到项目中使用。
本文演示在spring boot 中引入tika的方式解析文档。如下:
引入依赖
在spring boot 项目中引入如下依赖:
org.apache.tika tika-bom 2.8.0 pom import org.apache.tika tika-core org.apache.tika tika-parsers-standard-package
创建配置
将tika-config.xml文件放在resources目录下。tika-config.xml文件的内容如下:
64000 64001 64002
创建配置类MyTikaConfig
import java.io.IOException;import java.io.InputStream;import org.apache.tika.Tika;import org.apache.tika.config.TikaConfig;import org.apache.tika.detect.Detector;import org.apache.tika.exception.TikaException;import org.apache.tika.parser.AutoDetectParser;import org.apache.tika.parser.Parser;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.core.io.Resource;import org.springframework.core.io.ResourceLoader;import org.xml.sax.SAXException;/** * tika配置类 */@Configurationpublic class MyTikaConfig { @Autowired private ResourceLoader resourceLoader; @Bean public Tika tika() throws TikaException, IOException, SAXException { Resource resource = resourceLoader.getResource("classpath:tika-config.xml"); InputStream inputStream = resource.getInputStream(); TikaConfig config = new TikaConfig(inputStream); Detector detector = config.getDetector(); Parser autoDetectParser = new AutoDetectParser(config); return new Tika(detector, autoDetectParser); }} Tika类中提供了文芳detect、translate和parse功能, 在项目中通过注入TIka, 就可以使用了
在项目使用
配置完成后在项目中可以通过注入TIka即可完成文档的解析。如下图所示: