logo 范 · 拾光录
网址收集 关于作者 Github Gitee
杂文随笔4
Hexo博客:基础使用Hexo博客:Next主题Hexo博客:Next进阶使用Hexo博客:Next高级配置
前端编程3
前端基础知识16
UniApp15
Vue框架19
Java编程7
Java基础知识14
SpringBoot31
SpringMVC14
MyBatis8
SpringCloud15
RocketMQ1
MyCat1
数据库4
MySQL6
Redis7
MongoDB10
H21
Java技术栈4
知识整理分布式锁的实现方案MySQL事务MySQL的锁
软件工具箱14
IDEAGitMavenGradleNginx安装Nginx配置JMeter压测OllamaPicGoRustFSVSCodeDockerObsidianObs录制
Linux知识11
树莓派安装及使用ArchLinux:常用软件ArchLinux:基础系统安装ArchLinux:深度优化ArchLInux:图形化界面安装ArchLinux:Nirifrp内网穿透Jar启动脚本Linux常用命令VirtualBox安装CentOSVirtualBox安装Ubuntu
Python编程6
Python基础知识Python语法yolo目标检测OpenCV的使用及树莓派平台condauv
创意设计2
Blender:入门知识UI设计基础知识
AI相关9
Claude CodeHermes AgentOpenAI基本使用OpenAI工具调用OpenAI记忆管理OpenAI推理执行OpenAI开发框架Langchainllama.cpp

Hutool

Hutool官网

文件上传读取示例

/**
 * 导入
 */
@RequestMapping("/excel")
public JSONObject deal(HttpServletRequest request, @RequestParam("file") MultipartFile file) {
    // 1.获取上传文件输入流
    InputStream inputStream = null;
    try {
        inputStream = file.getInputStream();
    } catch (Exception e) {
        e.printStackTrace();
    }
    System.out.println(inputStream);
    // 2.应用HUtool ExcelUtil获取ExcelReader指定输入流和sheet
    ExcelReader excelReader = ExcelUtil.getReader(inputStream, 0);
    // 可以加上表头验证
    // 3.读取第二行到最后一行数据
    List<UserBaseInfoExcelContent> userBaseInfoExcelContents = excelReader.readAll(UserBaseInfoExcelContent.class);
    userBaseInfoExcelContents.remove(0);
    System.out.println(userBaseInfoExcelContents);
    System.out.println(userBaseInfoExcelContents.toString());
    HashMap<String, String> params = new HashMap<>();
    String userListJsonArrStr = userBaseInfoExcelContents.toString();
    userListJsonArrStr = userListJsonArrStr.replace("UserBaseInfoExcelContent", "");
    System.out.println(userListJsonArrStr);
    params.put("userListJsonArrStr", userListJsonArrStr);
    return sendRequest.sendPost(userImport, params, request);
}

文件URL读取示例

InputStream inputStream = new URL(excelUrl).openStream();
ExcelReader excelReader = ExcelUtil.getReader(inputStream, 0);
List<Map<String, Object>> maps = excelReader.readAll();
// 表格的名字为Key,值为value

依赖

compile 'org.apache.poi:poi:3.17'
compile 'org.apache.poi:poi-excelant:3.17'
compile 'org.apache.poi:poi-examples:3.17'

<!-- excel操作所选jar -->
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>3.17</version>
</dependency>
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-excelant</artifactId>
    <version>3.17</version>
</dependency>
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-examples</artifactId>
    <version>3.17</version>
</dependency>

注意:3个依赖的版本必须一致,否则会报错

Hutool
文件上传读取示例
文件URL读取示例
依赖