学习链接:api测试Excel
Excel注解
任务描述:使用springboot框架与apifox测试软件以及ExcelUtil工具类完成对excel表的解析,并将数据转换为json格式。
excel注解
apifox测试描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/fce36cfe2da4482da8f063c83bc44b68.png)
补充说明:文档上传,前端为form-data。
后端
easyExcel依赖:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.2.10</version>
</dependency>
Controller层:
![在这里插入图片描述](https://img-blog.csdnimg.cn/630b948fdefb4293b1442ab1f4af0333.png)
service层:
![在这里插入图片描述](https://img-blog.csdnimg.cn/5333b21c681545b0b27d11c0d3ef78ef.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/7e65e863cb54479cace726b48c3ae00e.png)
domain实体类:
![在这里插入图片描述](https://img-blog.csdnimg.cn/799c8be869a3470e8e9cf52af6939b9f.png)
补充概念:
@Data:将@ToString、@EqualsAndHashCode、@Getter、@Setter和@RequiredArgsConstructor的功能捆绑在一起。@Data生成通常与简单POJO和bean关联的所有样板文件,所有字段的getter,所有非最终字段的setter、以及适当的toString、equals和hashCode实现。这些实现涉及类的字段、以及初始化所有最终字段的构造函数,以及所有没有使用@NonNull标记的初始化器的非最终字段
@Excel:@Excel(name=“excel表上的列名,类似与id值”,readConverterExp=“0为是,1为否”,dataFormat=“yyyy-MM-dd HH:mm:ss”)
学习链接:添加链接描述
注解:
@ExcelProperty:注解中有三个参数value,index,converter分别代表列名、列序号、数据转换格式;
@ColumnWith:列宽度的注解,只有一个value参数,最大可以设置255字符;
@ContentFontStyle:字体样式
参数 |
含义 |
fontName |
字体名称 |
fontHeightInPoints |
字体高度 |
italic |
是否斜体 |
strikeout |
是否设置删除水平线 |
color |
字体颜色 |
typeOffset |
偏移量 |
underline |
下划线 |
bold |
是否加粗 |
charset |
编码格式 |
@ContentLoopMerge:合并单元格
eachRow\columnExtend->@ContentLoopMerge(eachRow=2)
@ContentRowHeight:设置行高
value:-1表示自动行高
Jackson:学习链接添加链接描述
json转Java:创建jackson的核心对象:ObjectMapper;调用objectMapper的相关方法进行数据转换----将json字符串转换为java对象om.readValue(string,对象)
java转Json:创建ObjectMapper对象;om.writeValueAsString(对象)
json:定义JsonObject jo = new J();添加:json.put(“key”,“value”);删除:json.remove(key);清除:json.clear()。
数组的:JsonArray a= new J();添加:a.add(jo);删除:a.remove(jo);