作用
当集成Mybatis-Plus 后,我们的大部分数据库操作都可以通过 XxxxxMapper ,同时 Mybatis-plus 在Mapper 提供基本操作方法的同时,也提供类基础的 serviceImpl 来帮助我们完成一些常见的基本操作。
使用
一般情况下,我们首先要建立Entity ,基本操作可以参考 mybatis-plus 基本集成以及使用,分页等
注意里面的标注在Entity 属性上的注解 @TableField 可以忽略不写,会自动适应驼峰式书写规范,大小写拼接处会被替换为 下划线
创建完成entity 后就要创建基本的Mapper 并集成 Mybatis-plus 提供的基础Mapper 完成基础适配
例如:
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
@Repository
public interface XxxxMapper extends BaseMapper<XxxxEntity> {
}
然后在我们的service 去集成 Mybatis-plus 内部提供的 ServiceImpl<M extends BaseMapper, T> 即可,例如:
@Service
@Slf4j
public class XxxxServiceImpl extends ServiceImpl<XxxxMapper, XxxxEntity> implements XxxxService {
// ........其他正常的业务注入与业务代码
}
其中 implements XxxxService 为我自己定义的接口类,与框架无关,实际需要的是 extends ServiceImpl<XxxxMapper, XxxxEntity> 这一部分
当继承后,我们将可以直接使用改类内部提供的方法,见下方源码
源码
部分源码如下
内部向我们提供了 如下公共方法,可以直接使用,甚至还为我们添加了事务回滚
提供了大量包含事务的批量操作
还有大批量的删除操作,也包含了事务
继承之后基本可以满足我们大部分基础场景的使用。