mybatis

MyBatis 的工作原理

一般使用mybatis之前一定先要理解下mybatis原理,所以我们开始进入主题 下面对图中的每步流程进行说明。1)读取 MyBatis 配置文件:mybatis-config.xml 为 MyBatis 的全局配置文件,配置了 MyBatis 的运行环境等信息,例如数据库连接信息。2)加载映射文件 ......
原理 MyBatis

mybatis plus中的${ew.sqlSegment},${ew.sqlSelect},${ew.customSqlSegment}使用

ew是mapper方法里的@Param(Constants.WRAPPER) Wrapper queryWrapper对象 首先判断ew.emptyOfWhere是否存在where条件,有的话再拼接上去,ew.customSqlSegment是WHERE + sql语句没有where的时候加上 == ......

MyBatis-使用注释方法执行操作案例-2023-04-18

第一步:编写工具类,注意openSession 参数如增加true ,则为事务自动提交 package com.feijian.utils; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSess ......
注释 案例 MyBatis 方法 2023

MyBatis查询功能

如果查询出的数据只有一条,可以通过 实体类对象接收 List集合接收 Map集合接收,结果{password=123456, sex=男, id=1, age=23, username=admin} 如果查询出的数据有多条,一定不能用实体类对象接收,会抛异常TooManyResultsExcepti ......
查询功能 MyBatis 功能

mybatis

一.Mybatis简介 1.什么是Mybatis?MyBatis是一个优秀的持久层框架,它对jdbc操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动、创建connection、创建statement、手动设置参数、结果集检索等jdbc繁杂的过程代码。My ......
mybatis

mybatis环境搭建

