首页 > 其他分享 >mybatisplus

mybatisplus

时间:2024-04-16 20:25:14浏览次数:23  
标签:mapper TableField mybatisplus age Param ew id

mybatisplus如何实现获取信息

通过扫描实体类并通过反射获取实体类信息作为数据库表信息

  约定:类名、变量名驼峰转下划线作为表名

      id字段默认为主键

常用注解@TableName,@TableId,@TableField

@TableField使用场景:成员变量为boolean并且名称为is开头,转化时会去掉is

比如:private boolean isMarried ====> married

   关键字冲突:@TableField("`order`") order 

   数据库中不存在的字段:@TableField(exist=false)

 

常用配置

mybatis-plus:
 type-aliases-package: com.sky.entity # 包扫描 其实除了这个大部分默认的就行 mapper-locations: classpath:mapper/*.xml # 指定xmlmapper的位置 configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 打印日志 map-underscore-to-camel-case: true # 开启下划线和驼峰的映射 global-config: db-config: id-type: auto # id类型:自增/雪花/自填 update-strategy: not_null # 更新策略:只更新非空字段

常用条件构造器:QueryWrapper UpdateWrapper

LambdaQueryWrapper:字段不可以直接写,需要通过反射例如:User类里的id 原本是写"id" 使用后为User::getId

↑优点:避免了硬编码

 

自定义sql:where条件用mp写,自己定义sql语句中剩下的部分

需在mapper方法参数中用param注解声明wrapper变量名称,必须是ew

@Param("ew")LambdaQueryWrapper<User>wrapper

样例:service---》mapper----》mapper.xml

Integer age=1;
LambdaQueryWrapper<Admin>wrapper=new         
LambdaQueryWrapper<Admin>().in(Admin::getId); adminMapper.updateAgeById(wrapper,age);
 void updateAgeById(@Param("ew") LambdaQueryWrapper<Admin> wrapper,@Param("age") Integer age);
    <update id="updateSexById">
        UPDATE admin SET age=age-#{age} ${ew.customSqlSegment}
    </update>

 

 

如何使用Iservice

1.在service接口类中继承IService

2.在serviceImpl中继承ServiceImpl<BaseMapper,BaseEntity>,实现service

标签:mapper,TableField,mybatisplus,age,Param,ew,id
From: https://www.cnblogs.com/kun1790051360/p/18138763

相关文章

  • 80、SpringBoot3 SpringSecurity Mybatisplus最新版 整合 实现登入权限控制
    1、导入pom依赖<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apac......
  • SpringBoot+MybatisPlus 增删改查学习第三章 (C#转JAVA)
    packagecom.example.demo;importcom.baomidou.mybatisplus.core.conditions.query.QueryWrapper;importcom.example.demo.entity.Person;importcom.example.demo.mapper.PersonMapper;importcom.example.demo.service.PersonService;importorg.junit.jupiter.api.Test;i......
  • Mockito测试框架结合mybatisplus项目中第一次体验
    因为要补充单测,一般的springbootTest不是真正意义上的单测。我们需要mock数据库的连接,而不是真正的调用。所以我觉得mockito测试框架就挺好的pom引入如下代码,这里用inline是因为我要用到静态方法的调用。<dependency><groupId>org.mockito</groupId>......
  • 【javaWeb &第十二篇】MybatisPlus
    MybatisPlus详细学习快速入门MybatisPlus特性标准数据层开发分页查询按条件查询查询投影DQL编程控制DML编程控制逻辑删除乐观锁代码生成器快速入门MybatisPlus是基于Mybatis框架基础上开发的增强型工具,旨在简化开发,提高效率官方地址:http://mp.baomidou.com/开......
  • java 企业工程管理系统软件源码+Spring Cloud + Spring Boot +二次开发+ MybatisPlus
    鸿鹄工程项目管理系统SpringCloud+SpringBoot+Mybatis+Vue+ElementUI+前后端分离构建工程项目管理系统项目背景一、随着公司的快速发展,企业人员和经营规模不断壮大。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性,公司对内部工程管理的提升提出了更高的要......
  • java 企业工程管理系统软件源码+Spring Cloud + Spring Boot +二次开发+ MybatisPlus
     鸿鹄工程项目管理系统SpringCloud+SpringBoot+Mybatis+Vue+ElementUI+前后端分离构建工程项目管理系统项目背景一、随着公司的快速发展,企业人员和经营规模不断壮大。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性,公司对内部工程管理的提升提出了更高的......
  • MybatisPlus分页插件的使用
    目录......
  • springboot之MybatisPlus
    文章目录一、ORM二、mybatis实际操作三、mybatis-plus一、ORM简单来说ORM就是一个能够帮我们把java中Bean类映射到数据库中。使用mybatis-plus。配置架包<!--MyBatisPlus依赖--><dependency><groupId>com.baomidou</groupId>......
  • MybatisPlus存储非List<Long>类型
    错误信息:java.lang.RuntimeException:FailedtodeserializeJSONtoList<Long> 使用mybatisplus的时候,对应数据库的实体类有个字段如下:@TableField(typeHandler=JacksonTypeHandler.class)privateList<String>authImages;需要存储图片列表的地址,["aaa.png","bbb.png&q......
  • MyBatisPlus
    MyBatisPlus快速入门使用第三方组件:导入对应的依赖研究依赖如何配置代码如何编写提高扩展技术能力步骤创建数据库编写项目,初始化项目使用springboot初始化导入依赖连接数据库传统方式:pojo--dao(mybatis,mapper.xml)--service--controller使用了myb......