Java程序猿搬砖笔记(六)
@RequestBody注解支持空参数
@RequestBody(required=false),get/post且实体不加无参构造方法都行
windows查看占用端口并杀死对应进程
1 | E:\Documents\MyIdeaProjects\act\target>netstat -ano |findstr "8888" |
@RequestBody(required=false),get/post且实体不加无参构造方法都行
1 | E:\Documents\MyIdeaProjects\act\target>netstat -ano |findstr "8888" |
下面是Excel表格,成果简介前可以作为主表数据存储(存在合并),成果简介后的数据作为从表数据存储。
通过EasyExcel读取Excel数据,用List<AwardsDetailField> list接收
因为POI/EasyExcel对合并单元格的数据只读取一次,需要把为空的单元格也赋值,这是核心技术难点。
循环使用hibernate-validator对数据进行校验
存在校验不通过的数据返回给前端,所有数据校验通过才写入数据库
封装然后写入数据库
导入时要求同一年数据可以分多次导入,但同一年内,成果名称不允许重复
这个可以在数据库中根据获奖类型+获奖年份+成果名称建立联合约束
1 | ALTER TABLE t_awards ADD CONSTRAINT award_type_year_product UNIQUE (award_type,award_year,award_product); |
前后端分离,后端虽然用了Swagger但有时候还是需要手动维护文档的,Java实体字段很多的时候,维护起来还是很费时间。本文介绍如何通过Java反射和EasyExcel把实体信息导出为Excel表格,表格可用于维护接口文档。