学习链接:api测试Excel
Excel注解
任务描述:使用springboot框架与apifox测试软件以及ExcelUtil工具类完成对excel表的解析,并将数据转换为json格式。
excel注解
apifox测试描述
补充说明:文档上传,前端为form-data。
后端
easyExcel依赖:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.2.10</version>
</dependency>
Controller层:
service层:
domain实体类:
补充概念:
@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);