程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2023-06(3)

MyBatis-Plus(实用方法)

发布于2023-06-04 19:32     阅读(1135)     评论(0)     点赞(7)     收藏(2)


1.介绍

官方是这样定义的:Mybatis-Plus(简称MP)是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

2.为什么要用MyBatis-Plus?

优点:

    效率提高了,因为基本的CRUD写好了
    支持Lambda形式调用,不用担心字段写错而引起的异常
    支持主键自动生成
    内置分页插件
    基于mybatis做增强而已
    SQL语句自由控制,较为灵活
    提供动态SQL语句,可以根据需求灵活控制SQL与业务代码分离,易于阅读
    提供功能丰富的条件构造器快速进行无sql开发
    内置代码生成器,分页插件, 性能分析插件等

3 .常用方法

  Mapper继承了BaseMapper类然后由BaseMapper类提供了一系列CRUD方法

常用函数

插入时新建wrapper的可拼接函数

 如果BaseMapper不能满足实际业务需求的时候也可以直接创建方法创建对应的Mapper.xml文件自己写sql语句来实现

在对应的Mapper.xml文件中写sql语句首先用到的就是联表查询了。那么我就介绍一下内连接,左连接,右连接作用及区别。

例如表1

表2

 内连接INNER JOIN表1 有4条结果,但是与表2有关联的结果只用3条,那么内连接就会将两个表中有关联的数据都显示出来

左连接LEFT JOIN 就会将左边表的全部内容展示出来,右边表中只将与左表有关联的数据展示

右连接REGHT JOIN 与左连接LEFT JOIN相反

表中数据显示Null的话如果返回给客户会不太好看

例 成绩表

 成绩表有缺考的应该显示0分的,但是显示的Null分不符合要求,这时候可以这样判断一下。

 但是思考一下如何把每位同学成绩最高科目展示出来

4.使用mybatis-plus

创建模型类pojo

写个测试类试一下

 常用注解及方法

实体类中创建时间以及修改时间可以加入

@TableField(fill = FieldFill.INSERT_UPDATE)
@TableField(fill = FieldFill.INSERT)

编写处理器来处理这个注释就会在写操作时候自动生成当前时间

 自定义sql

 可以在Mapper文件中使用@Select注解

 5.配置日志

 这样就可以在日志中看到我们执行的sql了


 

 

原文链接:https://blog.csdn.net/weixin_61901664/article/details/127439150



所属网站分类: 技术文章 > 博客

作者:快起来搬砖啦

链接:http://www.javaheidong.com/blog/article/674098/2cff31ae51427ff24aaa/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

7 0
收藏该文
已收藏

评论内容:(最多支持255个字符)