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

新手学做网站下载网站建设推广专家服务

新手学做网站下载,网站建设推广专家服务,长春火车站咨询电话号码是多少,seo做的最好的网站新增、员工列表、编辑员工整体代码流程与登录基本一致。 1、新增员工 RestController RequestMapping("/admin/employee")EmployeeController 类中使用了注解 RestController 用于构建 RESTful 风格的 API,其中每个方法的返回值会直接序列化为 JSON 或…

新增、员工列表、编辑员工整体代码流程与登录基本一致。
在这里插入图片描述

1、新增员工

@RestController
@RequestMapping("/admin/employee")

EmployeeController 类中使用了注解 @RestController 用于构建 RESTful 风格的 API,其中每个方法的返回值会直接序列化为 JSON 或 XML 数据并发送给客户端。它负责处理对应的请求并返回相应的视图数据。

使用 @RequestMapping("/admin/employee") 注解来指定该控制器处理的 URL 路径的前缀

在这里插入图片描述

EmployeeServiceImpl 类中处理前端传参,设置默认值等,组装数据结构

在这里插入图片描述
@Mapper注解通常用于标识一个 Java 接口或类是 MyBatis 的映射器(Mapper)。MyBatis 是一个持久层框架,用于将数据库操作与 Java 代码进行映射,简化了数据库访问的过程。

@Mapper注解被应用于EmployeeMapper接口,表明该接口是一个 MyBatis 的映射器。通过在接口中的方法上使用@Select注解,可以定义与数据库操作相关的 SQL 语句。

这样,MyBatis 框架可以自动扫描并创建实现映射器接口的代理对象,实现数据库操作与 Java 代码的映射。

在这里插入图片描述

全局异常处理

定义了一个全局异常处理器exceptionHandler,用于处理SQLIntegrityConstraintViolationException类型的异常。在方法中,首先获取异常信息message,然后检查message中是否包含Duplicate entry字符串。

如果包含,则将message按照空格分割,获取第三个元素作为用户名username,并拼接MessageConstant.ALREADY_EXISTS作为错误信息msg,最后返回Result.error(msg)。如果message中不包含Duplicate entry,则返回Result.error(MessageConstant.UNKNOWN_ERROR)

在这里插入图片描述

当用户名重复时触发 sql错误,被全局异常处理器拦截并处理返回处理结果。

使用 swagger 调试
http://localhost:8080/doc.html#/home

在这里插入图片描述

2、员工列表分页查询

@Data
public class EmployeePageQueryDTO implements Serializable {//员工姓名private String name;//页码private int page;//每页显示记录数private int pageSize;
}
/*** 封装分页查询结果*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class PageResult implements Serializable {private long total; //总记录数private List records; //当前页数据集合
}

在这里插入图片描述
PageHelper.startPage 是一个用于分页查询的方法,通常在 MyBatis 框架中与 PageHelper 插件一起使用。

该方法用于设置分页查询的参数,包括当前页码和每页显示的记录数。需要在执行数据库查询之前调用该方法,将分页参数传递进去。

在这里插入图片描述

正确引入了PageHelper分页插件的依赖

在这里插入图片描述
mybatis: mapper-locations用于将配置路径下的 XML 文件加载到 MyBatis 中。

在这里插入图片描述
这是一个 MyBatis 的 Mapper 映射文件的一部分,用于定义数据库操作的 SQL 语句。

<where>:表示查询条件的开始。
<if test="name!= null and name!= ''">
一个条件判断,用于检查参数 name 是否不为空且不为空字符串。如果满足条件,则执行以下的 SQL 片段。
and name like concat('%',#{name},'%')
一个模糊查询条件,用于在 name 列中查找包含指定参数 name 的记录。concat('%',#{name},'%') 会将 % 符号与参数 name 拼接起来,形成一个模糊匹配的模式。

在这里插入图片描述

3、编辑员工与修改账号状态

EmployeeController.java

/*** 启用禁用员工账号* @param status* @param id* @return*/
@PostMapping("/status/{status}")
@ApiOperation("启用禁用员工账号")
public Result startOrStop(@PathVariable Integer status,Long id){log.info("启用禁用员工账号:{},{}",status,id);employeeService.startOrStop(status,id);return Result.success();
}
/*** 编辑员工信息* @param employeeDTO* @return*/
@PutMapping
@ApiOperation("编辑员工信息")
public Result update(@RequestBody EmployeeDTO employeeDTO){log.info("编辑员工信息:{}", employeeDTO);employeeService.update(employeeDTO);return Result.success();
}

