@Getter public enum GenderEnum{ MALE(1, "男"), FEMALE(2, "女"); @EnumValue private final int code; private final String descp; GenderEnum(final int code, final String descp) { this.code = code; this.descp = descp; } }
十四、逻辑删除 1,什么是逻辑删除? 逻辑删除并不会真正的从数据库中将数据删除掉,而是将当前被删除的这条数据中的一个逻辑删除字段置为删除状态。比如该数据有一个字段 deleted_flag,当其值为 0 表示未删除,值为 1 表示删除。那么逻辑删除就是将 0 变成 1......
AutoGenerator 是 MyBatis-Plus 的代码生成器,通过 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码,极大的提升了开发效率。 十三、代码生成器 1,添加依赖 要使用代码生成器,项目除了要添加数据库驱动依赖外......
十二、使用 ActiveRecord 模式操作数据库 1,ActiveRecord 模式介绍 ActiveRecord(活动记录),是一种领域模型模式,特点是一个模型类对应关系型数据库中的一个表,而模型类的一个实例对应表中的一行记录。 ActiveRecord 一直广受动态语言( PHP 、 Ruby 等)的喜爱......
十一、Service 的 CRUD 接口3:增删修操作 1,新增数据 (1)save 方法可以将一个实体对象插入到对应的数据表中: 注意:插入成功后,当前插入对象在数据库中的 id 会写回到该实体中。 (2)saveBatch 方法可以批量插入数据: aveBatch 方法还可以设置每个批次的插入数量......
十、Service 的 CRUD 接口2:分页查询 1,添加配置 (1)MyBatis-Plus 提供了物理分页的功能,使用前首先我们需要进行相关的插件配置: 逻辑分页与物理分页比较: 逻辑分页:内存开销比较大,在数据量比较小的情况下效率比物理分页高;在数据量很大的情况下......
通常来说,我们会将具体的业务逻辑封装在 service 层中(一般会有个 interface 类以及具体的实现)。而 MyBatis-Plus 为我们提供了个 IService 接口,里面封装了通用 Service CRUD 操作。 (1)为了避免混淆,Service 与 Mapper 的 CRUD 方法前缀有所区别......
八、Mapper 的 CRUD 接口5:增删改操作 1,新增数据 (1)insert 方法可以将一个实体对象插入到对应的数据表中: (2)插入成功后,当前插入对象在数据库中的 id 会写回到该实体中: 2,删除数据 (1)deleteById 方法可以根据 id 删除一条记录......
Mybatis-Plus 由于内置通用 Mapper、通用 Service,无需复杂的配置即可实现单表大部分 CRUD 操作,大大减少了 MyBatis 的代码量。 但如果遇到关联属性的查询(1 对 1,1 对 n ),那么仍然需要我们通过自己写 SQL 的方式去做。这个我们可以使用注解的方式去做......
六、Mapper 的 CRUD 接口3:分页查询 1,添加配置 (1)MyBatis-Plus 提供了物理分页的功能,使用前我们需要要进行相关的插件配置: 逻辑分页与物理分页比较: 逻辑分页:内存开销比较大,在数据量比较小的情况下效率比物理分页高;在数据量很大的情况下......