SpringBoot集成MyBatis对管理员的查询操作
增删改查中的查询操作,对所有的普通管理员进行查询操作。
效果展示:
不仅可以在打开页面时进行对管理员的自动查询操作,还可以在输入框进行查询。
首先是前端向后端发送POST请求,后端接收到请求,如果是有参数传到后端那就是搜索框查询,如果没有参数,就是页面加载所有管理员的整体查询。
见前端代码:
methods: { adminFind(){ this.$http.post("admin/admin/admins/",this.form).then(resp => { this.tableData = resp.data.data; }) }, }, mounted() { this.adminFind(); }
后端接收响应:
@RestController @RequestMapping("/admin/admin") public class AdminController { @Autowired AdminService adminService; @PostMapping("/admins/") CommonData returnResult(@RequestBody Admin admin) { CommonData commonData=adminService.findAdmins(admin); return commonData; } }
分别调用Service层,Dao层,最后通过MyBatis查询。
数据库建表如下: 一共三个表,管理员表,角色表,管理员角色关系表。
对管理员角色表为什么要单独列出来的解释:一个管理员可以拥有多个角色,并不是一对一的关系,所以不能进行管理员表和角色表的关联查询。
MyBatis写法:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "https://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ffyc.news.dao.AdminDao"> <resultMap id="findAdmins" type="Admin"> <id property="id" column="id"></id> <result property="account" column="account"></result> <result property="gender" column="gender"></result> <result property="adminPhone" column="admin_phone"></result> <result property="address" column="address"></result> <result property="type" column="type"></result> <result property="operTime" column="oper_time"></result> <!--封装操作人--> <association property="admin" javaType="Admin"> <result property="account" column="operaccount"></result> </association> <collection property="roles" javaType="list" ofType="Role" select="findRolesById" column="id"></collection> </resultMap> <select id="findAdmins" resultMap="findAdmins"> SELECT a.id, a.account, a.gender, a.admin_phone, a.address, a.type, a.oper_time, oa.account operaccount FROM admin a LEFT JOIN admin oa ON oa.id = a.adminid WHERE a.type = 1 <if test="account!=''">and a.account = #{account}</if> <if test="gender!=''">and a.gender = #{gender}</if> </select> <select id="findRolesById" resultType="Role"> SELECT r.name FROM ROLE r LEFT JOIN admin_role ar ON r.id = ar.roleid WHERE ar.adminid = #{id}; </select> </mapper>
到此这篇关于SpringBoot集成MyBatis对管理员的查询操作的文章就介绍到这了,更多相关SpringBoot MyBatis查询内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
- SpringBoot整合mybatis-plus实现分页查询功能
- Mybatisplus集成springboot完成分页查询功能(示例代码)
- SpringBoot中MyBatis-Plus 查询时排除某些字段的操作方法
- SpringBoot整合Mybatis之各种查询、模糊查询、批量删除、动态表名操作
- springboot 使用mybatis查询的示例代码
- Springboot+Mybatis实现分页加条件查询功能
- springboot使用mybatis一对多的关联查询问题记录
- springboot整合mybatis实现多表查询的实战记录
- oracle+mybatis-plus+springboot实现分页查询的实例
- SpringBoot+MyBatisPlus+MySQL8实现树形结构查询
相关文章
Java并发编程:CountDownLatch与CyclicBarrier和Semaphore的实例详解
这篇文章主要介绍了Java并发编程:CountDownLatch与CyclicBarrier和Semaphore的实例详解的相关资料,需要的朋友可以参考下2017-09-09
最新评论