当前位置: 首页 > news >正文

动力节点|MyBatis入门实战到深入源码

MyBatis是一种简单易用、灵活性高且高性能的持久化框架,也是Java开发中不可或缺的一部分。

动力节点老杜的MyBatis教程,上线后广受好评

从零基础小白学习的角度出发,层层递进

从简单到深入,从实战到源码

一步一案例,一码一实操,嘴对嘴指导

MyBatis重点、难点、考点一网打尽

不管你是小白还是正在实战开发的软件工程师,全面渗透一套拿捏~ 

课程秉承动力节点一贯的教学风格,列文虎克式讲解,全程高能式教学,每个知识点的递进都伴随着N个案例予以解释,“杜”式教学风格,保证你学得会听得懂

课程讲解从Mybatis的一些核心要点与实战中的运用,一直过渡到MyBaits源码,由表及里的代入架构思维。

资源配置:

电子书PDF 、完整的可在线观看教程、 动力节点官网提供可下载视频+所有配套资料、MyBatis学习交流群

资料下载:

Mybatis入门到架构视频教程全集免费下载-动力节点

在线观看:

【动力节点】一课搞定MyBatis教程,跟老杜从零学mybatis入门到架构思维_哔哩哔哩_bilibili

配套书籍:

本书最大的特点是能够让你从零开始,以层层递进的方式,深入框架底层源代码。既适合小白,又适合老程序员。小白可以从第一章开始按部就班的学习,老手程序员,可以直接从手写MyBatis框架开始学习。既可以让小白慢慢拥有架构思维,又可以提高老程序员的薪资。

领取书籍:

http://u3v.cn/69zm87

下拉页面,点击抽奖即可

课程目录

一、MyBatis概述

001-Mybatis课程导读

002-什么是框架

003-MyBatis在三层架构的什么位置

004-JDBC的不足

005-下载MyBatis并了解MyBatis

006-对ORM思想的深入理解以及MyBatis的特点

007-MyBatis入门程序之数据库表的设计

二、MyBatis入门程序

008-MyBatis入门程序前5步

009-MyBatis入门程序MyBatis程序的编写

010-MyBatis入门程序的小细节

011-MyBatis的事务管理机制深度剖析

012-第一个比较完整的MyBatis程序

013-在开发中junit是如何使用的

014-在MyBatis中引入JUnit

015-MyBatis集成日志框架logback

016-MyBatis工具类的编写

三、使用MyBatis完成CRUD

017-MyBatis完成insert使用Map集合传参

018-MyBatis完成insert使用POJO传参

019-MyBatis完成delete删除操作

020-MyBatis完成update更新操作

021-MyBatis完成select查一个

022-MyBatis完成select查所有

023-SQLMapper映射文件中namespace作用

四、MyBatis核心配置文件详解

024-MyBatis核心配置文件之多环境

025-MyBatis的事务管理器

026-对数据源的深度剖析

027-不同类型的数据源下有不同的属性

028-pooled和unpooled的区别

029-配置具体的数据库连接池参数

030-properties标签的配置和使用

031-properties和mapper标签的url属性

五、手写MyBatis框架

032-使用dom4j解析mybatis核心配置文件

033-使用dom4j解析mybatis核心配置文件

034-使用dom4j解析SqlMapper配置文件

035-手写godbatis框架第一步创建基础类

036-手写godbatis框架第三步抽取事务管理器接口

037-手写godbatis框架第二步分析SqlSessionFactory类该有的属性

038-手写godbatis框架第四步事务管理器的实现

039-手写godbatis框架第五步数据源的实现

040-手写godbatis框架第六步事务管理器改造

041-手写godbatis框架第七步获取数据源对象

042-手写godbatis框架第八步获取事务管理器对象

043-手写godbatis框架第九步获取存储SQL的Map集合

044-手写godbatis框架第十步测试框架

045-手写godbatis框架第十一步封装SqlSession对象

046-手写godbatis框架第十二步insert方法的实现

047-手写godbatis框架第十三步动态给占位符传值

048-手写godbatis框架第十四步测试插入数据

049-手写godbatis框架第十五步selectOne方法的实现

050-手写godbatis框架第十六步结果集转换为对象

051-手写godbatis框架第十七步最终版测试

六、在WEB中应用MyBatis

052-在WEB应用中使用MyBatis之简介和准备数据

053-在WEB应用中使用MyBatis之环境搭建

