
mybatis
文章平均质量分 72
MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objec
alexander137
见则有,不见则无
展开
-
mybatis-plus使用+generator逆向工程
MyBatis-Plus(opens new window)(简称 MP)是一个MyBatis(opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。官网地址:简介 | MyBatis-Plus用idea开发的建议安装一个mybatisx的插件,可以实现xml和dao层之间的跳转以及天生自带generator的功能本文将对mybatis-plus引入到工程以及generator逆向工程两个功能的着重描述配置mybatis..原创 2021-10-22 15:04:40 · 2879 阅读 · 2 评论 -
多数据源事务集成-mybatis-plus
目前百度能搜索到的大部分是各自单独实现的aop以及多数据源的管理,使用起来比较复杂,而且做得也相对来说不是很完善,比如是否要考虑嵌套事务这种以及多数据源事务的支持方式,很多博主都没有涉及到,大多是简单的基于spring框架的拦截处理,自己实现不仅有不完善的缺点、可扩展性也是比较差的,后期版本维护升级或者支持更加复杂的功能就需要进行大改动以及全面的测试,风险系数也是蛮高的。mybatis-plus高版本在2021年下半年已经自己实现了在不借助外部协调者seata的情况下通过实现spring分布式事务的相关接口原创 2021-12-16 10:31:09 · 3868 阅读 · 0 评论 -
pageHelper分页实现原理分析
在查询前调用startPage的时候,会往ThreadLocal里面注入分页信息,并且PageHelper类实现了mybatis的inteceptor的接口,执行sql拼接并完成调用的时候会从ThreadLocal中取出分页信息并拼接到sql后面,返回数据后通过实现mybatis拦截方法afterAll,对分页信息进行封装,封装成功后会调用clearPage清除本地变量,这样子下一个查询就不会分页了,如果下一个也需要分页则继续加startPage设置本地分页线程变量即可总结:多个查询分页不会互相影响.原创 2021-08-02 15:16:14 · 2319 阅读 · 0 评论 -
mybatis实现读写分离
现网生产环境mysql基本上都会采用多主多从的集群模式,能够同时提高读和写的并发性能。那么在微服务中如何在不同的业务操作不同的库又同时对代码没有侵入性呢?在此给出两种常用的方式:1、spring aop的方式动态拦截切换数据源 2、采用mybatis-plus的方式,通过注解和配置的方式简单实现。无论哪一种方式在同一个被拦截的service层,不通过spring bean容器管理进行调用都无法有效切换数据源原创 2021-08-01 12:20:34 · 2360 阅读 · 6 评论 -
mybatis实现原理深度理解
先放一张图,让大家简单认识一下:1、解析xml的时候首先,Mybatis在初始化SqlSessionFactoryBean的时候,找到mapperLocations路径去解析里面所有的XML文件2、创建sqlsourceMybatis会把每个SQL标签封装成SqlSource对象。然后根据SQL语句的不同,又分为动态SQL和静态SQL。其中,静态SQL包含一段String类型的...原创 2019-06-08 23:02:25 · 2129 阅读 · 1 评论 -
mybatis-plus 实现自增id且可手动输入id的方式
在用mybatisplus的时候可以通过注解实体字段从而实现对象和数据库字段的映射,其中主键id基本上采用的是mysql数据库自增的方式,如果此时采用@TableId(value = "id", type = IdType.AUTO)方式,则每次插入一条数据都将只会用到数据库的自增id并把id返回注入到实体对象,此时如果想要手动插入id(基本上在同步数据的时候用到),就无法实现如果此时采用@TableId(value = "id", type = IdType.INPUT)方式,在对象id原创 2020-12-29 15:52:49 · 11528 阅读 · 8 评论 -
mybatis generator重复生成xml解决方案
https://blog.youkuaiyun.com/amoscn/article/details/103260288转载 2019-12-18 15:37:13 · 654 阅读 · 0 评论 -
mysql数据库全量备份和增量备份(docker容器部署方式)
1、创建备份数据库容器(参考监控相关下面的mysql安装)# 建立挂载的数据卷mkdir -p /opt/mysql/data# 虚拟机 3307 端口和容器里的3306端口对应,虚拟机路径和容器里路径(下图,来自头部参考地址)对应docker run -p 3307:3306--restart="always" --name iptv-mysqlback...原创 2019-12-06 10:46:44 · 2004 阅读 · 0 评论