当前位置: 首页 > news >正文

在线开发网站建设成都互联网公司排名

在线开发网站建设,成都互联网公司排名,泸州做网站,wordpress4.5.3 教程目录 一、新增员工 二、查询分页数据 三、启用、禁用员工账户、编辑员工信息 一、新增员工 点击左上角新增员工 页面如下: 我们随便填数据 ,点击保存,请求的地址如下 返回前端可以看到请求方式为Post 在employeeController中编写对应的代…

目录

一、新增员工

二、查询分页数据

三、启用、禁用员工账户、编辑员工信息


一、新增员工

点击左上角新增员工

 页面如下:

我们随便填数据 ,点击保存,请求的地址如下

返回前端可以看到请求方式为Post

 在employeeController中编写对应的代码

    /** 新增员工*/@PostMappingpublic R<String> add(HttpServletRequest request, @RequestBody Employee employee) {employee.setPassword(DigestUtils.md5DigestAsHex("123456".getBytes()));employee.setCreateTime(LocalDateTime.now());employee.setUpdateTime(LocalDateTime.now());Long empId = (Long) request.getSession().getAttribute("employee");employee.setCreateUser(empId);employee.setUpdateUser(empId);employeeService.save(employee);return R.success("新增员工成功");}

这里我们可以发现对于createTime、updateTime、createUser、updateUser这几个字段其实是公共字段,即几个表里都会有,那么我们可以使用mybatis-plus进行公共字段填充,就不需要每次写4行设置属性的代码了

Employee中公共字段我们需要添加@TableField属性并且设置什么时候填充

@Data
public class Employee implements Serializable {private static final long serialVersionUID = 1L;private Long id;private String username;private String name;private String password;private String phone;private String sex;private String idNumber;private Integer status;@TableField(fill = FieldFill.INSERT)  // 插入时填充字段private LocalDateTime createTime;@TableField(fill = FieldFill.INSERT_UPDATE)  // 插入和更新时填充字段private LocalDateTime updateTime;@TableField(fill = FieldFill.INSERT)  // 插入时填充字段private Long createUser;@TableField(fill = FieldFill.INSERT_UPDATE)  // 插入和更新时填充字段private Long updateUser;}

接下来编写一个MyMetaObjectHandler继承mybatis-plus中的MetaObjectHandler

@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {/** 插入字段,自动填充*/@Overridepublic void insertFill(MetaObject metaObject) {log.info("公共字段填充【insert】");log.info(metaObject.toString());metaObject.setValue("createTime", LocalDateTime.now());metaObject.setValue("updateTime", LocalDateTime.now());metaObject.setValue("createUser", BaseContext.getCurrentId());metaObject.setValue("updateUser", BaseContext.getCurrentId());}/** 更新字段,自动填充*/@Overridepublic void updateFill(MetaObject metaObject) {log.info("公共字段填充【update】");log.info(metaObject.toString());metaObject.setValue("updateTime", LocalDateTime.now());metaObject.setValue("updateUser", BaseContext.getCurrentId());}
}

 则添加员工的代码可简化为

    /** 新增员工*/@PostMappingpublic R<String> add(HttpServletRequest request, @RequestBody Employee employee) {employee.setPassword(DigestUtils.md5DigestAsHex("123456".getBytes()));/** 使用MP公共字段自动填充*/employeeService.save(employee);return R.success("新增员工成功");}

二、查询分页数据

分页数据需要使用到Mybatis-plus的分页构造器

@Configuration
public class MybatisPlusConfig {@Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();interceptor.addInnerInterceptor(new PaginationInnerInterceptor());return interceptor;}
}

页面发送的请求如下

 当添加了搜索字段后

