目录
一、Idea连接Mysql数据库
成功后会提示测试成功
二、pom文件导入mybatis-plus依赖
<!-- MyBatis-plus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.1</version> </dependency><!-- MySQL --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency>
三、使用代码生成器进行代码生成
首先使用idea连接数据库,然后右键数据表
选择第一个,来到
第一步,选择最上面的module path,就选择你目前的工作目录
第二步,输入base package,选择你要生成的实体类以及Service方法的上一级,我这个地方是com.zfk
第三步,输入relative package,就是你实体类的名称,一般为 entity
第四步,在下面,选择你要操作的表,可以用ctrl多选
然后点next,跟着我勾就可以了
然后就OK了
四、效果图
什么是 MyBatis-Plus?它与 MyBatis 有何区别?
MyBatis-Plus是一个基于MyBatis的持久层框架,它在MyBatis的基础上提供了一系列的增强特性和便捷的功能,旨在简化开发人员对数据库操作的编写和管理。MyBatis-Plus采用轻量级的、零配置的方式与MyBatis集成,无需额外的配置文件。
MyBatis-Plus相比于MyBatis,提供了以下几个主要的区别和优势:
1. 集成了通用的CRUD操作:MyBatis-Plus通过提供一系列的通用方法(如insert、select、update、delete等)来简化数据库操作,减少编写重复和繁琐的SQL语句。
2. 条件构造器(Wrapper):MyBatis-Plus中的条件构造器可以简化动态查询的编写,支持通过链式调用的方式拼接查询条件,提供了丰富的查询方法,使得复杂的查询变得更加简便。
3. 代码生成器:MyBatis-Plus提供了一个代码生成器工具,可以根据数据库表结构自动生成对应的实体类、Mapper接口和XML配置文件,提高了开发效率和一致性。
4. ActiveRecord模式:MyBatis-Plus支持ActiveRecord模式,通过在实体类中提供一系列的CRUD方法,使得数据库操作变得更加直观和简洁。
5. 分页查询:MyBatis-Plus内置了分页查询的功能,通过传入页码和每页记录数,可以轻松地实现分页查询。
6. SQL注入防护:MyBatis-Plus对SQL注入进行了防护,通过内置的SQL解析器和参数处理器,可以有效地防止常见的SQL注入攻击。
总结起来,MyBatis-Plus在保留了MyBatis核心功能的基础上,提供了更加便捷和高效的数据库操作方式,简化了开发流程,并提供了一些实用的增强功能,提高了开发效率。它可以说是在MyBatis基础上的一个扩展,为开发人员提供了更多选择和便利。
MyBatis-Plus的主要特性有哪些?
MyBatis-Plus具有以下主要特性:
1. 通用的CRUD操作:MyBatis-Plus提供了一系列通用的增删改查操作方法,如插入(`insert`)、查询(`select`)、更新(`update`)和删除(`delete`),减少了编写重复和繁琐的SQL语句。
2. 条件构造器(Wrapper):MyBatis-Plus提供强大的条件构造器功能,通过链式调用的方式构建查询条件,支持动态查询和复杂查询。它包括`QueryWrapper`、`UpdateWrapper`、`LambdaQueryWrapper`和`LambdaUpdateWrapper`等不同的查询条件构造器。
3. 代码生成器:MyBatis-Plus提供了一个代码生成器工具,可以根据数据库表结构自动生成对应的实体类、Mapper接口和XML配置文件,大大减少了手动编写模板代码的工作量,提高了开发效率和一致性。
4. 分页查询:MyBatis-Plus内置了分页查询的功能,通过`Page`对象和`PageHelper`工具类,可以方便地实现分页查询。它支持多种数据库的分页查询,并提供了灵活的配置和操作方式。
5. 逻辑删除:MyBatis-Plus支持逻辑删除功能,通过在实体类中添加`@TableLogic`注解,可以实现软删除(将数据标记为已删除状态而不是实际删除)的功能,简化了处理删除操作的流程。
6. 自动填充:MyBatis-Plus提供了自动填充功能,通过在实体类中添加`@TableField`注解和自定义的填充处理器,可以自动填充某些字段的值,如创建时间和更新时间等,减少了重复性的代码编写。
7. 乐观锁支持:MyBatis-Plus内置了乐观锁的支持,通过在实体类的版本号字段上添加`@Version`注解,实现乐观锁并发控制,防止数据冲突和并发问题。
8. SQL注入防护:MyBatis-Plus对SQL注入进行了防护,通过内置的SQL解析器和参数处理器,在执行SQL语句前进行预编译和安全检查,有效地防止常见的SQL注入攻击。
9. 多租户支持:MyBatis-Plus提供了多租户的支持,通过在实体类中添加`@TableName`注解和自定义的租户处理器,实现基于数据库表的多租户数据隔离和查询过滤。
除了以上列举的特性,MyBatis-Plus还提供了一些其他实用功能,如批量操作、动态表名、缓存支持、嵌套查询支持等,帮助开发人员更轻松地进行数据库操作和业务开发。它的设计目标是提高开发效率、减少重复代码和降低维护成本,使开发人员能够更专注于业务逻辑的实现。