自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 收藏
  • 关注

原创 Guava Cache

【代码】Guava Cache。

2024-11-17 19:39:44 465

原创 JVM调优理论

对象创建时一般存放到Eden区,当Eden满了的时候就会触发垃圾回收,把Eden区存活对象复制到From Survivor 区,Form Survivor 区满了就会把存活对象复制到 To Survivor 区,From 和 To 之间每次拷贝,存活对象年龄加1,年龄大于15的对象,拷贝到老年代。以根对象(GC Roots)作为起点向下搜索,走过的路径被称为引用链,如果某个对象到跟对象没有引用链时,就认为这个对象是不可达的,可以回收。方法对实例变量进行初始化,并执行对应的构造方法内的代码。

2024-11-17 18:39:47 735

原创 微信开发 Java SDK

公众号(包括订阅号和服务号):weixin-java-mp。微信小程序:weixin-java-miniapp。微信开放平台:weixin-java-open。企业号/企业微信:weixin-java-cp。微信支付:weixin-java-pay。

2024-11-17 11:04:41 399

原创 Spring Boot 启动时修改上下文

【代码】Spring Boot 启动时修改上下文。

2024-11-16 15:32:11 592

原创 Java 8 特性

Java 8 特性文章目录Java 8 特性函数式编程函数式编程让代码更灵活1、初始需求:筛选出绿苹果2、 变更需求:根据颜色筛选苹果----->修改初版方法3、追加需求:根据重量筛选苹果----->追加方法4、追加需求:根据颜色和重量筛选苹果----->追加方法5、使用接口抽象筛选行为6、使用匿名类7、使用Lambda表达式8、将 List 类型抽象化Lambda 表达式简洁地表示可传递的匿名函数的一种方式在哪里以及如何使用 Lambda函数式接口把 Lambda 付诸实践:环绕执行模

2024-11-10 14:24:45 1087 1

原创 Spring-AOP

基于动态代理实现AOP,spring aop代理必须使用代理对象才能生效。

2024-10-07 16:39:35 1063

原创 Spring国际化和Validation

validation与国际化结合,自定义注解校验,内部方法上使用注解校验

2024-10-07 14:05:37 1772

原创 CSS基础

场景:通过元素上的HTML属性来选择元素,常用于 input 标签。场景:通过元素上的HTML属性来选择元素,常用于 input 标签。场景:控制内容溢出部分的显示效果,如:显示、隐藏、滚动条…问题:当图片和文字在一行中显示时,其实底部不是对齐的。场景:用于选中元素获取焦点时的状态,常用于表单控件。场景:用于选中元素获取焦点时的状态,常用于表单控件。溢出部分:指的是盒子内容部分所超出盒子范围的区域。目的:改变元素默认显示特点,让元素符合布局要求。场景:设置鼠标光标在元素上显示的样式。

2024-08-31 19:14:38 1819

原创 CSS 2D&3D转换与动画

添加动画效果,实现多个状态间的变化过程,动画过程可控(重复播放、最终画面、是否暂停)左手法则:左手握住旋转轴,大拇指指向轴正值方向,四指弯曲方向为旋转正值。:用来设置自定义旋转轴的位置及旋转角度,z、y、z取值0~1之间的数字。对应标签上classz增加对应的类名,必须调用2个类名。属性实现透视效果,可以看到z轴移动效果,近大远小的效果。让元素的样式慢慢的变化,常配合 hover 使用。处理简单的,颜色单一的图片,使用字体图标。字体图标展示的是图标,本质是字体。z 轴移动看不出来效果,使用。

2024-08-31 19:13:13 1080

原创 Html学习

html标签学习

2024-08-25 22:07:18 807

原创 Java 调用 Groovy脚本的五种方式

java 代码中使用 groovy 脚本方式

2024-08-11 16:34:46 2054

原创 mysql临时表

MySQL 什么时候会使用内部临时表?1、如果语句执行过程可以一边读数据,一边直接得到结果,是不需要额外内存的,否则就需要额外的内存,来保存中间结果;2、join_buffer 是无序数组,sort_buffer 是有序数组,临时表是二维表结构;3、如果执行逻辑需要用到二维表特性,就会优先考虑使用临时表。比如 union 需要用到唯一索引约束, group by 还需要用到另外一个字段来存累积计数。内存表。

2024-05-10 00:26:19 1165 1

原创 mysql排序

1、从索引 (city,name,age) 找到第一个满足 city='杭州’条件的记录,取出其中的 city、name 和 age 这三个字段的值,作为结果集的一部分直接返回;3、到主键 id 索引取出整行,取 name、city、age 三个字段的值,存入 sort_buffer 中;2、到主键 id 索引取出整行,取 name、city、age 三个字段的值,作为结果集的一部分直接返回;5、重复步骤 3、4 直到 city 的值不满足查询条件为止,对应的主键 id 也就是图中的 ID_Y;

2024-05-10 00:20:07 583

