请解释一下这段代码: public class DefaultSqlInjector extends AbstractSqlInjector { @Override public List<AbstractMethod> getMethodList(Class<?> mapperClass) { return Stream.of( new Insert(), new Delete(), new DeleteByMap(), new DeleteById(), new DeleteBatchByIds(), new Update(), new UpdateById(), new SelectById(), new SelectBatchByIds(), new SelectByMap(), new SelectOne(), new SelectCount(), new SelectMaps(), new SelectMapsPage(), new SelectObjs(), new SelectList(), new SelectPage() ).collect(toList()); } }
时间: 2024-02-14 12:33:40 浏览: 77
从零搭建Spring Boot脚手架,手写Mybatis通用Mapper.docx
这段代码是 MyBatis-Plus 中的 DefaultSqlInjector 类的实现。它继承了 AbstractSqlInjector 抽象类,并且重写了其中的 getMethodList 方法。该方法返回一个 AbstractMethod 类型的 List,其中 AbstractMethod 是一个抽象类,它的子类包含了一组 SQL 操作的实现。
在 DefaultSqlInjector 中,该方法使用了 Java 8 的 Stream API,通过一系列的方法调用,创建了一个包含了 Insert、Delete、Update、Select 等 SQL 操作的 AbstractMethod 子类的 List,并将其返回。这些操作可以与 MyBatis-Plus 提供的自动 CRUD 生成器一起使用,简化了开发人员的工作。
阅读全文