JAVA接口的小问题

我想问下,IService那个接口有什么作用啊,有没有什么更方便的解决这种基础知识问题的方法,可以指点我一下,谢谢

IService源码:

public interface IService<T> {
    int DEFAULT_BATCH_SIZE = 1000;

    default boolean save(T entity) {
        return SqlHelper.retBool(this.getBaseMapper().insert(entity));
    }

........

}

1、首先Iservice是一个接口,作者定义接口的目的是,可能每个实体T都存在增删改查(CRUD)等功能,我们使用一个接口来抽象出这些相同的方法或者操作。
2、再看实现方法:不管是用JDBC实现还是MyBatis-plus自带的实现都可以很方便实现。
3、再说一个优点:假如你的项目的数据库是MySQL,现在要换成Oracle,那你只需要继承IService接口,去实现Oracle相关的服务层的代码就可以了,MySQL服务层代码一点也不用动。
4、不知道你看没看Java的设计模式,他有几个原则,其中最重要的一个原则是“对扩展开放,对修改关闭”,这体现了Java里面的接口和抽象类的重要性。

鄙人才疏学浅,多多指教。

你是说mybatis-plus的?里面有封装的方法

面向接口开发,易扩展。