value和index只能二选一,通常不用设置converter 1.value 通过标题文本对应 2.index 通过文本行号对应**
@ExcelProperty(value = “编号”, index = 0)
private Long id;
复制代码
3、@ColumnWith注解
设置列宽度,只有一个参数value,value的单位是字符长度,最大可以设置255个字符,因为一个excel单元格最大可以写入的字符个数就是255个字符
public class ImeiEncrypt {
@ColumnWidth(value = 255) //excel单个单元格最大长度255
private String message;
}
复制代码
4、@ContentFontStyle注解
用于设置单元格内容字体格式的注解
| 参数 | 含义 |
| — | — |
| fontName | 字体名称 |
| fontHeightInPoints | 字体高度 |
| italic | 是否斜体 |
| strikeout | 是否设置删除水平线 |
| color | 字体颜色 |
| typeOffset | 偏移量 |
| underline | 下划线 |
| bold | 是否加粗 |
| charset | 编码格式 |
5、@ContentStyle注解
设置内容格式注解
| 参数 | 含义 |
| — | — |
| dataFormat | 日期格式 |
| hidden | 设置单元格使用此样式隐藏 |
| locked | 设置单元格使用此样式锁定 |
| quotePrefix | 在单元格前面增加`符号,数字或公式将以字符串形式展示 |
| horizontalAlignment | 设置是否水平居中 |
| wrapped | 设置文本是否应换行。将此标志设置为true通过在多行上显示使单元格中的所有内容可见 |
| verticalAlignment | 设置是否垂直居中 |
| rotation | 设置单元格中文本旋转角度。03版本的Excel旋转角度区间为-90°90°,07版本的Excel旋转角度区间为0°180° |
| indent | 设置单元格中缩进文本的空格数 |
| borderLeft | 设置左边框的样式 |
| borderRight | 设置右边框样式 |
| borderTop | 设置上边框样式 |
| leftBorderColor | 设置左边框颜色 |
| rightBorderColor | 设置右边框颜色 |
| topBorderColor | 设置上边框颜色 |
| bottomBorderColor | 设置下边框颜色 |
| fillPatternType | 设置填充类型 |
| fillBackgroundColor | 设置背景色 |
| shrinkToFit | 设置自动单元格自动大小 |
6、@HeadFontStyle注解
用于定制标题字体格式
| 参数 | 含义 |
| — | — |
| fontName | 设置字体名称 |
| fontHeightInPoints | 设置字体高度 |
| italic | 设置字体是否斜体 |
| strikeout | 是否设置删除线 |
| color | 设置字体颜色 |
| typeOffset | 设置偏移量 |
| underline | 设置下划线 |
| charset | 设置字体编码 |
| bold | 设置字体是否加粗 |
7、ExcelIgnore注解
不将该字段转换成Excel
三、编码
1、映射实体类----例子
package com.pingou.admin.bean.param;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
@Data
@ContentRowHeight(35) //文本行高度
@HeadRowHeight(40) //标题高度
@ColumnWidth(40)
public class OrderExcel {
//设置excel表头名称
@ExcelProperty(value = “编号”, index = 0)
private Long id;
@DateTimeFormat(“yyyy年MM月dd日HH时mm分ss秒”)
@ExcelProperty(value = “创建时间”, index = 1)
private Date createTime;
}
复制代码
以上是简单的举例,如果有更多属性自己逐个写就好,然后塞进该实体类就好~
2、生成excel
public void excel() {
//欲导出excel的数据结果集
List excel = new ArrayList<>();
//省略 向结果集里插入数据的操作
//UUID生成唯一name
String name = UUID.randomUUID().toString().replaceAll(“-”, “”) + “.xlsx”;
//实现excel写的操作
//1 设置写入文件夹地址和excel文件名称
String filename = “/路径” + name;
JSONObject json = new JSONObject();
try {
// 2 调用easyexcel里面的方法实现写操作
// write方法两个参数:第一个参数文件路径名称,第二个参数实体类class
EasyExcel.write(filename, OrderExcel.class).sheet(“名字”).doWrite(excel);
//上传到fastdfs上 不上传的话只有本机可以找到,在上面路径下生成excel
File file = new File(filename);
String path = fastDFSClient.upload(new FileInputStream(file), name, null);
path = (this.fastdfsDomain + path);
json.put(“url”, path);
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
![img](https://i-blog.csdnimg.cn/blog_migrate/b4981659f670b18d68ba5a1aa1e545ff.jpeg)
那么如何才能正确的掌握Redis呢?
为了让大家能够在Redis上能够加深,所以这次给大家准备了一些Redis的学习资料,还有一些大厂的面试题,包括以下这些面试题
-
并发编程面试题汇总
-
JVM面试题汇总
-
Netty常被问到的那些面试题汇总
-
Tomcat面试题整理汇总
-
Mysql面试题汇总
-
Spring源码深度解析
-
Mybatis常见面试题汇总
-
Nginx那些面试题汇总
-
Zookeeper面试题汇总
-
RabbitMQ常见面试题汇总
JVM常频面试:
Mysql面试题汇总(一)
Mysql面试题汇总(二)
Redis常见面试题汇总(300+题)
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
(img-3vTrGkJE-1713289321029)]
Mysql面试题汇总(一)
[外链图片转存中…(img-KYGTwoEI-1713289321030)]
Mysql面试题汇总(二)
[外链图片转存中…(img-Y076idAM-1713289321030)]
Redis常见面试题汇总(300+题)
[外链图片转存中…(img-eLiBhjwt-1713289321030)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!