共计 1177 个字符,预计需要花费 3 分钟才能阅读完成。
在日常开发中,针对 mybatis 单表的增删改查咱们能够提取进去或者采纳 mybatisplus
- 抽取公共 Dao 接口
public interface IBaseDao<T> {int deleteByPrimaryKey(Long id);
int insert(T t);
int insertSelective(T t);
T selectByPrimaryKey(Long id);
int updateByPrimaryKeySelective(T t);
int updateByPrimaryKey(T t);
}
- 抽取公共 Service
public interface IBaseService<T> {int deleteByPrimaryKey(Long id);
int insert(T t);
int insertSelective(T t);
T selectByPrimaryKey(Long id);
int updateByPrimaryKeySelective(T t);
int updateByPrimaryKey(T t);
}
public abstract class BaseServiceImpl<T> implements IBaseService<T>{public abstract IBaseDao<T> getBaseDao();
@Override
public int deleteByPrimaryKey(Long id) {return getBaseDao().deleteByPrimaryKey(id);
}
@Override
public int insert(T t) {return getBaseDao().insert(t);
}
@Override
public int insertSelective(T t) {return getBaseDao().insertSelective(t);
}
@Override
public T selectByPrimaryKey(Long id) {return getBaseDao().selectByPrimaryKey(id);
}
@Override
public int updateByPrimaryKeySelective(T t) {return getBaseDao().updateByPrimaryKeySelective(t);
}
@Override
public int updateByPrimaryKey(T t) {return getBaseDao().updateByPrimaryKey(t);
}
}
之后咱们写的 Mapper 接口须要继承 IBaseDao<?>,
Service 层接口须要继承 IBaseService<?> 并补上泛型,实现类除了实现接口还须要继承 BaseServiceImpl,并重写 getBaseDao() 办法返回对应的 mapper 接口,这样根本的增删改查咱们就不必写了。
正文完