原创 MySQL自增主键

在这个空表 t 里面执行 insert into t values(null, 1, 1); 插入一行数据,再执行 show create table 命令,就可以看到如下图所示的结果:表定义里面出现了一个 AUTO_INCREMENT=2,表示下一次插入数据时,如果需要自动生成自增值,会生成 id=2。表的结构定义存放在后缀名为.frm 的文件中,但是并不会保存自增值不同的引擎对于自增值的保存策略不同:在 MySQL 里面,如果字段 id 被定义为 AUTO_INCREMENT,在插入一行数据的时候,

2024-05-10 00:18:27 816

原创 MySQL优化

1、2、3、两个表的字符集不同、字符集相同关联字段类型不同;连接过程中关联字段会按照转换规则转化, 如果转化驱动表的字段,被驱动表还是会走索引的, 如果转化的是被驱动表的字段,则驱动表不会走, 是直接导致对被驱动表做全表扫描的原因。

2024-05-10 00:18:01 1085

原创 MySQL锁

全局锁就是对整个数据库实例加锁。MySQL 提供了一个加全局读锁的方法,命令是 Flush tables with read lock (FTWRL)。当你需要让整个库处于只读状态的时候,可以使用这个命令,之后其他线程的以下语句会被阻塞:数据更新语句(数据的增删改)、数据定义语句(包括建表、修改表结构等)和更新类事务的提交语句。在下开启一个事务官方自带的逻辑备份工具是 mysqldump。

2024-05-10 00:16:14 973

原创 MySQL索引

一种以键 - 值(key-value)存储数据的结构,把值放在数组里,用一个哈希函数把key 换算成一个确定的位置,然后把 value 放在数组的这个位置。多个 key 值经过哈希函数的换算,会出现同一个值的情况。处理这种情况的一种方法是,拉出一个链表。新增时速度会很快,只需要往后追加。但缺点是,因为不是有序的,所以哈希索引做区间查询的速度是很慢的。

2024-05-10 00:15:41 1044

原创 insert语句的锁

实际上,真正更新的只有一行,只是在代码实现上,insert 和 update 都认为自己成功了,update 计数加了 1, insert 计数也加了 1。–single-transaction 的作用是,在导出数据的时候不需要对表 db1.t 加表锁,而是使用 START TRANSACTION WITH CONSISTENT SNAPSHOT 的方法;insert into …on duplicate key update 这个语义的逻辑是,插入一行数据,如果碰到唯一键约束,就执行后面的更新语句。

2024-05-10 00:11:44 1150

原创 mysql--join

mysql的join流程

2024-05-10 00:11:07 970

原创 MySQL事务

事务

2024-05-10 00:08:33 859

原创 Mysql幻读

5、范围查询会访问到不满足条件的第一个值为止(唯一索引也一样)。

2024-05-10 00:07:09 1261

原创 Memory引擎

内存表不支持 Blob 和 Text 字段,并且即使定义了 varchar(N),实际也当作 char(N),也就是固定长度字符串来存储,因此内存表的每行数据长度相同。内存表的数据部分以数组的方式单独存放,而主键 id 索引里,存的是每个数据的位置。2、当数据文件有空洞的时候,InnoDB 表在插入新数据的时候,为了保证数据有序性,只能在固定的位置写入新值,而内存表找到空位就可以插入新值;内存表不支持行锁,只支持表锁。1、InnoDB 表的数据总是有序存放的,而内存表的数据就是按照写入顺序存放的;

2024-05-10 00:05:49 728

原创 mysql执行流程

MySQL主要而分为server层和存储引擎层两部分连接命令连接命令中的 mysql 是客户端工具,用来跟服务端建立连接。在完成经典的 TCP 握手后,连接器就要开始认证你的身份,这个时候用的就是你输入的用户名和密码。查询缓存的失效非常频繁,只要有对一个表的更新,这个表上所有的查询缓存都会被清空对于更新压力大的数据库来说,查询缓存的命中率会非常低。除非你的业务就是有一张静态表,很长时间才会更新一次。比如,一个系统配置表,那这张表上的查询才适合使用查询缓存。对 SQL 语句做解析。

2024-05-10 00:05:09 1197 1

原创 VUE3学习

项目中没有 webpack.config.js文件,因为Vue脚手架项目用的修改端口port:3000,//修改端口open:true//浏览器自动打开获取标签,扩展额外的功能inserted方法,指令所在标签,被插入到网页上触发;入参是指令所在标签update方法,指令对应数据、标签更新时,此方法执行。

2024-05-05 20:40:02 587

原创 git速通

快速上手Git,在线练习Git

2023-06-10 23:54:52 218

原创 浏览器中的网络

HTTP/0.9 是于 1991 年提出的,主要用于学术交流,需求很简单——用来在网络之间传递 HTML 超文本的内容,所以被称为。整体来看,它的实现也很简单,采用了基于请求响应的模式,从客户端发出请求,服务器返回数据。来看看 HTTP/0.9 的一个完整的请求流程(可参考下图)。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BUmDTzmd-1683724254905)(null)]