054-在WEB应用中使用MyBatis之后端代码实现

055-在WEB应用中使用MyBatis之核心业务实现

056-在WEB应用中使用MyBatis之测试转账结果

057-在WEB应用中使用MyBatis之事务的控制

058-在WEB应用中使用MyBatis之三大对象作用域

七、使用javassist生成类

059-使用javassist动态生成类

060-使用javassist动态生成类并实现接口

061-使用javassist动态生成类并实现接口中所有方法

062-工具类GenerateDaoProxy的编写

063-每一个方法体代码的动态拼接

八、MyBatis中接口代理机制及使用

064-MyBatis的getMapper方法

065-面向接口的方式进行CRUD

066-面向接口的方式进行CRUD2

九、MyBatis小技巧

067-MyBatis小技巧之#{}和${}的区别

068-MyBatis小技巧之什么时候使用${}

069-MyBatis小技巧之拼接表名

070-MyBatis小技巧之批量删除

071-MyBatis小技巧之模糊查询

072-MyBatis小技巧之mapper的配置

073-MyBatis小技巧之别名机制

074-MyBatis小技巧之IDEA配置模板文件

075-MyBatis小技巧之使用自动生成的主键值

十、MyBatis参数处理

076-MyBatis参数之单个简单类型参数

077-MyBatis参数之单个参数Long类型

078-MyBatis参数之单个参数Date类型

079-MyBatis参数之Map集合

080-MyBatis参数之POJO类

081-MyBatis参数之多参数

082-MyBatis参数之Param注解

083-MyBatis参数之Param注解源码分析

十一、MyBatis查询语句专题

084-MyBatis查询专题之返回Car

085-MyBatis查询专题之返回多个Car

086-MyBatis查询专题之返回一条记录可以使用List接收吗

087-MyBatis查询专题之返回Map

088-MyBatis查询专题之返回多个Map

089-MyBatis查询专题之返回大Map

090-MyBatis查询专题之结果映射

091-MyBatis查询专题之开启驼峰命名自动映射

092-MyBatis查询专题之查询总记录条数

十二、动态SQL

093-动态SQL之为什么使用动态SQL

094-动态SQL之if标签

095-动态SQL之where标签

096-动态SQL之trim标签

097-动态SQL之set标签

098-动态SQL之choose标签

099-动态SQL之foreach批量删除

100-动态SQL之foreach批量插入

101-动态SQL之foreach批量删除

102-动态SQL之sql标签和include标签

十三、MyBatis的高级映射及延迟加载

103-高级映射之数据库表的准备

104-高级映射之环境搭建

105-高级映射之多对一映射实体类关系怎么设计

106-高级映射之多对一映射第一种方式

107-高级映射之多对一映射第二种方式

108-高级映射之多对一映射第三种方式

109-高级映射之多对一映射延迟加载

110-高级映射之一对多的映射原理

111-高级映射之一对多的第一种实现方式

112-高级映射之一对多的第二种实现方式及延迟加载

十四、MyBatis的缓存

113-MyBatis缓存之对缓存的理解

114-MyBatis缓存之提供了哪些缓存机制

115-MyBatis缓存之理解一级缓存

116-MyBatis缓存之一级缓存的失效

117-MyBatis缓存之二级缓存的使用

118-MyBatis缓存之二级缓存的相关配置

119-MyBatis缓存之集成Ehcache

十五、MyBatis的逆向工程

120-MyBatis逆向工程之概述

121-MyBatis逆向工程之使用基础版

122-MyBatis逆向工程之测试基础版

123-MyBatis逆向工程之使用增强版

124-MyBatis逆向工程之测试增强版的查询

125-MyBatis逆向工程之QBC查询风格

十六、MyBatis使用PageHelper

126-MyBatis分页插件之分页原理

127-MyBatis分页插件之使用limit获取分页数据

128-MyBatis分页插件之使用PageHelper

129-MyBatis分页插件之获取PageInfo对象

十七、MyBatis的注解式开发

130-MyBatis注解式开发之@Insert注解

131-MyBatis注解式开发之@Delete注解

132-MyBatis注解式开发之@Update注解

133-MyBatis注解式开发之@Select注解

134-MyBatis注解式开发之@Results注解

 

相关文章:

动力节点|MyBatis入门实战到深入源码

MyBatis是一种简单易用、灵活性高且高性能的持久化框架,也是Java开发中不可或缺的一部分。 动力节点老杜的MyBatis教程,上线后广受好评 从零基础小白学习的角度出发,层层递进 从简单到深入,从实战到源码 一步一案例,一…...

