美文网首页
mybatis的condition使用

mybatis的condition使用

作者: 七七总是很暴躁 | 来源:发表于2020-02-23 16:39 被阅读0次

实体类等不赘述。
1.新建一个BaseMapper文件,继承几种基础mapper,可根据需求自行添加

public interface MyMapper<T>
        extends BaseMapper<T>,
        ConditionMapper<T>,
        IdsMapper<T>,
        ExampleMapper<T>,
        InsertListMapper<T>,
        MySqlMapper<T> {
}

2.新建一个BaseService,此处仅添加根据condition查找的方法,可自行添加其他需要使用的一些方法。

public interface MyBaseService<T> {
    void deleteByCondition(T model, Condition condition);
    List<T> findByCondition(Condition condition);
}

3.实现BaseService

public abstract class AbstractServiceImpl<T> implements MyService<T> {

    @Autowired
    protected MyMapper<T> mapper;

    private Class<T> modelClass;

    public AbstractServiceImpl() {
        ParameterizedType pt = (ParameterizedType) this.getClass().getGenericSuperclass();
        modelClass = (Class<T>) pt.getActualTypeArguments()[0];
    }

    public void deleteByCondition(T model, Condition condition) {
        mapper.updateByConditionSelective(model,condition);
    }

    public List<T> findByCondition(Condition condition) {
        return mapper.selectByCondition(condition);
    }

}

4.在方法实现类下引用
接口定义

public interface StudentService extends MyBaseService<Student> {
    void ifExists(String studentNo);
}

实现类

public class StudentServiceImpl extends AbstractServiceImpl<Student> implements StudentService {

    @Override
    public void ifExists(String studentNo) {

        Condition condition = new Condition(实体.class);
        condition.createCriteria().andEqualTo("id",studentNo).andEqualTo("isDeleted",0);

        if(findByCondition(condition).size() != 0) {
            throw new RuntimeException("学生存在!");
        }
    }
}

相关文章

  • mybatis的condition使用

    实体类等不赘述。1.新建一个BaseMapper文件,继承几种基础mapper,可根据需求自行添加 2.新建一个B...

  • java并发-Condition接口

    Condition的简单使用 使用Condition实现的有界队列 核心方法 await()方法源码分析 sign...

  • indexPath的问题

    在使用断点调试的时候 使用condition的时候要确定是cell的哪一行,在condition后面使用Index...

  • aqs中condition的实现

    condition使用场景 condition条件变量的使用,看起来和操作系统中的pthread_cond很像,又...

  • java condition使用及分析

    java condition使用及分析

  • Java多线程学习四 Lock的使用

    一、 配合Condition使用 Condition的await()方法相当于Object的wait()方法,si...

  • 条件渲染wx:if

    小程序中使用 wx:if="{{condition}}" 进行条件渲染,当condition为true时,携带 w...

  • AQS条件队列及中断机制

    Condition条件队列 当我们进行线程间的通信时,可以使用ReetrantLock与Condition相结合,...

  • Condition 简单使用

    类似于java中原来线程交互所用的wait,notify和notifyAll方法在新的并发包中基于重入锁机制引入了...

  • Condition使用 - 草稿

    1condition 介绍及demo Condition是在java 1.5中才出现的,它用来替代传统的Objec...

网友评论

      本文标题:mybatis的condition使用

      本文链接:https://www.haomeiwen.com/subject/sincqhtx.html