Java 使用EasyExcel上传文件

本文介绍了如何在Java中利用EasyExcel库实现文件上传,包括所需的导包、controller方法和自定义的UserListener类,该类继承AnalysisEventListener并直接映射到实体类,简化了数据读取和组装过程。
摘要由CSDN通过智能技术生成

Java 使用EasyExcel上传文件

导包:

版本根据maven自行选择

<!-- https://mvnrepository.com/artifact/com.alibaba/easyexcel -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>easyexcel</artifactId>
    <version>2.1.6</version>
</dependency>

controller方法:

public void upload(){
    try {
        InputStream file = new FileInputStream("D:\\user.xlsx");
        //TestUser 实体类; UserListener 核心内容下文介绍,注意此处的new的内容传入的service
        EasyExcel.read(file,TestUser.class,new UserListener(readWriteSeparationService)).sheet().doRead(); 
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }
}

UserListener类:

此类继承了AnalysisEventListener类泛型为上传的实体类泛型,因为AnalysisEventListener不能被spring的容器管理

所以上文中手动传入Service层

你可以使用JavaEasyExcel库将文件上传到OSS(对象存储服务)。首先,你需要按照EasyExcel的文档引入依赖并进行相应的配置。然后,你可以使用EasyExcel提供的API来读取和写入Excel文件,并将其上传到OSS。 下面是一个简单的示例代码,演示了如何使用EasyExcel上传文件到OSS: ```java import com.alibaba.excel.EasyExcel; import com.alibaba.excel.write.metadata.WriteSheet; import com.aliyun.oss.OSS; import com.aliyun.oss.OSSClientBuilder; import java.io.File; public class ExcelUploader { public static void main(String[] args) { // 配置OSS客户端 String endpoint = "your_oss_endpoint"; String accessKeyId = "your_access_key_id"; String accessKeySecret = "your_access_key_secret"; String bucketName = "your_bucket_name"; String objectName = "your_object_name"; // 上传后的文件名 // 创建OSS客户端 OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 读取Excel文件 String fileName = "your_excel_file.xlsx"; File excelFile = new File(fileName); // 写入到OSS EasyExcel.write(ossClient.putObject(bucketName, objectName, excelFile).getInputStream(), YourDataModel.class) .sheet(0) .doWrite(); // 关闭OSS客户端 ossClient.shutdown(); } } ``` 在示例代码中,你需要替换以下参数: - `your_oss_endpoint`: OSS的Endpoint,***`和`your_access_key_secret`: 你的OSS访问密钥 - `your_bucket_name`: 存储文件的OSS桶名 - `your_object_name`: 上传后的文件名,包括路径和文件扩展名 - `your_excel_file.xlsx`: 要上传的Excel文件名
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值