1.使用工具 IDEA,MySQL数据库,maven 2.开始搭建 2.1数据表的创建 CREATE TABLE `user`( `id` INT(20) NOT NULL PRIMARY KEY, `name` VARCHAR(30) DEFAULT NULL, `password` VARCHA ......
mybatis 环境

Mybatis的"#"符号和"$"符号

#是一个占位符,$是拼接符。 #{}和${}的区别是什么?1. #{} 是预编译处理,${}是字符串替换。2. Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值;3. Mybatis在处理${}时,就是把${}替换成变量的值。4. ......
quot 符号 Mybatis

Mybatis学习总结(转载)

前言 众所周知,MyBatis是对JDBC进行封装而成的产品,所以,聊MyBatis源码之前我们得先了解JDBC。 推荐:JDBC这个问题,问的小伙伴一脸懵逼 JDBC JDBC案例: public class JdbcDemo { public static final String URL = ......
Mybatis

Mybatis源码深度解析(转载)

我们从一个简单案例入手,接着就是一步一步的剥开Mybatis的源码,大量的图文结合。 Mybatis使用案例 添加mybatis和mysql相关pom依赖。 <!-- Mybatis依赖 --> <dependency> <groupId>org.mybatis</groupId> <artifac ......
源码 深度 Mybatis

Mybatis SqlSession详解(转载)

前言 老规矩,先上案例代码,我们按照这个案例一步一步的搞定Mybatis源码。 public class MybatisApplication { public static final String URL = "jdbc:mysql://localhost:3306/mblog"; public ......
SqlSession Mybatis

MyBatis获取参数的方式

1 MyBatis获取参数值的两种方式:${}和#{} 2 ${}的本质就是字符串拼接,#{}的本质就是占位符赋值 3 ${}使用字符串拼接的方式拼接sql,若为字符串类型或日期类型的字段进行赋值时,需要手动加单引号;但是#{}使用占位符赋值的方式拼接sql,此时为字符串类型或日期类型的字段进行赋值 ......
参数 MyBatis 方式

搭建一个MyBatis项目

开发环境:idel+maven+MySql+MyBatis 项目结构图: 1.创建maven工程,引入maven依赖 2.创建MyBatis的核心配置文件 在resources下创建mybatis-config.xml文件,粘贴如下信息 3.创建mapper接口 4.创建MyBatis的映射文件 映 ......
MyBatis 项目

关于Mybatis中常见的问题以及解决办法

一.基础问题 问题一:所有的配置没问题时,查询的数据库却为空,首先可以确定的是配置没问题,数据库连接也没有问题,那就可能是数据读取有问题了 有三种解决办法 解决办法:(1)去实体类修改set方法,Mybatis是通过set方法进行查询的,所以只需要修改set方法就可以查询得到(不推荐使用) (i)原 ......
常见 Mybatis 办法 问题

mybatis-config.xml配置

具体代码 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-con ......
mybatis-config mybatis config xml

mybatis配置文件

mybatis需要创建一个配置文件放在resource下面,一般命名为mybatis-config.xml下面是配置文件中的代码<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org/ ......
mybatis 文件

Java MyBatis-Plus(4)MybatisPlus整合Pagehelper实现分页

序言 /** * pageInfo对象中属性含义 * private int pageNum;//当前页码 * private int pageSize;//设置每页多少条数据 * private int size;//当前页有多少条数据 * private int startRow;//当前页码第 ......

使用 Mybatis 对 mysql 查询时间范围

Controller 中的时间入参用 String 表示: // 查询接口,按关键系统和生效日期排序,默认查询一年内的数据。 @GetMapping(value = "/getData") public List<SystemAvailability> selectSystemAvailabilit ......
范围 Mybatis 时间 mysql

Mybatis-plus 中Wrapper的使用

mybatis plus条件构造器关系图 1.上图绿色框为抽象类abstract 2.蓝色框为正常class类,可new对象 3.黄色箭头指向为父子类关系,箭头指向为父类 QueryWrapper 继承自 AbstractWrapper ,自身的内部属性 entity 也用于生成 where 条件及 ......
Mybatis-plus Mybatis Wrapper plus

springboot-web-mybatis

Restful开发规范 Restful是网络应用接口程序的接口设计风格,基于HTTP协议 GET:查询 POST:新增 PUT:修改 DELETE:删除 Restful是一种风格,可以不遵守 如何为请求参数设置默认值 可以在Service层判断是否为null,如果为true则给它赋值默认值 可以在C ......

mybatis用法

//引用其它mapper.xml的sql片段 <include refid="namespace.sql片段"/> <sql>用来封装SQL语句, <include>来调用,如果用了refid="base_column_list"则: </select> <select id="selectOne" ......
mybatis

mybatis generatorConfiguration 生成代码

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://m ......
generatorConfiguration mybatis 代码

mybatis 连接 ORACLE

application-common-dev.yml spring: profiles: include: [common] main: allow-bean-definition-overriding: true #Redis服务器IP redis: host: 127.0.0.1 #Redis服 ......
mybatis ORACLE

MyBatis获取参数值的两种方式:${}和#{}

资料来源于:B站【尚硅谷】MyBatis零基础入门教程(细致全面,快速上手) ,本人才疏学浅,记录笔记以供日后回顾 视频链接 /** * MyBatis获取参数值的两种方式:${}和#{} * ${}本质字符串拼接 * #{}本质占位符赋值 * MyBatis获取参数值的各种情况: * 1、mapp ......
参数 MyBatis 方式

1、MyBatis简介

##1.1、MyBatis历史 MyBatis最初是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation迁 移到了Google Code。随着开发团队转投Google Code旗下, iBatis3.x正式更名为MyBatis。代码于 ......
MyBatis 简介

Mybatis_06 _查询语句对应关系

Mybatis_06 对应关系 多对一: 使用关联 association 一对多: 使用集合 collection 创建SQL表: CREATE TABLE `teacher` ( `id` INT(10) NOT NULL, `name` VARCHAR(30) DEFAULT NULL, PR ......
语句 Mybatis 06

springboot学习之四(整和mybatis)

springboot整和mybatis 1.mapper文件开发 2.纯注解开发 https://www.cnblogs.com/fps2tao/p/13821490.html ......
springboot mybatis

当Mybatis报错,集合长度超过1000时

/** * 分批插入-公共方法 * * @param objects:数据集合 * @param subSize:单次插入的条数 */ public static <E> List<List<E>> splitTo(List<E> objects, int subSize) { //1.确定数据要分 ......
长度 Mybatis 1000

mybatis的坑-foreach

往MyBatis中批量插入数据,我们常常这么干 <insert id="batchInsert" parameterType="java.util.List"> insert into USER (id, name) values <foreach collection="list" item="m ......
mybatis foreach

mybatis-plus的使用

1. springboot自动装配原理 1.1 springboot包扫描原理 包建议大家放在主类所在包或者子包。默认包扫描的是主类所在的包以及子包。 主函数在运行时会加载一个使用@SpringBootApplication标记的类。而该注解是一个复合注解,包含@EnableAutoConfigur ......
mybatis-plus mybatis plus

【问题记录】【Mybatis-Plus】报表查询慢之自定义分页查询中的统计个数

1 问题原因 生产环境系统的券表、会员信息表本身比较大,然后查询券的时候会关联会员表进行查询,本身select 并不慢大概2-3秒,但是页面查询就是慢,猜测可能就是分页查询的时候统计个数的时候慢,试着数据库执行了一下,还真是,count就要快达到一分钟了,慢的原因找到了,就是要优化这个分页统计个数的 ......
Mybatis-Plus 报表 个数 Mybatis 问题