• 2024-07-02MyBatis的基本使用二
    动态SQL语句一、if判断id,userName,realName,sex,mobile,email,note,二、where字句where的作用:1.判断where中所有的条件判断成不成立,成立加where,2.第一个成立的条件去除and。anda.emaillikeCONCAT('%',#{email},'%')anda.sex=#{sex}
  • 2024-07-02MyBatis的几个核心类和基本用法
    1.SqlSessionFactoryBuilder:读取配置信息创建SqlSessionFactory,建造者模式,方法级别生命周期,方法结束生命周期结束;重点是建造出SqlSessionFactory工厂对象2.SqlSessionFactory:SqlSession工厂对象,用于创建Sqlsession,工厂单例模式,存在于程序的整个生命周期;3.SqlSession:代
  • 2024-07-02数据分表——使用 Mybatis-Plus插件实现动态表名分表(按年份分表、按月份分表)
    本博客适合Mybatis-Plus3.4以上版本,笔者使用版本为3.5.3。分库与分表的原因1.业务场景:日志、交易流水表或者其他数据量大的表,通过日期进行了水平分表,需要通过日期参数,动态的查询数据。实现思路:利用MybatisPlus的动态表名插件DynamicTableNameInnerInterceptor,实现Sql执行
  • 2024-07-02MyBatis是什么以及为什么需要ORM框架、快速搭建
    MyBatis是什么MyBatis的前身是Ibatis,本质是一款半自动化的ORM框架,除了能对POJO进行ORM映射之外,还可以编写SQL脚本语句。主要是为了解决我们平时开发中经常写的JDBC代码,将繁琐的JDBC代码封装起来,化繁为简。MyBatis映射文件四要素:1.SQL语句2.映射规则3.POJO4.Mapper接口为
  • 2024-07-01Java高手的30k之路|面试宝典|精通MyBatis(一)
    基础知识架构图MyBatis的基本架构图,展示MyBatis核心组件及其相互关系:Configuration
  • 2024-07-01MyBatis-利用切面实现公有字段自动填充(非MyBatisPlus方式)
    需求:在MyBatis框架中,如何对createBy,createTime,updateBy等这些公有字段实现自动填充呢?网上搜了很多,实现的方案全是采用集成MyBatisPlus,利用其封装好的方法来实现的。。。。。数据准备:1、准备一张数据库表CREATETABLE`user`(`id`varchar(36)NOTNULL,`username`
  • 2024-07-01MyBatis-Plus 概括
    1.MyBatis-Plus入门    1.1数据库准备DROPTABLEIFEXISTSuser;CREATETABLEuser(  idBIGINT(20)NOTNULLCOMMENT'主键ID',  nameVARCHAR(30)NULLDEFAULTNULLCOMMENT'姓名',  ageINT(11)NULLDEFAULTNULLCOMMENT'年龄'
  • 2024-07-01MyBatis中Where标签:揭秘高效SQL构建的秘密
    哈喽,大家好,我是木头左!理解Where标签的基础概念在MyBatis中,<where>标签是用于构建SQL查询语句中的一个非常重要的元素。它允许你在一个动态的SQL语句中添加WHERE子句,而不需要担心SQL语法错误或额外的逗号和AND/OR关键字。使用<where>标签可以让的SQL语句更加简洁、易读,并且能够
  • 2024-07-01mybatis 查询原理
    mybatis所有操作都会通过sqlSession来完成publicinterfaceSqlSessionextendsCloseable{<T>TselectOne(Stringvar1);<T>TselectOne(Stringvar1,Objectvar2);<E>List<E>selectList(Stringvar1);<E>List<E>
  • 2024-07-01SSM中Mybatis的配置
    注:数据库连接(此过程不当做本次笔记重点,只做简单概述)1、创建并配置jdbc.properties文件2、通过Druid连接池配置连接数据库3、将数据源(dataSource)注入IOC详细配置一、xml文件与配置类混合配置1、配置logback.xml文件<?xmlversion="1.0"encoding="UTF-8"?><configuration
  • 2024-06-30mybatis #{} 和 ${} 的区别
    在MyBatis中,#{}和${}是两种不同的参数处理方式,它们在SQL语句的动态生成和预编译语句的参数绑定中扮演着不同角色。#{}#{}主要用于预编译语句(PreparedStatement)的参数绑定,它具有以下几个特点:防止SQL注入:#{}能够自动进行字符串的转义,将特殊字符转为SQL字符串,从而
  • 2024-06-30mybatis一级缓存、二级缓存的原理
    MyBatis的缓存机制分为两个级别:一级缓存和二级缓存。这两种缓存机制都有助于提高数据访问效率,减少对数据库的直接请求次数,但它们的工作原理和适用场景有所不同。一级缓存(Per-ExecutorTransactionalCaches)一级缓存也被称为“事务范围内的缓存”或者“执行器级别的缓存”。它是
  • 2024-06-24MyBatis针对String类型的数字<if>标签失效问题
    需求描述:大致场景是订单模块去接受流程模块发送的MQ消息,针对MQ消息发送的是一个实体类,该实体类中有一个String类型的字段,用于判断当前业务状态,1表示审核中2表示已审核等。订单模块根据这个状态去修改自身状态的信息可以看到这里有一个If标签,用于判断这个eventType的值
  • 2024-06-24Spring框架集成Mybatis
    本例演示转账操作准备数据库表t_act(账户表)创建maven模块,引入依赖<dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>6.1.8</
  • 2024-06-23Mybatis 系列全解(1)——全网免费最细最全,手把手教,学完就可做项目!
    Mybatis系列全解(1)1.第一个小程序2.CURD增删改查3.模糊查询4.配置解析4.1核心配置文件4.2环境配置4.3属性4.4类型别名4.5设置4.6映射器mappers1.第一个小程序1)创建一个数据库,一个表,填入一些数据。(这里不做演示,可以参考我前面写的数据库文章有具体介绍:
  • 2024-06-23Error creating bean with name 'userServiceImpl': Unsatisfied dependency expressed through
     原因是:Property'sqlSessionFactory'or'sqlSessionTemplate'arerequired,检查一下这两个类是干什么的:SqlSessionFactory是MyBatis的重要对象之一,是创建SqlSession的工厂。SqlSessionTemplate是MyBatis-Spring的核心,是MyBatis为了接入Spring提供的Bean,这个
  • 2024-06-239. Mybatis 小技巧
    1.#{}和$#{}和${}的区别#{}:先编译sql语句,再给占位符传值,底层是PreparedStatement实现。可以防止sql注入,比较常用。${}:先进行sql语句拼接,然后再编译sql语句,底层是Statement实现。存在sql注入现象。只有在需要进行sql语句关键字拼接的情况下才会用到。‍什么情况
  • 2024-06-239. Mybatis 小技巧
    1.#{}和${}和${}的区别{}:先编译sql语句,再给占位符传值,底层是PreparedStatement实现。可以防止sql注入,比较常用。${}:先进行sql语句拼接,然后再编译sql语句,底层是Statement实现。存在sql注入现象。只有在需要进行sql语句关键字拼接的情况下才会用到。‍什么情况下
  • 2024-06-22MyBatis-Plus入门教程(一)
    MyBatis-Plus是一个MyBatis的增强工具,在MyBatis的基础上为其提供了许多便捷功能,使开发者能够更快速、高效地进行数据库操作。MyBatis-Plus简介1.什么是MyBatis-Plus?MyBatis-Plus(简称MP)是一个MyBatis的增强工具,它旨在简化开发过程,减少重复代码,提高开发效率。MP通
  • 2024-06-22Mybatis-plus入门教程(二)
    第一步:环境准备1.添加依赖确保在项目的构建文件中添加MyBatis-Plus依赖。Maven:<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.4.3.4</version></dependency>Gradle:im
  • 2024-06-22MyBatis+Spring+SpringMVC 整合
    文章目录构建web项目导入mvc依赖添加mvc配置类编写controller层类构建war包Tomcat安装及配置 构建web项目将原有项目构建为web项目:File→ProjectStructure→Facets→加号→Web→OK→OK将原有项目构建为web项目:File→ProjectStructure→Facets→加号→Web→OK→OK
  • 2024-06-22SpringBoot 项目使用 Mybatis Plus 实现多租户
    pom文件<properties><mybatis-plus.version>3.5.1</mybatis-plus.version></properties><!--mybatis-plus依赖配置--><dependency><groupId>com.baomidou</groupId><artifactId&g
  • 2024-06-226. 在WEB中应用MyBatis(使用MVC架构模式)
    学习目标:掌握mybatis在web应用中怎么用mybatis三大对象的作用域和生命周期ThreadLocal原理及使用巩固MVC架构模式为学习MyBatis的接口代理机制做准备实现功能:银行账户转账使用技术:HTML+Servlet+Mybatis1.需求描述​​2.数据库表的设计和准备数据创建数据库表
  • 2024-06-226. 在WEB中应用MyBatis(使用MVC架构模式)
    学习目标:掌握mybatis在web应用中怎么用mybatis三大对象的作用域和生命周期ThreadLocal原理及使用巩固MVC架构模式为学习MyBatis的接口代理机制做准备实现功能:银行账户转账使用技术:HTML+Servlet+Mybatis1.需求描述​​2.数据库表的设计和准备数据创建数据库表
  • 2024-06-226. 在WEB中应用MyBatis(使用MVC架构模式)
    学习目标:掌握mybatis在web应用中怎么用mybatis三大对象的作用域和生命周期ThreadLocal原理及使用巩固MVC架构模式为学习MyBatis的接口代理机制做准备实现功能:银行账户转账使用技术:HTML+Servlet+Mybatis1.需求描述​​2.数据库表的设计和准备数据创建数据库表