mybaties
Mybatis-plus如何根据时间戳查询PgSQL
假设数据库中时间存储为timestamp格式,输入的时间格式为"2023-07-01 23:50:12",需要先通过to_timestamp转为时间戳,再使用QueryWrapper传参,去数据库中比较 ```java QueryWrapper queryWrapper=new QueryWrapp ......
02_MyBatis01
# 1. JDBC操作的缺陷 **JDBC查询数据代码** ![image](https://img2023.cnblogs.com/blog/3225349/202307/3225349-20230701173928512-1080071406.png) **JDBC添加数据代码** ![imag ......
Mybatis-------PageHelper
PageHelper用来处理分页 首先添加依赖: <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.4< ......
IDEA MyBatis Log 插件,打印SQL语句
打开Settings->plugins 搜索插件 MyBatis Log点击安装,完成后重启IDEA即可。 ![](https://img2023.cnblogs.com/blog/2090080/202307/2090080-20230701135725252-160785093.png) 点击T ......
mybatis中遇到的小坑
`` 在mybatis中写CRUD语句时,不要使用insert或update语句返回的影响行数来作为操作是否成功的判断条件 `` insert语句在遇到唯一键存在等情况下,是可以正常执行插入操作,只是插入失败,返回影响行数还是1 update语句在更新字段与原字段数据一致情况下,对比后是不执行更新操 ......
mybatis-plus springboot无法创建bean
在学习尚硅谷的mybatis-plus中,发现依托代码无法创建userMapperbean,在网上找了各种办法,终于是找到了一个大无语的办法。 只要将springboot的版本主动降到2.x.x之后便可以创建。可能mp是国人写的目前对springboot3.x.x并没有做适配,但是更进一步的方法正在 ......
mybatis sql判断多个元素不为空
SELECT * FROM result co where <if test="projectId != null"> co.projectId=#{projectId} and </if> <if test="startTime!=null and endTime!=null"> modifyTi ......
SpringBoot2(十六)mybatis拦截
可以查看 pagehelper-spring-boot-starter 的源码,PageHelper 就是基于 Interceptor 实现的,很多代码都是可以照抄。 业务需求 拦截 mybatis 的查询结果,对数据进行脱敏处理。 (实际项目中,拦截 Controller 会更合适) 可以拦截的几 ......
Mybatis-plus代码生成
#1. 看看mybatis-plus官网 我们把"快速生成"的代码摸过来,然后在项目中创建一个类把它执行一下。因为暂时不需要打包到未来的项目中,所以放到test目录下。 ![](https://img2023.cnblogs.com/blog/2957868/202306/2957868-20230 ......
mybatis Ipage 分页返回 实体转vo
``` log.info("[ActivityInfoServiceImpl][importGainNowRewardRules],分页查询方法,开始,activityInfoVO={}", JSON.toJSONString(activityInfoVO)); if (null == activi ......
springboot 配置mybatis打印sql
方式 一: ###########################################################配置打印sql######################################################## logging: level: com.t ......
Mybatis
1. Mybatis概述 1.1. Mybatis是什么 Mybatis是一个持久层框架。 1.2. Mybatis的作用 Mybatis是一个持久层框架,当然作用就是操作数据库的(增删改查). 1.3. 为什么需要学习Mybatis Mybatis的理念:让程序员是10%的代码就可以实现数据库的操 ......
mybatis-plus框架配合数据库表时间字段自动更新问题
## 背景 在项目开发前的设计阶段,我们会根据需求分析、业务梳理的结果进行领域建模。 通常有2种方式: 1. 实体设计优先 2. 数据库设计优先 无论哪种方式,最终会创建数据库、数据表。 通常在每一张表,会设计2个时间自动,创建时间和修改时间,这样在查询数据时能够清晰的看到数据行 是什么时候创建、什 ......
Mybatis如何读取配置文件
####一、Mybatis读取配置文件过程 1. 首先,Mybatis会读取配置文件mybatis-config.xml。这个配置文件包含了MyBatis的全局配置信息,例如数据库连接信息、类型处理器、映射器等。 2. Mybatis解析mybatis-config.xml文件,获取配置信息。它使用 ......
springboot整合mybatis
1, 在application.yml中配置 点击查看代码 ``` #mybatis #配置mapper路径 mybatis: mapper-locations: classpath:mapper/*.xml ``` 2, 在每个DAO接口上面追加 @Mapper 注解 增删改查的实现代码 appl ......
Mybatis中查询出来的部分数据为空,能查出行部分字段为空
同样的sql语句,在数据库中能查出完整的行数据 在mybatis中返回数据中能查出行,但是部分有值的字段为空。 首先检查缓存,没问题的话大概率是因为mybatis自动映射的关系: 1.列名不匹配:自动映射会根据数据库中的列名和对象属性名进行映射,如果列名和属性名不匹配,就会导致数据为空。确保数据库列 ......
mybatis 动态数据源核心--AbstractRoutingDataSource
1 public abstract class AbstractRoutingDataSource extends AbstractDataSource implements InitializingBean { 2 @Nullable 3 private Map<Object, Object> t ......
21、MyBatis动态<if>标签的使用详解
一、符号转义详解: 1、转义字符方式: 含义原符号转义字符 小于 < < 小于等于 <= <= 大于 > > 大于等于 >= >= 逻辑与(和) & & 单引号 ‘ ' 双引号 “ " # 查询创建时间是小于2023年的用户 SELECT * FR ......
springboot mybatis mapper 注入原理浅析
spring+mybatis是我们常用的开发组合,一般情况,我们只需要写一个Mapper接口 加上@Mapper注解就可以使用了, 那么他的工作原理是什么呢? 标准mybatis调用应该是这样的流程 1 //读取配置 2 InputStream config = Resources.getResou ......
day 113- mybatis的查询resultMap
mybatis中的resultMap resultMap用来处理字段名和属性名不一致的情况,处理映射关系 若字段名和实体类中的属性名不一致,则可以通过resultMap设置自定义映射 <!-- 字段名和属性名不一致的情况,处理映射关系: 1. 为查询的字段设置别名,和属性名保持一致 2. 当字段符合 ......
Spring Boot 之 Mybatis Plus 分页插件
1. 创建分页插件所在的类MybatisPlusConfiguration,并添加注解`@Configuration` 2. 在配置类中添加以下代码 ```java @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { /** ......
【Mybatis】常用的标签积累<sql>、<where>等
一· 常用标签组示例: 二、部分标签总结1.sql片段标签<sql>: 通过该标签可定义能复用的sql语句片段,在执行sql语句标签中直接引用即可。这样既可以提高编码效率,还能有效简化代码,提高可读性, 需要配置的属性:id="" >>>表示需要改sql语句片段的唯一标识 引用:通过<include ......
MyBatis的映射关系
MyBatis的映射关系是有一个默认的,采用下划线命名的方式将数据库表的列名按照驼峰式映射成 Java 实体类的属性名 举个例子数据库表名为 tb_user,其中的字段名为 inst_code,对应的实体类属性名为 instCode,这样不用自定义映射关系,会默认二者相对应的 我们也可以自定义映射关 ......
Mybatis的缓存机制
一级缓存localCache 在应用运行过程中,我们有可能在一次数据库会话中,执行多次查询条件完全相同的 SQL,MyBatis 提供了一级缓存的方案优化这部分场景,如果是相同的 SQL 语句,会优先命中一级缓存,避免直接对数据库进行查询,提高性能。每个 SqlSession 中持有了 Execut ......
9、Mybatis之动态SQL
## 9.1、环境搭建 ### 9.1.1、创建新module > 创建名为mybatis_dynamicSQL的新module,过程参考[5.1节](https://www.cnblogs.com/Javaer1995/p/17419649.html "5.1节") ![image](https: ......
mybatis-plus自动生成实体类
需要引入的依赖pom.xml <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId></dependency><dependency> <groupId>com.baomidou</gro ......
Mybatis 使用汇总(介绍,功能,连接池,日志,注解,XML映射文件)
Mybatis 介绍 Mybatis 功能 Mybatis 连接池 mybatis日志 Mybatis 注解 Mybatis XML 映射文件 01.Mybatis 是一款优秀的持久层框架(DAO),它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置 ......
mybatis中数据库连接池切换到更优秀的连接池上
数据库连接池切换 mybatis中数据库连接池比较流行,性能优越的有2个:数据库连接池技术: A.Hikari(springboot默认)追光者 B.Druid(德鲁伊) 1 Druid(德鲁伊)Druid连接池是阿里巴巴开源的数据库连接池项目功能强大,性能优秀,是Java语言最好的数据库连接池之一 ......