2023-05-19 01:00:00 230

原创 浏览器渲染

样式计算阶段的目的是为了计算出 DOM 节点中每个元素的具体样式,在计算过程中需要遵守 CSS 的继承和层叠两个规则。这个阶段最终输出的内容是每个 DOM 节点的样式,并被保存在 ComputedStyle 的结构内。

2023-05-14 00:45:00 207

原创 Gradle

通过Project 中的 task() 方法//方式一})//方式二//方式三task C{//方式四通过 tasks 对象的 create 或者 register 方法//regists 执行的是延迟创建,只有当task被需要使用的时候才会被创建定义任务的同时指定任务的属性,也可以给已有的任务动态分配属性配置项描述默认值type基于一个存在的Task来创建,和类继承相似overwrite是否替换存在的Task,与type配合使用falsedependsOn配置任务的依赖。

2023-05-13 00:45:00 709

原创 浏览器的页面循环

接着 JavaScript 执行结束,准备退出全局执行上下文,这时候就到了检查点了,JavaScript 引擎会检查微任务列表,发现微任务列表中有微任务,那么接下来,依次执行这两个微任务。这势必会影响到下个任务的执行时间。页面的渲染事件、各种 IO 的完成事件、执行 JavaScript 脚本的事件、用户交互的事件等都随时有可能被添加到消息队列中,而且添加事件是由系统操作的,JavaScript 代码不能准确掌控任务要添加到队列中的位置,控制不了任务在消息队列中的位置,所以很难控制开始执行任务的时间。

2023-05-12 00:45:00 460

原创 浏览器中的页面模块

虚拟 DOM 到底要解决哪些事情。将页面改变的内容应用到虚拟 DOM 上,而不是直接应用到 DOM 上。变化被应用到虚拟 DOM 上时,虚拟 DOM 并不急着去渲染页面,而仅仅是调整虚拟 DOM 的内部状态,这样操作虚拟 DOM 的代价就变得非常轻了。在虚拟 DOM 收集到足够的改变时,再把这些变化一次性应用到真实的 DOM 上。该图是结合 React 流程画的一张虚拟 DOM 执行流程图,结合这张图来分析下虚拟 DOM 到底怎么运行的。创建阶段。

2023-05-10 21:09:21 1069

原创 全国地区编码python爬取代码

因为要用地区编码,找了一遍,不是太旧,就是要收费,所以自己去爬一下,需要可以自取。

2023-05-10 21:06:45 843

原创 浏览器安全

如果两个 URL 的协议、域名和端口都相同,就称这两个 URL 同源浏览器默认两个相同的源之间是可以相互访问资源和操作 DOM 的。两个不同的源之间若想要相互访问资源或者操作 DOM,那么会有一套基础的安全策略的制约,我们把这称为同源策略。同源策略主要表现在 DOM、Web 数据和网络这三个层面。第一个,DOM 层面。同源策略限制了来自不同源的 JavaScript 脚本对当前 DOM 对象读和写的操作。第二个,数据层面。

2023-04-26 23:35:42 303

原创 浏览器JavaScript执行原理分析

编译时后者会覆盖前者。

2023-04-26 23:34:49 761

原创 区块链的技术

在非对称算法中,私钥一般是通过一个随机数产生的,这个随机数我们也叫做种子,从这个角度来说,知道了这个随机数也就等于知道了私钥,不过私钥的产生范围非常大,在比特币中是 2 的 256 次方,差不多在 10 的 70 方数量级上。第一种方案提供了较好的交互过程,减轻了网络负担。在区块链上,一个比特币交易的产生由两部分组成,第一部分是签名加锁,对应到的是交易的输出、第二部分是解锁花费,对应到的是交易的输入,当我们构造一笔交易的时候必然会用到私钥,这是所有数字货币资产控制权由私钥保证的根本原因。

2023-04-08 20:07:01 2765

原创 架构师学习

如何设计系统架构

2023-03-27 22:49:31 1507

原创 DDD领域驱动设计学习

DDD学习

2023-03-06 02:15:00 504

原创 Python自动化

操作文件,文件夹操作Excel、Pdf、Word、ppt邮件收发QQ、微信机器人制作思路

2023-03-03 02:45:00 313

原创 python学习

python基础知识

2023-02-21 23:45:00 205

原创 Java并发工具类

LockConditionSemaphoreReadWriteLockStampedLockCountDownLatch、CyclicBarrier并发容器原子类Executor与线程池Future(获取任务执行结果)CompletableFuture(异步编程)CompletionServiceFork/Join(并行计算框架)

2022-10-07 01:30:00 625

原创 Java多线程调优

Synchronized 同步锁实现原理Lock 锁的实现原理锁优化

2022-10-06 01:30:00 292

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除