SpringBoot定制app开发项目中使用-plus定制app开发实现增加和修改
增加方法
1、定制app开发在实体类上加注解@TableField
@TableField(fill = FieldFill.INSERT) @ApiModelProperty(value = "创建时间") private Date gmtCreate; @TableField(fill = FieldFill.INSERT_UPDATE) @ApiModelProperty(value = "更新时间") private Date gmtModified;
- 1
- 2
- 3
- 4
- 5
- 6
- 7
2、创建工具类
在单工程项目中创建一个handler包,在包中创建MyMetaObjectHandler,并实现MetaObjectHandler接口中的insertFill和updateFill方法
@Override public void insertFill(MetaObject metaObject) { this.setFieldValByName("gmtCreate",new Date(),metaObject); this.setFieldValByName("gmtModified",new Date(),metaObject); } @Override public void updateFill(MetaObject metaObject) { this.setFieldValByName("gmtModified",new Date(),metaObject); }
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
方法中有三个参数:实体类中的字段名 数据类型 元数据(加在数据库中)
3、在controller中写添加方法
//添加讲师的接口方法 @PostMapping("addTeacher") public ResultJson addTeacher(@RequestBody EduTeacher eduTeacher){ boolean save = eduTeacherService.save(eduTeacher); if(save){ return ResultJson.ok(); }else { return ResultJson.error(); } }
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
这里用@RequestBody接收json数据,则json数据不能为空(因为是添加,并且没有required = false)
4、在swagger中测试
点击此部分任意位置,就能将此部分的默认json添加到required中
删除json中的gmtCreate和gmtModified(自动添加)、id(自动生成)
点击测试try it out按钮,运行结果
此时已经完成了添加
修改方法
修改方法要先根据id查询到该对象,然后对其进行修改
1、根据id进行查询
//根据id查询 @GetMapping("selectById/{id}") public ResultJson selectById(@PathVariable String id){ EduTeacher eduTeacher = eduTeacherService.getById(id); return ResultJson.ok().data("teacher",eduTeacher); }
- 1
- 2
- 3
- 4
- 5
- 6
swagger测试查结果询
2、在controller中写修改方法
@PostMapping("updateTeacher") public ResultJson upupdateTeacher(@RequestBody EduTeacher eduTeacher){ boolean flag = eduTeacherService.updateById(eduTeacher); if(flag){ return ResultJson.ok(); }else { return ResultJson.error(); } }
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
删除添加时间gmtCreate和更新时间gmtModified,因为会自动填充,需要给一个id值,因为是根据id修改
在swagger中的测试结果
此时数据库已经修改成功