需求背景:
需要将岗位角色与广告配置建立多对多的关系,通过多选岗位角色作为条件来查询广告配置
在网上看了几篇类似的文章,感觉都不太靠谱,自己总结一下
关键记录下Mybatis-plus中foreach和collection的使用 还有判断集合使用 list.size > 0
废话不多说,直接上代码
实体类
//广告类
@TableName(value = "TB_ADVERTISEMENT")
public class Advertisement {
@TableId(value = "ID")
private Long id;
private String name;
private String place;
private String url;
private String orderNum;
private List<JobRole> jobRoles;
//get.. set.. toString..
}
//岗位角色类
@TableName(value = "TB_JOB_ROLE")
public class JobRole {
@TableId(value = "ID")
private Long id;
private String name;
//get.. set.. toString..
}
//广告和岗位角色关联关系中间表
@TableName(value = "TB_AD_JOB_ROLE")
public class AdJobRole {
@TableId(value = "ID")
private Long id;
private Long aId;//广告id
private Long jrId;//岗位角色id
//get.. set.. toString..
}
mapper.xml文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org