分布式规则引擎框架的设计

MirAIe 规则引擎是一个可扩展且可扩展的规则引擎框架,允许用户对多个活动进行分组和自动化。 过去几年,在开发MirAIe 物联网平台时,我们意识到需要一个可扩展、可扩展的规则引擎框架。规则引擎使您能够对各种操作进行分组、管理和自动化&…...

C#开发FFMPEG例子(API方式) FFmpeg推送udp组播流

代码及工程见https://download.csdn.net/download/daqinzl/88156926 开发工具:visual studio 2019 播放,可采用ffmpeg工具集里的ffplay.exe, 执行命令 ffplay udp://238.1.1.10:6016 也可以参考(C#开发FFMPEG例子(API方式) FFmpeg拉取udp组播流并播放)…...

nvm下载node导致npm报错无法使用

有个依赖库需要更新下node,用nvm下载后项目跑不起来了,npm -v 还报错 其实一开始是npm下载不来,然后换了淘宝镜像后还是报错 然后就只能手动下载下了 进入node.js官网 https://nodejs.org/en/download 下载后注意要安装在你nvm目录中&#x…...

LeetCode 热题 100JavaScript--2. 两数相加

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 …...

zookeeper总结

1.概念 Zookeeper 是一个分布式协调服务,可用于服务发现,分布式锁,分布式领导选举,配置管理等。Zookeeper 提供了一个类似于 Linux 文件系统的树形结构(可认为是轻量级的内存文件系统,但只适合存少量信息&…...

【程序环境与预处理玩转指南】

本章重点: 程序的翻译环境 程序的执行环境 详解:C语言程序的编译链接 预定义符号介绍 预处理指令 #define 宏和函数的对比 预处理操作符#和##的介绍 命令定义 预处理指令 #include 预处理指令 #undef 条件编译 1. 程序的翻译环境和执行环境 在…...

搭建简易syslog日志中转服务器

在某种场景下,无法接入日志审计设备,本文提供一种方式,可通过搭建简易日志中转服务器,收集到该环境下的日志后,再将其导入日志审计设备中。 0x1 开启服务 rsyslog守护进程来自于当前的linux发布版本的预装模块&#x…...

MongoDB文档-进阶使用-spring-boot整合使用MongoDB---MongoRepository完成增删改查

阿丹: 之前学习了在MongoDB客户端上的MongoDB语句现在将MongoDB整合到spring项目。 传送门: MongoDB文档--基本概念_一单成的博客-CSDN博客 MongoDB文档--基本安装-linux安装(mongodb环境搭建)-docker安装(挂载数据卷…...

什么是线程局部变量?

在Java中,线程局部变量(Thread Local Variable)是一种特殊类型的变量,每个线程都有其自己独立的副本。这意味着每个线程可以在该变量上进行操作,而不会影响其他线程的副本。线程局部变量通常用于在多线程环境中存储线程私有的数据&#xff0c…...

Jmeter响应中的乱码问题

文章目录 问题描述解决办法 问题描述 Jmeter在访问接口的时候,响应内容如果有中文可能会显示乱码 响应页面没有做编码处理,JMeter默认按照ISO-8859-1编码格式进行解析 解决办法 在线程组中添加BeanShell PostProcessor后置处理器 prev.setDataEnco…...

MongoDB文档-进阶使用-MongoDB索引-createindex()与dropindex()-在MongoDB中使用正则表达式来查找

阿丹: 之前研究了MongoDB的基础增删改查。在学会基础的数据库增删改查肯定是不够的。这个时候就涉及到了数据库搜索的时候的效率。需要提高数据的搜索效率。 MongoDB索引 在所以数据库中如果没有数据索引的时候。如果需要查找到一些数据。都会去主动扫描所有可能存…...

CentOS下ZLMediaKit的可视化管理网站MediaServerUI使用

一、简介 按照 ZLMediaKit快速开始 编译运行ZLMediaKit成功后,我们可以运行其合作开源项目MediaServerUI,来对ZLMediaKit进行可视化管理。通过MediaServerUI,我们可以实现在浏览器查看ZLMediaKit的延迟率、负载率、正在进行的推拉流、服务器…...

回归预测 | MATLAB实现POA-CNN-BiGRU鹈鹕算法优化卷积双向门控循环单元多输入单输出回归预测

回归预测 | MATLAB实现POA-CNN-BiGRU鹈鹕算法优化卷积双向门控循环单元多输入单输出回归预测 目录 回归预测 | MATLAB实现POA-CNN-BiGRU鹈鹕算法优化卷积双向门控循环单元多输入单输出回归预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 MATLAB实现POA-CNN-BiGRU鹈鹕…...

Rust 原生支持龙架构指令集

导读近日,Rust 开源社区发布 1.71.0 版本,实现对龙架构(LoongArch)指令集的原生支持。 龙架构操作系统发行版和开发者可基于上游社区源代码构建或直接下载 Rust 开源社区发布的龙架构二进制版本。Rust 开发者将在龙架构平台上获得…...

为生成式AI提速,亚马逊云科技Amazon EC2 P5满足GPU需求

生成式AI(Generative AI)已经成为全球范围内的一个重要趋势,得到越来越多企业和研究机构的关注和应用。纽约时间7月26日,亚马逊云科技数据库、数据分析和机器学习全球副总裁Swami Sivasubramanian在亚马逊云科技举办的纽约峰会上更…...

聊聊企业数据安全那些事~

保护企业数据安全的重要性与方法 随着信息技术的快速发展,企业数据的安全性变得越来越重要。在数字化时代,企业的核心业务和关键信息都存储在电脑系统中,一旦遭受到数据泄露、黑客攻击或恶意软件感染,将可能对企业造成严重的损害…...

日常随笔——如何把excel题库转换为word打印格式

将Excel题库转换为Word可以通过编程的方式实现。以下是一个使用Python的示例代码,该代码使用openpyxl库读取Excel文件,并使用python-docx库创建和保存Word文档。 首先,请确保已经安装了 openpyxl 和 python-docx 库。可以使用以下命令进行安…...

SpringCloud项目打包注意事项以及可能出错的几种情况

SpringCloud项目打包注意事项和可能出错的几种情况 1、检查子模块中的 parent的pom文件路径 \<relativePath/\>2、检查打包插件的位置3、检查module是否重复引用 欢迎访问我的个人博客&#xff1a;https://wk-blog.vip 1、检查子模块中的 parent的pom文件路径 <relat…...

ZABBIX 6.4 Mysql数据库分表

ZABBIX监控设备较多的时候&#xff0c;Mysql数据库容易成为性能的瓶颈&#xff0c;可以通过数据库分表的方式来进行优化。步骤如下&#xff1a; 一、停用zabbix服务 # 避免修改分区表时&#xff0c;数据还有写入 systemctl stop zabbix 二、备份MySQL zabbix DB 避免修改分…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

R语言AI模型部署方案:精准离线运行详解

R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接&#xff1a;3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯&#xff0c;要想要能够将所有的电脑解锁&#x…...

抖音增长新引擎:品融电商,一站式全案代运营领跑者

抖音增长新引擎&#xff1a;品融电商&#xff0c;一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中&#xff0c;品牌如何破浪前行&#xff1f;自建团队成本高、效果难控&#xff1b;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...

12.找到字符串中所有字母异位词

&#x1f9e0; 题目解析 题目描述&#xff1a; 给定两个字符串 s 和 p&#xff0c;找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义&#xff1a; 若两个字符串包含的字符种类和出现次数完全相同&#xff0c;顺序无所谓&#xff0c;则互为…...

什么是Ansible Jinja2

理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具&#xff0c;可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板&#xff0c;允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板&#xff0c;并通…...

GC1808高性能24位立体声音频ADC芯片解析

1. 芯片概述 GC1808是一款24位立体声音频模数转换器&#xff08;ADC&#xff09;&#xff0c;支持8kHz~96kHz采样率&#xff0c;集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器&#xff0c;适用于高保真音频采集场景。 2. 核心特性 高精度&#xff1a;24位分辨率&#xff0c…...

[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】

大家好&#xff0c;我是java1234_小锋老师&#xff0c;看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】&#xff0c;分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...

(一)单例模式

一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

关于easyexcel动态下拉选问题处理

前些日子突然碰到一个问题&#xff0c;说是客户的导入文件模版想支持部分导入内容的下拉选&#xff0c;于是我就找了easyexcel官网寻找解决方案&#xff0c;并没有找到合适的方案&#xff0c;没办法只能自己动手并分享出来&#xff0c;针对Java生成Excel下拉菜单时因选项过多导…...