02 2024 档案

摘要:1 前言 数据库中的锁,是一个很大的问题,从哪看起呢?该怎么看呢?所以在看锁之前,了解一些相关的前置知识,然后再去细看不同的场景下会加什么样的锁方便你快速理解。 官网,当然我们这里看的 引擎是 InnoDB 哈,那我们从以下几个问题看起: (1)数据库中的锁有哪些(怎么知道呢,网上的文章五花八门的各 阅读全文
posted @ 2024-02-28 09:05 酷酷- 阅读(109) 评论(0) 推荐(0) 编辑
摘要:1 题目 给定一个字符串 s ,请你找出其中不含有重复字符的 最长连续子字符串 的长度。 示例 1: 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子字符串是 "abc",所以其长度为 3。 示例 2: 输入: s = "bbbbb" 输出: 1 解释: 因为无重复字 阅读全文
posted @ 2024-02-26 22:54 酷酷- 阅读(47) 评论(0) 推荐(0) 编辑
摘要:1 前言 上次我们看了 Mybatis 是如何整合到 SpringBoot 的,那么平时我们可能直接用的就是 Mybatis-Plus,那么它又是如何结合到的 SpringBoot 的呢?原理其实是一样的,这节我们就来看看。 看的过程中,其实会深深体会 Mybatis-Plus 就是对 Mybati 阅读全文
posted @ 2024-02-26 09:56 酷酷- 阅读(210) 评论(0) 推荐(0) 编辑
摘要:1 前言 当你把 Spring、SpringBoot、Mybatis 或者 Mybatis-Plus 的源码都看过后,那有没有想过比如 Mybatis 如何整合到 Spring 或者 SpringBoot 的呢?就是思考框架跟框架之间的融合,那么这节我们就来看看单纯的 Mybatis 是如何融合到 阅读全文
posted @ 2024-02-26 08:34 酷酷- 阅读(163) 评论(0) 推荐(0) 编辑
摘要:1 前言 最近发现小伙伴对于修改参数,要不要重启不太清楚,整的我都怀疑自己的认知了,我记得看 Apollo 源码的时候,它有个后置处理器,会收集哪个类的哪个属性需要注入,然后当配置变更的时候,会通过反射设置新的值的,这节我就来带大家看看。 首先对于服务参数或者系统参数,比如端口、数据源呀,这些改完参 阅读全文
posted @ 2024-02-25 20:06 酷酷- 阅读(511) 评论(0) 推荐(0) 编辑
摘要:1 前言 可能大家平时会查看数据库中的一些原始信息,比如数据库有哪些表,表有哪些字段呀,都是什么类型呀,甚至每个表所占的空间大小,索引的空间大小、索引访问的次数呀等等,其实 PgSQL 都有对应的系统目录给我们,这节我们就来看看。 2 层次 在看元信息前,我们先了解一下数据的一个层次: 可以看到,我 阅读全文
posted @ 2024-02-23 08:47 酷酷- 阅读(37) 评论(0) 推荐(0) 编辑
摘要:1 题目 给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 说明:一个机器人每次只能向下或者向右移动一步。 示例 1: 输入:grid = [[1,3,1],[1,5,1],[4,2,1]] 输出:7 解释:因为路径 1→3→1→1 阅读全文
posted @ 2024-02-20 08:39 酷酷- 阅读(51) 评论(0) 推荐(0) 编辑
摘要:1 前言 DBSyncer,不知道大家用没用过,我之前看过,今儿空了,来试试。 地址:https://gitee.com/ghi/dbsyncer 地址如上,主要是用于数据库层面的同步,废话不多说,我简单玩了玩先,还真不错,空了我再细看看。 2 数据同步例子 2.1 定义目标 这是我两个数据库的两张 阅读全文
posted @ 2024-02-19 22:07 酷酷- 阅读(1546) 评论(0) 推荐(0) 编辑
摘要:1 前言 我上次有一篇是讲了从一个数据库连接的角度分析了 Spring + MyBaits + 事务三者的联系https://www.cnblogs.com/kukuxjx/p/17861966.html,这是在数据源固定的情况下。那么可能会遇到,比如按租户的分库,这种情况下我们会引入动态的数据源比 阅读全文
posted @ 2024-02-19 17:47 酷酷- 阅读(649) 评论(0) 推荐(0) 编辑
摘要:1 前言 今儿复习 Java 的一些基本知识,回忆一下 Lambda。 2 应用 Lambda 是一个匿名函数,我们可以把 Lambda 表达式理解为是一段可以传递的代码(将代码像数据一样进行传递)。可以取代大部分的匿名内部类,可以写出更简洁、更灵活的代码。尤其在集合的遍历和其他集合操作中,可以极大 阅读全文
posted @ 2024-02-19 07:14 酷酷- 阅读(32) 评论(0) 推荐(0) 编辑
摘要:1 前言 今儿复习 Java 的一些基本知识,发现关于finally 中对返回结果的影响,有点记不清了,这里再回忆一下。 2 分析 先说结论,Java的try语句在返回前将其他所有的操作执行完,保留好要返回的值,而后转入执行finally中的语句,而后分为以下三种情况: (1)如果finally中有 阅读全文
posted @ 2024-02-19 06:52 酷酷- 阅读(29) 评论(0) 推荐(0) 编辑
摘要:1 题目 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。 示例 1: 输入:intervals = [[1,3],[2,6],[8, 阅读全文
posted @ 2024-02-18 02:25 酷酷- 阅读(18) 评论(0) 推荐(0) 编辑
摘要:1 前言 今儿没事儿,看了一点儿 Activity 的书哈,前三章大致讲解了什么是流程,流程的又来,为什么要有流程,以及流程的落地该如何去做。第四章讲解了 Activity6.0的安装以及尝试,看书嘛要边看边跟着做才有体会哈,我也跟着试试。 官网:https://www.activiti.org/g 阅读全文
posted @ 2024-02-17 19:26 酷酷- 阅读(245) 评论(0) 推荐(0) 编辑
摘要:1 前言 之前趁腾讯云搞活动,买了两台一年的轻量级应用服务器,搭搭自己的微服务,方便自己测试研究嘛,后来看见域名有便宜的,就买了一个,然后要各种备案啊,走流程啊,这里来记录下一个个人域名到能解析到自己的网站的过程哈。 我的资源都在腾讯云哈,两台轻量级应用服务器、域名也都是在腾讯买的,域名购买到能解析 阅读全文
posted @ 2024-02-17 10:48 酷酷- 阅读(50) 评论(0) 推荐(0) 编辑
摘要:1 前言 闲来无事,复习复习并发中常用到的一些协调多线程的工具哈。 2 基于Java队列的实现 生产者跟消费者之间要协调,他俩会出现碰撞的地方就是存放东西的容器,所以我们可以直接拿一个线程安全的队列来做容器即可,比如我这里用的 ArrayBlockingQueue: /** * @author: x 阅读全文
posted @ 2024-02-17 10:42 酷酷- 阅读(18) 评论(0) 推荐(0) 编辑
摘要:1 前言 Redis,我们做开发的想必都用过,他是一种缓存,主要用于快速响应结果嘛。比如我们要获取商品的详情,有日销量、月销量、库存数量、评价数量,这些数据都在Redis 缓存中,那么我们是要拿四趟?还是一趟呢?当然是一趟最好呀。接下来我们来看看为什么我们要一趟这么做,以及怎么做。 2 为什么需要批 阅读全文
posted @ 2024-02-16 16:34 酷酷- 阅读(3016) 评论(0) 推荐(0) 编辑
摘要:1 题目 在一个夜黑风高的晚上,有n(n <= 50)个小朋友在桥的这边,现在他们需要过桥,但是由于桥很窄,每次只允许不大于两人通过,他们只有一个手电筒,所以每次过桥的两个人需要把手电筒带回来,i号小朋友过桥的时间为T[i],两个人过桥的总时间为二者中时间长者。问所有小朋友过桥的总时间最短是多少。 阅读全文
posted @ 2024-02-15 13:40 酷酷- 阅读(114) 评论(0) 推荐(0) 编辑
摘要:1 题目 来自算法导论的一道经典题目: 2 解答 动态规划原理虽然已经用动态规划方法解决了上面问题,但是大家可能还跟我一样并不知道什么时候要用到动态规划。总结一下上面的斐波拉契数列和钢条切割问题,发现两个问题都涉及到了重叠子问题,和最优子结构。 ①最优子结构 用动态规划求解最优化问题的第一步就是刻画 阅读全文
posted @ 2024-02-14 13:11 酷酷- 阅读(168) 评论(0) 推荐(0) 编辑
摘要:1 抓包 今儿想抓一下自己本地服务的请求的包数据,发现 WireShark 上抓不到,百度搜了搜尝试了下可以,这里简单记录下: 主要是看看上传一个文件时的交互,会发现当你上传一个文件的话,他会先将一次TCP的请求,并且标志位的 PUSH 标志位开启,以及文件的大小、文件名称发送给后端,PUSH就是数 阅读全文
posted @ 2024-02-13 16:20 酷酷- 阅读(1063) 评论(0) 推荐(0) 编辑
摘要:1 前言 这一节我们讲解Tomcat的NioEndPoint中ConcurrentLinkedQueue 的使用。 2 Tomcat的容器结构 本节讲解apache-tomcat-7.0.32-src 源码中ConcurrentLinkedQueue 的使用。 首先介绍 Tomcat 的容器结构以及 阅读全文
posted @ 2024-02-11 15:56 酷酷- 阅读(42) 评论(0) 推荐(0) 编辑
摘要:1 前言 看了那么多 Java 提供的队列工具,那么我们这节开始看看哪些地方用到了这些队列哈。 这一节我们讲解logback异步日志打印中ArrayBlockingQueue的使用。 2 异步日志打印模型概述 在高并发、高流量并且响应时间要求比较小的系统中同步打印日志已经满足不了需求 了,这是因为打 阅读全文
posted @ 2024-02-11 15:22 酷酷- 阅读(197) 评论(0) 推荐(0) 编辑
摘要:1 前言 这节我们继续看看另一个队列 PriorityBlockingQueue,优先级的哈。 2 PriorityBlockingQueue 介绍 PriorityBlockingQueue 是带优先级的无界阻塞队列,每次出队都返回优先级最高或者 最低的元素。其内部是使用平衡二叉树堆实现的,所以直 阅读全文
posted @ 2024-02-10 18:38 酷酷- 阅读(23) 评论(0) 推荐(0) 编辑
摘要:1 前言 JDK 中提供了一系列场景的并发安全队列。总的来说,按照实现方式的不同可分为阻 塞队列和非阻塞队列,前者使用锁实现,而后者则使用CAS非阻塞算法实现。这节我们来看看 ConcurrentLinkedQueue。 2 ConcurrentLinkedQueue 介绍 ConcurrentLi 阅读全文
posted @ 2024-02-10 18:19 酷酷- 阅读(78) 评论(0) 推荐(0) 编辑
摘要:1 前言 最近复习 AQS,回顾下其中的知识哈。 2 概述 2.1 AQS——锁的底层支持 AbstractQueuedSynchronizer 抽象同步队列简称 AQS,它是实现同步器的基础组件, 并发包中锁的底层就是使用 AQS 实现的。另外,大多数开发者可能永远不会直接使用 AQS,但是知道其 阅读全文
posted @ 2024-02-09 21:16 酷酷- 阅读(35) 评论(0) 推荐(0) 编辑
摘要:1 前言 LockSupport 工具类最近复习到这个类了,之前也没做笔记,这里简单回顾下哈。 JDK 中的 rt.jar 包里面的 LockSupport 是个工具类,它的主要作用是挂起和唤醒线程, 该工具类是创建锁和其他同步类的基础。 LockSupport 类与每个使用它的线程都会关联一个许可 阅读全文
posted @ 2024-02-09 15:05 酷酷- 阅读(37) 评论(0) 推荐(0) 编辑
摘要:1 前言 我们平时使用随机数大家可能会用到 Random,但是它的问题大家知道吗?以及该如何解决呢?这节我们就来看看。 2 Random 类及其局限性 在 JDK 7 之前包括现在,java.util.Random 都是使用比较广泛的随机数生成工具类, 而且 java.lang.Math 中的随机数 阅读全文
posted @ 2024-02-09 11:41 酷酷- 阅读(46) 评论(0) 推荐(0) 编辑
摘要:1 前言 平时我们可能会拼接 SQL,尤其是做一些报表的开发或者连表查询的时候,当条件发生变更或者关联关系需要改变的时候,就需要更改代码里的 SQL,所以我这里弄了一个简易版的基于 Mybatis的动态 SQL调用。 2 实现 主要是 Mybatis的动态 SQL: // controller层 @ 阅读全文
posted @ 2024-02-08 15:44 酷酷- 阅读(182) 评论(0) 推荐(0) 编辑
摘要:1 思考 最近在整理我的个人系统,系统最重要的也是比较复杂的就是权限控制:权限基本分两大类:资源权限和数据权限。 资源权限:比如页面、菜单、按钮呀、接口都属于资源权限 数据权限:比如仅自己、仅部门等,操作数据的范围权限 而一个系统从全局的视角来看的话,从上到下的话我想的是这么划分: 按钮背后有接口, 阅读全文
posted @ 2024-02-02 08:23 酷酷- 阅读(21) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示