草庐IT

MyBatis-plus

全部标签

mybatis日志打印大杀器

文章目录前言MybatisLogFormat选项一选项二缺点MybatisLogFree总结前言各位精通CRUD的老司机,相信大家在工作中mybatis或者mybatisplus使用的肯定是比较多的,那么大家或多或少都应该对下面的行为感到熟悉。我们排查问题的时候,从日志中复制出来的SQL参数位置都是使用?占位的,我们需要将一个一个的参数手动赋值到?的位置,随后该SQL才能放到数据库中正确执行。对于这样的操作,一次两次尚可接受,多了就会让人对于这种机械性的操作很是反感。那么,对于这个问题有没有比较好的解决方案呢?答案还真有,今天就给大家推荐两款不错的IDEA插件,这两款插件笔者也都使用过。注:通

springboot的代码生成器mybatis-plus-generator-ui

目录一、导入mybatis-plus-generator-ui依赖二、GeberatorUIServer代码解读三、整体代码四、访问mybatis-plus-generator-ui一、导入mybatis-plus-generator-ui依赖dependency>groupId>com.github.davidfantasy/groupId>artifactId>mybatis-plus-generator-ui/artifactId>version>2.0.5/version>scope>test/scope>/dependency>二、GeberatorUIServer代码解读Geber

【Java】Mybatis Plus LambdaQueryWrapper梳理

【Java】Mybatis-PlusLambdaQueryWrapper梳理前言为了更方便的实现动态SQL,MybatisPlus在其基础上扩展了LambdaQueryWrapper,LambdaQueryWrapper提供了更加简便的查询语法,同时也避免了SQL注入的风险。LambdaQueryWrapper实现了QueryWrapper的全部功能,并提供了基于Lambda表达式的查询方式,使得查询语法更加优雅。使用LambdaQueryWrapper,可以方便的实现各种查询条件的拼接,如where、and、or、in、like、between等条件。LambdaQueryWrapper通过

[LitCTF 2023]Http pro max plus

 打开环境后提示说,只允许在本地访问,本地访问,还是想到了XFF字段 好家伙的,直接被嘲讽,还是了解太少了,都不知道还有没有其他方式可以控制ip地址信息 经过查看wp,得知一种新的方式Client-IP当客户端发送HTTP请求时,可以使用不同的字段来传递客户端IP地址。Client-IP:-Client-IP是另一个用于传递客户端IP地址的HTTP请求头字段,但并不如X-Forwarded-For常用。这个字段只包含一个IP地址,即请求的客户端IP地址。例如,一个请求的Client-IP字段可能是:Client-IP:203.0.113.195。表示请求的客户端IP地址是203.0.113.1

手写Mybatis:第9章-细化XML语句构建器,完善静态SQL解析

文章目录一、目标:XML语句构建器二、设计:XML语句构建器三、实现:XML语句构建器3.0引入依赖3.1工程结构3.2XML语句构建器关系图3.3I/O资源扫描3.4SQL源码3.4.1SQL对象3.4.2SQL源码接口3.4.3原始SQL源码实现类3.4.4静态SQL源码实现类3.5动态上下文3.6SQL节点3.6.1SQL节点接口3.6.2混合SQL节点实现类3.6.3静态文本SQL节点3.7脚本语言驱动3.7.1脚本语言驱动接口3.7.2XML语言驱动器3.7.3脚本语言注册器3.8类型处理器3.8.1类型处理器接口3.8.2类型处理器注册机3.9记号处理器3.9.1记号处理器接口3.

2023年最新SpringBoot3整合Mybatis-plus 亲测有效~

Mybatis-Plus(简称MP)是一个基于MyBatis的增强工具库,它简化了与数据库的交互操作并提供了一系列增强功能,使开发者能够更加方便快捷地进行数据库访问。以下是Mybatis-Plus的一些主要特性和功能:简化的CRUD操作:Mybatis-Plus提供了通用的CRUD接口和方法,可以实现常见的数据库操作,如插入、修改、删除和查询,大大减少了编写重复的SQL语句和Mapper接口的工作量。自动化的分页查询:Mybatis-Plus内置了分页插件,可以方便地进行分页查询操作。只需在查询条件中设置分页参数即可自动完成分页,并返回分页结果。代码生成器:Mybatis-Plus提供了一个功

MyBatis 动态SQL之<where>标签-

简介where标签主要用来简化SQL语句中的条件判断,可以自动处理AND/OR条件。在if标签和choose-when-otherwise标签的案例中,SQL语句加入了一个条件’1=1’,它既保证了where后面的条件成,页避免了where后面出现的第一个词语是and或者or之类的关键字。假设把条件‘1=1’去掉,可以出现以下语句select*fromt_customerwhereandusernamelikeconcat('%','#{username}','%')上面语句因为出现了where后直接是and,在sql运行时会报语法错误。这个时候可以使用where标签处理语法where>ift

Mybatis批量更新优化方案

目录前言需求原方案优化方案一优化方案二总结前言今天在对接客户接口的时候,对方同步数据到我们系统,涉及到数据批量更新,插入的逻辑,出于性能方面的考虑,决定对自己写的逻辑进行优化,下面对几种优化方案进行总结。需求同步部门数据到mysql数据库,响应示例:拿到json后,如果数据库不存在部门数据,则进行插入操作;存在部门数据,则做修改操作。这里演示存在数据进行修改操作。原方案使用mybatis-plus的saveOrUpdateBatch接口修改部分代码逻辑:启动项目进行测试:经测试,接收的数据30条左右,耗时1082ms,显然达不到预期的性能要求,于是针对此进行优化。优化方案一在mybatis的x

Mybatis实现JsonObject对象与JSON之间交互

项目中使用PostGresql数据库进行数据存储,表中某字段为Json类型,用于存储Json格式数据。PG数据库能够直接存储Json算是一大特色,很多特定情境下使用直接存储Json字段数据能够大量节省开发时间,提高后台数据查询和转换效率。1、基础mysql类型与MyBatis数据进行交互如果我们有一个JSONObject属性的字段需要与数据库中Json格式的数据进行交互,此时我们就需要自定义一个转换类,将数据库中json格式的对象映射为Java对象,也可以使用Mybatis对JSONObject对象进行映射,将其在数据库中以json格式保存。2、Entityimportcom.alibaba.

MyBatis-Plus——条件构造器Wapper、QUeryWrapper、UpdateWrapper、LambdaQueryWrapper、LambdaUpdateWrapper(详解)

目录一、条件构造器简介二、QueryWrapper组装查询条件三、QueryWrapper组装排序条件四、QueryWrapper组装删除条件五、QueryWrapper实现修改功能六、QueryWrapper条件的优先级七、QueryWrapper组装select字句(查询指定字段)八、QueryWrapper组装子查询九、UpdateWrapper实现修改功能十、QueryWrapper使用condition组装条件十一、LambdaQueryWrapper(推荐)十一、LambdaUpdateWrapper(推荐)一、条件构造器简介二、QueryWrapper组装查询条件如果下面这个se