摘要: 百度 Synchronized和reentrantlock的底层实现及重入的底层原理。Monitorenter,monitorexit,AQS,重入原理:entry count,state https://cloud.tencent.com/developer/article/1465413 htt 阅读全文
posted @ 2021-09-16 21:12 mgyboom 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 写在前面 ​ 本地事务很好保证要么所有操作都成功要么都失败,但是随着业务越来越复杂,单机版已经满足不了我们的需求,就需要项目从单体应用演变成分布式应用,然而随之也带来了一个问题,那就是如何保证多个微服务对DB的操作要么一起成功要么一起失败的问题,也就是分布式事务的问题。 ​ 网上有一大堆分布式事务的 阅读全文
posted @ 2021-05-30 01:48 mgyboom 阅读(430) 评论(0) 推荐(0) 编辑
摘要: 使用场景 在springboot应用启动后做一些操作,比如读取字典表数据到缓存中。 看看源码 /** * Interface used to indicate that a bean should <em>run</em> when it is contained within * a {@link 阅读全文
posted @ 2021-03-11 17:42 mgyboom 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 前言 一级缓存是基于SqlSession的,二级缓存则是基于mapper文件的namespace的,也就是说多个SqlSession可以共享一个mapper中的二级缓存区域,并且如果两个mapper的namespace相同,即使是两个mapper,那么这两个mapper中执行sql查询到的数据也将存 阅读全文
posted @ 2021-02-02 22:51 mgyboom 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 准备工作 JDK 8+ Maven 引入依赖 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.2</version> </depe 阅读全文
posted @ 2021-01-24 18:45 mgyboom 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 准备工作 JDK 8+ Maven 引入依赖 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.1.6.RELEASE</version> </d 阅读全文
posted @ 2021-01-24 18:28 mgyboom 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 前言 mybatis的一级缓存是SqlSession级别的,默认开启。 透过现象 1)在⼀个SqlSession中,对User表根据id进⾏两次查询,查看他们发出sql语句的情况。 1 @Test 2 public void test5() throws IOException { 3 InputS 阅读全文
posted @ 2021-01-17 23:36 mgyboom 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 架构设计 mybatis的功能架构分为三层: 1)API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操作数据库。接口层一接受到调用请求就会调用数据处理层来完成具体的数据处理。 mybatis和数据库的交互有两种方式: a.使用传统的mybatis提供的API; b.使用mappe 阅读全文
posted @ 2021-01-17 19:28 mgyboom 阅读(68) 评论(0) 推荐(0) 编辑
摘要: 前言 原始jdbc开发存在的问题如下: 1、 数据库连接创建、释放频繁造成系统资源浪费,从⽽影响系统性能。 2、 Sql语句在代码中硬编码,造成代码不易维护,实际应⽤中sql变化的可能较⼤,sql变动需要改变java代码。 3、 使⽤preparedStatement向占有位符号传参数存在硬编码,因 阅读全文
posted @ 2021-01-16 19:24 mgyboom 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 前言 Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。 JDBC API主要位于JDK中的java.sql包中(之后扩展的内容位于javax.sql包中 阅读全文
posted @ 2021-01-16 11:19 mgyboom 阅读(227) 评论(0) 推荐(0) 编辑