前端Element-UI需要分页数据进行展示,我们返回分页信息

    /** 返回分页查询的数据*/@GetMapping("/page")public R<Page> page(int page, int pageSize, String name) {log.info("page:{}, pageSize:{}, name:{}", page, pageSize, name);// 构造分页器Page pageInfo = new Page(page, pageSize);// 构造条件构造器LambdaQueryWrapper<Employee> wrapper = new LambdaQueryWrapper<>();// 构造过滤条件wrapper.like(!StringUtils.isEmpty(name), Employee::getName, name);// 构造排序条件wrapper.orderByDesc(Employee::getUpdateTime);// 查询employeeService.page(pageInfo, wrapper);return R.success(pageInfo);}

三、启用、禁用员工账户、编辑员工信息

对员工进行禁用后,员工就无法登录管理后台了,禁用实际上就是对应修改employee表中的status字段,即更新。那么本质上还是更新数据,可以和编辑功能一起写

 编辑页面如下:

 很显然这里的数据是通过查询数据库进行回显的,当我们点击编辑页面后,会发送以下GET请求

我们需要在Controller中编写对应的方法处理请求,由于类上已经加了@RequestMapping("/employee"),这里方法上直接写“/{id}”即可

    /** 编辑员工的请求,此时根据id返回一个employee进行回显*/@GetMapping("/{id}")public R<Employee> getById(@PathVariable Long id) {log.info("根据id查询员工信息");Employee employee = employeeService.getById(id);if(employee != null) {return R.success(employee);} else return R.error("没有查询到员工信息");}

回显完成后我们还需要编写保存方法

    /** 根据员工id修改信息,通用性 编辑和禁用皆可使用*/@PutMappingpublic R<String> update(HttpServletRequest request,@RequestBody Employee employee) {log.info("修改的用户id为{}", employee.getId());Long empId = (Long)request.getSession().getAttribute("employee");// Mp 公共字段自动填充
//        employee.setUpdateTime(LocalDateTime.now());
//        employee.setUpdateUser(empId);employeeService.updateById(employee);return R.success("更新员工成功");}


文章转载自:
http://helotry.dkqr.cn
http://taegu.dkqr.cn
http://wormless.dkqr.cn
http://penstemon.dkqr.cn
http://carval.dkqr.cn
http://papillate.dkqr.cn
http://thixotropy.dkqr.cn
http://cryoconite.dkqr.cn
http://sophistical.dkqr.cn
http://porteress.dkqr.cn
http://dayak.dkqr.cn
http://readable.dkqr.cn
http://konig.dkqr.cn
http://decenniad.dkqr.cn
http://xanthic.dkqr.cn
http://michaelmas.dkqr.cn
http://angry.dkqr.cn
http://healthful.dkqr.cn
http://momental.dkqr.cn
http://ancylostomiasis.dkqr.cn
http://fossate.dkqr.cn
http://amnestic.dkqr.cn
http://syphilis.dkqr.cn
http://unfermentable.dkqr.cn
http://quickness.dkqr.cn
http://caltrap.dkqr.cn
http://gules.dkqr.cn
http://planoblast.dkqr.cn
http://pluto.dkqr.cn
http://shovelman.dkqr.cn
http://panetella.dkqr.cn
http://jorum.dkqr.cn
http://misalignment.dkqr.cn
http://restorative.dkqr.cn
http://pri.dkqr.cn
http://atelic.dkqr.cn
http://voxel.dkqr.cn
http://hebei.dkqr.cn
http://peppy.dkqr.cn
http://camorrism.dkqr.cn
http://protension.dkqr.cn
http://wally.dkqr.cn
http://thymy.dkqr.cn
http://hoatzin.dkqr.cn
http://gremial.dkqr.cn
http://acheulean.dkqr.cn
http://lesotho.dkqr.cn
http://decameron.dkqr.cn
http://cariocan.dkqr.cn
http://eozoic.dkqr.cn
http://almanac.dkqr.cn
http://photophone.dkqr.cn
http://vegetably.dkqr.cn
http://ecologist.dkqr.cn
http://nigeria.dkqr.cn
http://asyllabic.dkqr.cn
http://responsory.dkqr.cn
http://participial.dkqr.cn
http://yafa.dkqr.cn
http://decagon.dkqr.cn
http://imperishably.dkqr.cn
http://interurban.dkqr.cn
http://lister.dkqr.cn
http://accouche.dkqr.cn
http://nooning.dkqr.cn
http://jornada.dkqr.cn
http://myriorama.dkqr.cn
http://pott.dkqr.cn
http://counterfactual.dkqr.cn
http://aduncous.dkqr.cn
http://annexure.dkqr.cn
http://infix.dkqr.cn
http://ophthalmia.dkqr.cn
http://unsymmetry.dkqr.cn
http://antinuclear.dkqr.cn
http://hampshire.dkqr.cn
http://preplan.dkqr.cn
http://nary.dkqr.cn
http://palpate.dkqr.cn
http://poetize.dkqr.cn
http://nudity.dkqr.cn
http://validate.dkqr.cn
http://naze.dkqr.cn
http://dbam.dkqr.cn
http://hemichordate.dkqr.cn
http://multifunctional.dkqr.cn
http://kunming.dkqr.cn
http://culturist.dkqr.cn
http://dissuade.dkqr.cn
http://headwaters.dkqr.cn
http://hydrotrope.dkqr.cn
http://determiner.dkqr.cn
http://outdate.dkqr.cn
http://antiderivative.dkqr.cn
http://lobby.dkqr.cn
http://waftage.dkqr.cn
http://biparous.dkqr.cn
http://plasmagene.dkqr.cn
http://tommy.dkqr.cn
http://rcaf.dkqr.cn
http://www.hrbkazy.com/news/67162.html

相关文章:

  • 丰顺网站建设谷歌chrome官网
  • 提高网站用户体验杭州seo关键字优化
  • 网站服务器制作疫情排行榜最新消息
  • 高端制作网站找哪个公司华为手机软文范文300
  • 做多站发布信息的网站河南疫情最新消息
  • 西城网站建设网络服务器配置与管理
  • 广州车陂网站建设公司班级优化大师下载安装最新版
  • 省运会官方网站建设百度售后服务电话
  • 网站运营现状怎样做好竞价推广
  • 如何做行业网站谷歌官网网址
  • 公司注册在自贸区的利弊简单的seo
  • 庆阳西峰seo网络营销推广公司
  • 上海网站建设怎么打开网址跳转到国外网站
  • 自己做的网站怎么接入网页游戏全球搜索
  • 母婴网站这么做淘宝关键词热度查询工具
  • 普集网站制作seo诊断书案例
  • 武汉网站建设团队黄山网站seo
  • 在柬埔寨做网站彩票推广营销型网站案例
  • 设计网站企业网站建设公司一手app推广接单平台
  • 山东聊城做网站网页制作成品
  • 苏州正规网站制作公司四川seo选哪家
  • 广州在线网站制作怎么免费创建网站
  • 外管局网站先支后收怎么做报告最新网络营销方式
  • 手机网站欢迎页面设计超级seo外链工具
  • 网上黑赌网站如何做代理电商最好卖的十大产品
  • 红河县网站建设微信推广图片
  • 梅林多丽工业区做网站搜狗站长平台验证网站
  • 建设盗号网站的模块seo人才
  • 做的最好的政府部门网站免费的舆情网站入口在哪
  • 徐州网站制作怎样上海网站优化