草庐IT

2.MyBatis

全部标签

Mybatis的一级缓存和二级缓存,看完不再懵逼

缓存是什么?缓存其实就是存储在内存中的临时数据,这里的数据量会比较小,一般来说,服务器的内存也是有限的,不可能将所有的数据都放到服务器的内存里面,所以,只会把关键数据放到缓存中,缓存因为速度快,使用方便而出名!为什么需要缓存BS架构里面,用户的所有操作都是对数据库的增删改查,其中查询的操作是最多的,但如果用户想要某个数据时每次都去数据库查询,这无疑会增加数据库的压力,而且获取时间效率也会降低,所以为了解决这些问题,缓存应用而生,使用了缓存之后,服务器只需要查询一次数据库,然后将数据保存到服务器主机的内存中,以后读取时就直接取内存中的数据,而不需要每次都查数据库,这种方案除了降低数据库压力之外,

MyBatis源码解析

MyBatis执行流程:1.ExecutorExecutor是MyBatis的核心接口之一,其中定义了数据库操作的基本方法。在实际应用中经常涉及的SqISession接口的功能,都是基于Executor接口实现的。BaseExecutor 是一个实现了Executor接口的抽象类,它实现了Executor接口的大部分方法。BaseExecutor中主要提供了缓存管理和事务管理的基本功能,继承BaseExecutor的子类只要实现四个基本方法来完成数据库的相关操作即可,这四个方法分别是:doUpdate()方法、doQuery()方法、doQueryCursor()方法、doFlushState

MyBatis源码解析

MyBatis执行流程:1.ExecutorExecutor是MyBatis的核心接口之一,其中定义了数据库操作的基本方法。在实际应用中经常涉及的SqISession接口的功能,都是基于Executor接口实现的。BaseExecutor 是一个实现了Executor接口的抽象类,它实现了Executor接口的大部分方法。BaseExecutor中主要提供了缓存管理和事务管理的基本功能,继承BaseExecutor的子类只要实现四个基本方法来完成数据库的相关操作即可,这四个方法分别是:doUpdate()方法、doQuery()方法、doQueryCursor()方法、doFlushState

[Java安全]—Mybatis注入

文章目录前言测试环境数据库SQL注入的四种方式#{}和${}模糊查询In查询orderby注入项目文件前言Mybatis注入留在了Spring后,因为感觉用Spring搭建web端后再进行注入比较贴合实际一些。测试环境Mysql:5.7Springboot:2.1mybatis:3.5数据库创建了一个测试用的数据库MybatisCREATEDATABASE/*!32312IFNOTEXISTS*/`mybatis`/*!40100DEFAULTCHARACTERSETutf8*/;USE`mybatis`;--------------------------------Tablestructu

MyBatis框架

MyBatis主流的ORM框架,之前叫做iBatis,后来更名为MyBatis,实现数据持久化的框架。同时java,.NET,Ruby三种语言,MyBatis是一个对JDBC进行封装的框架。Hibernate是一个全自动化ORM框架,MyBatis是一个半自动化的ORM框架。全自动化:开发者只需要调用相关接口就可以完成操作,整个流程框架都已经进行了封装。Hibernate实现了POJO和数据库之间的映射,同时可以自动生成SQL语句并完成执行。半自动化:框架只提供一部分功能,剩下的工作仍需要开发者手动完成,MyBatis没有提供POJO与数据库表的映射,只实现了POJO与SQL之间的映射关系,需

SpringBoot整合MyBatis四种常用的分页方式(详细总结)

一、准备工作1.创建表结构CREATETABLE`order_info`(`id`intNOTNULLAUTO_INCREMENT,`info`varchar(255)CHARACTERSETutf8COLLATEutf8_general_ciNULLDEFAULTNULL,`time`datetimeNULLDEFAULTNULL,PRIMARYKEY(`id`)USINGBTREE)ENGINE=InnoDBAUTO_INCREMENT=14CHARACTERSET=utf8COLLATE=utf8_general_ciROW_FORMAT=Dynamic;2.导入表数据INSERTINT

MyBatis

1.MyBatis优点(1)封装了JDBC大部分操作,减少了开发人员的工作量(2)半自动化的操对于编写SQL语句灵活度更高(3)Java代码与SQL语句分离,降低维护难度(4)自动映射结果集,减少重复的编码工作(5)开源社区十分活跃,文档齐全,学习成本低2.引入MyBatis依赖在pom.xml文件中添加MyBatis的场景启动器mybatis-spring-boot-starterorg.mybatis.spring.bootmybatis-spring-boot-starter2.1.33.填写配置文件application.properties配置Mapper文件对应的XML文件路径my

使用MyBatis的好处

使用MyBatis的好处一、MyBatis框架的优点:  1.与JDBC相比,减少了50%以上的代码量。   2.MyBatis是最简单的持久化框架,小巧并且简单易学。   3.MyBatis灵活,不会对应用程序或者数据库的现有设计强加任何影响,SQL写在XML里,从程序代码中彻底分离,降低耦合度,便于统一管理和优化,可重用。   4.提供XML标签,支持编写动态SQL语句(XML中使用if,else)。    5.提供映射标签,支持对象与数据库的ORM字段关系映射(在XML中配置映射关系,也可以使用注解)。  二、MyBatis框架的缺点:    1.SQL语句的编写工作量较大,尤其是字段多

MyBatis-Plus

MyBatis-Plus1、简介MyBatis-Plus(简称MP)是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。润物无声只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑。效率至上只需简单配置,即可快速进行CRUD操作,从而节省大量时间。丰富功能热加载、代码生成、分页、性能分析等功能一应俱全。2、创建并初始化数据库2.1创建数据库mybatis_plus2.2创建User表其对应的数据库Schema脚本如下:CREATETABLEUSER(idBIGINT(20)NOTNULLCOMMENT'主键ID',NAMEVARCHAR(3

5.6 Mybatis代码生成器Mybatis Generator (MBG)实战详解

文章目录前言一、MybatisGenerator简介二、Maven插件运行方式三、生成配置generatorConfig.xmlMyBatis3Simple风格MyBatis3风格MyBatis3DynamicSql风格四、Java代码运行方式五、MGB生成全部表六、增加Ext包七、Git提交总结前言本文我们主要实战Mybatis官方的代码生成器:MybatisGenerator(MBG),掌握它以后,可以简化大部分手写代码,我们只需要写复杂逻辑代码!通过前几篇,我们掌握了在SpringBoot下Mybatis的基本用法,操作步骤回顾一下:创建与MySQL表对应的JavaPO对象,字段一一对应