Java导出Excel(附完整源码)

本文介绍如何使用SpringBoot和Apache POI库在Java项目中实现Excel导出功能,包括项目搭建、依赖添加、实体类定义、样式工具类、Service接口及实现、文件下载Controller等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

导出excel是咱Java开发的必备技能啦,之前项目有这个功能,现在将其独立出来,分享一下。
所用技术就是SpringBoot,然后是MVC架构模式。
废话不多说,直接上代码了,源码点末尾链接就可以下载。
(1)新建一个SpringBoot项目(可以官网https://start.spring.io/直接生成下载,然后导入eclipse),项目结构如下:
在这里插入图片描述
(2)修改pom文件,添加依赖;

<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>

		<!-- 导出excel -->
		<dependency>
			<groupId>org.apache.poi</groupId>
			<artifactId>poi</artifactId>
			<version>3.14</version>
		</dependency>

		<!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml -->
		<dependency>
			<groupId>org.apache.poi</groupId>
			<artifactId>poi-ooxml</artifactId>
			<version>3.14</version>
		</dependency>

		<!-- https://mvnrepository.com/artifact/org.apache.poi/poi-contrib -->
		<dependency>
			<groupId>org.apache.poi</groupId>
			<artifactId>poi-contrib</artifactId>
			<version>3.6</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml-schemas -->
		<dependency>
			<groupId>org.apache.poi</groupId>
			<artifactId>poi-ooxml-schemas</artifactId>
			<version>3.17</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.apache.poi/poi-scratchpad -->
		<dependency>
			<groupId>org.apache.poi</groupId>
			<artifactId>poi-scratchpad</artifactId>
			<version>3.17</version>
		</dependency>

(3)新建一个实体类,命名为User.java;

package com.twf.springcloud.ExportExcel.po;
import java.io.Serializable;
public class User implements Serializable{
	private static final long serialVersionUID = -9180229310895087286L;
	private String name; // 姓名
	private String sex; // 性别
	private Integer age; // 年龄
	private String phoneNo; // 手机号
	private String address; // 地址
	private String hobby; // 爱好
	public User(String name, String sex, Integer age, String phoneNo, String address, String hobby) {
		super();
		this.name = name;
		this.sex = sex;
		this.age = age;
		this.phoneNo = phoneNo;
		this.address = address;
		this.hobby = hobby;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
	public Integer getAge() {
		return age;
	}
	public void setAge(Integer age) {
		this.age = age;
	}
	public String getPhoneNo() {
		return phoneNo;
	}
	public void setPhoneNo(String phoneNo) {
		this.phoneNo = phoneNo;
	}
	public String getAddress() {
		return address;
	}
	public void setAddress(String address) {
		this.address = address;
	}
	public String getHobby() {
		return hobby;
	}
	public void setHobby(String hobby) {
		thi
评论 28
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值