Mybaits-plus快速入门

2024-01-03 19:09:45

Mybaits-plus快速入门

mybaits-plus约定

? 默认以类名驼峰转下划线作为表名
? 默认把名为 id 的字段作为主键
? 默认把变量名驼峰转下划线作为表的字段名

第一步导入pom依赖

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

第二步继承BaseMapper<实体类>

@Mapper
public interface UserMapper extends BaseMapper<User> {



}

Mybaits-plus常用注解

这些注解的使用都是表名和实体类的名字不相同所使用的,

  • @TableName 用来指定表名 表名不相同时使用

  • @tableId 用来指定表中的主键字段 主键字段名不相同时使用

    里面有type这个属性可以设置为

    ldType枚举:
    ldTypeAUTO:数据库自增长
    ldType.INPUT :通过set方法自行输入
    ldType.ASSIGN_ID:分配 ID﹐梅口ldentifierGenerator的方法nextld来生成id ·默认实现类为 DefaultldentifierGenerator雪花算法

  • @TableField:用来指定表中的普通字段信息

@TableFIeld使用场景

  • 普通字段变量名不相同时使用
  • 但也会有特例 变量是is开头的会引起序列化错误,mybatis-plus 会自动去除is,所以此时也要加这个注解。
  • 变量名和数据库关键字冲突 例如order需要加转义符@TableField(value = "order ")也就是波浪线那个键的点
  • 变量名在数据库中不存在需要添加@TableField(exist = false)
普通示例
@TableName("user")
public class User {


    @TableId(value = "id",type = IdType.AUTO)
     private Long id;

mybaits-plus常见配置

mybatis-plus:
 type-aliases-package: com.itheima.mp.domain.po #别名扫描包
 mapper-locations: "classpath*:/mapper/**/*.xml" # Mapper.xml文件地址,默认值
 configuration:
  map-underscore-to-camel-case: true #是否开启下划线和驼峰的映射  一般开启
  cache-enabled: false #是否开启二级缓存 一般关闭
 global-config:
  db-config:
   id-type: assign_id # id为雪花算法生成
   update-strategy: not_null #更新策略:只更新非空字段 实体类有哪些字段才更新哪些字段

文章来源:https://blog.csdn.net/qq_62646841/article/details/135369841
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。