EmployeeServiceImpl.java

/*** 启用禁用员工账号** @param status* @param id*/
public void startOrStop(Integer status, Long id) {// update employee set status = ? where id = ?Employee employee = Employee.builder().status(status).id(id).build();employeeMapper.update(employee);
}
/*** 编辑员工信息** @param employeeDTO*/
public void update(EmployeeDTO employeeDTO) {Employee employee = new Employee();//employee.setUpdateTime(LocalDateTime.now());//employee.setUpdateUser(BaseContext.getCurrentId());// 使用属性拷贝简化赋值操作BeanUtils.copyProperties(employeeDTO, employee);employeeMapper.update(employee);
}

EmployeeMapper.java

/*** 根据主键动态修改属性* @param employee*/
@AutoFill(value = OperationType.UPDATE)
void update(Employee employee);

EmployeeMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.sky.mapper.EmployeeMapper"><update id="update" parameterType="Employee">update employee<set><if test="name != null">name = #{name},</if><if test="username != null">username = #{username},</if><if test="password != null">password = #{password},</if><if test="phone != null">phone = #{phone},</if><if test="sex != null">sex = #{sex},</if><if test="idNumber != null">id_Number = #{idNumber},</if><if test="updateTime != null">update_Time = #{updateTime},</if><if test="updateUser != null">update_User = #{updateUser},</if><if test="status != null">status = #{status},</if></set>where id = #{id}</update>
</mapper>

4、实现效果

在这里插入图片描述

5、项目源码

前后端源码及数据库 SQL 文件
https://download.csdn.net/download/qq_44721831/89463416

http://www.fp688.cn/news/155389.html

相关文章:

  • 织梦做的网站好优化seo整站排名
  • 淘宝优惠券网站怎么做sem推广案例
  • 做库房推广哪个网站好南京疫情最新消息
  • 上海网站建设聚众网络网站快速排名
  • 网站后台 添加用户谷歌浏览器安卓版
  • 做网站多少钱西宁君博美评哪个公司的网站制作
  • 湖南做网站 磐石网络引领怎么安装百度
  • 厦门做网站的公司百度收录
  • 如何设置网站logo优化网站链接的方法
  • seo快速排名优化方法网站优化团队
  • 哪里有做网站系统的河北seo基础教程
  • 郑州做网站好优化深圳seo
  • php企业网站开发好学么企业seo如何优化
  • wordpress 有赞收款百度优化服务
  • 贵阳企业建站系统模板关键词排名优化如何
  • 查企业网站有哪些2024年新冠疫情最新消息
  • 网站上想放个苹果地图怎么做推广网络推广
  • 上海网站建设官方网站自己的网站怎么在百度上面推广
  • 做网站江西运营培训班有用吗
  • 南阳在线网站制作网络服务中心
  • 最专业的网站建设价格外链推广是什么意思
  • 鸡西网站设计网站优化内容
  • 众筹网站建设百度网盘登录
  • 北京网站优化解决方案百度一下百度一下你知道
  • 福州网站建设找百诚互联微信小程序开发公司
  • 此网站无法提供安全连接 建设银行推广平台怎么找客源
  • 做公寓酒店跟网站合作有什么技巧app推广代理去哪里找
  • 吕梁做网站公司网络广告一般是怎么收费
  • 银川网站建设移动优化课主讲:夫唯老师
  • 网站百度提示风险seo技术培训茂名