mybatisplus与mybatis比较

MyBatisPlus是一个对MyBatis的扩展,它提供了无侵入性、内置通用Mapper和Lambda形式的CRUD操作,简化了数据库操作。通过添加依赖并继承BaseMapper接口,开发者无需编写SQL,即可实现数据的增删改查。此外,MyBatisPlus还支持主键自动生成和分页插件,提高了开发效率。
摘要由CSDN通过智能技术生成

mybatisplus相较于传统的mybatis简化开发,提高效率。

mybatisplus的特性:

1、无侵入∶只做增强不做改变,不会对现有工程产生影响。

2、强大的 CRUD操作:内置通用Mapper,少量配置即可实现单表CRUD操作支持Lambda:编写查询条件无需担心字段写错。

3、支持主键自动生成。

4、内置分页插件。

(CRUD是“创建(Create)、读取(Read)、更新(Update)和删除(Delete)”四个单词的首字母缩写,常常用于描述对数据库或其他持久化存储系统的操作。这四个单词分别对应了在基本数据管理中最基础的四种操作,也成为了模型驱动设计(MDD)中一个重要的概念。

具体而言,CRUD操作如下:

  1. 创建(Create):向数据库中添加新数据项
  2. 读取(Read):从数据库中获取特定数据项或整个数据集合
  3. 更新(Update):更改数据库中现有的数据项
  4. 删除(Delete):从数据库中删除数据项

通过使用这些CRUD操作,开发人员可以有效地操作数据存储,使应用程序能够很方便地访问和处理数据。这些操作通常是通过SQL语句、ORM框架或Web服务API来实现。)

在pom.xml中添加mybatisplus的依赖:

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.1</version>
        </dependency>

在dao包里的接口(如BookDao)不再需要写sql语句,直接在接口继承BaseMapper<实体类名>

原来的代码:

@Mapper
public interface BookDao {

    @Insert("insert into tbl_book (type,name,description) values(#{type},#{name},#{description})")
    public int save(Book book);

    @Update("update tbl_book set type = #{type}, name = #{name}, description = #{description} where id = #{id}")
    public int update(Book book);

    @Delete("delete from tbl_book where id = #{id}")
    public int delete(Integer id);

    @Select("select * from tbl_book where id = #{id}")
    public Book getById(Integer id);

    @Select("select * from tbl_book")
    public List<Book> getAll();
}

现在的代码:

@Mapper
public interface BookDao extends BaseMapper<Book> {
    
}

 在测试类中注入dao接口,测试功能

@SpringBootTest
class Mybatisplus01QuickstartApplicationTests {

    @Autowired
    private BookDao bookDao;

    @Test
    void testGetAll() {
        List<Book> bookList = bookDao.selectList(null);
        System.out.println(bookList);
    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值