- 博客(24)
- 收藏
- 关注
原创 linux离线环境安装nginx及相关依赖
linux离线环境安装nginx,涉及gcc、gcc-c++、pcre、zlib、openssl依赖安装。gcc依赖下载镜像地址:官网:https://gcc.gnu.org/releases.html阿里云镜像站:http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/CentOS 镜像站点:https://vault.centos.org/7.5.1804/os/x86_64/Packages/
2024-12-12 11:25:28
1124
1
原创 MySQL日志篇:undo log、redo log、binlog在增删改操作中的流程总结
【代码】MySQL日志篇:undo log、redo log、binlog在增删改操作中的流程总结。
2024-04-03 12:31:47
414
原创 事务隔离级别是怎么实现的?
事务是在 MySQL 引擎层实现的,我们常见的 InnoDB 引擎是支持事务的,事务的四大特性是原子性、一致性、隔离性、持久性,我们这次主要讲的是隔离性。当多个事务并发执行的时候,会引发脏读、不可重复读、幻读这些问题,那为了避免这些问题,SQL 提出了四种隔离级别,分别是读未提交、读已提交、可重复读、串行化,从左往右隔离级别顺序递增,隔离级别越高,意味着性能越差,InnoDB 引擎的默认隔离级别是可重复读。
2024-03-20 18:43:10
914
原创 synchronized原理进阶
1.默认是延迟的,不会在程序启动时立即生效,如想避免延迟。可加VM参数 -XX:BiasedLockingStartupDelay=0 来禁用延迟。2.添加VM参数 -XX:-UseBiasedLocking 禁用偏向锁。
2023-12-14 22:43:29
121
原创 IDEA使用 Database 去连接 MySQL 下载驱动失败问题
最近在使用 IDEA 的 Database 去连接 MySQL 时需要下载一个驱动,但是一直提示下载失败。下面就是有效的解决方案,大家可以试试。
2023-09-25 19:12:40
1982
1
原创 SpringMVC-文件上传和下载
如果这个方法用在从本地文件读取数据时,一般不会遇到问题,但如果是用于网络操作,就经常会遇到一些麻烦。比如,Socket通讯时,对方明明发来了1000个字节,但是自己的程序调用available()方法却只得到900,或者100,甚至是0,感觉有点莫名其妙,怎么也找不到原因。本地程序调用available()方法有时得到0,这可能是对方还没有响应,也可能是对方已经响应了,但是数据还没有送达本地。对方发送了1000个字节给你,也许分成3批到达,这你就要调用3次available()方法才能将数据总数全部得到。
2023-09-11 15:30:38
254
原创 java8--强大的Stream API
1.Stream关注的是对数据的运算,与CPU打交道集合关注的是数据的存储,与内存打交道2.注意①Stream 自己不会存储元素②Stream 不会改变源对象。相反,他们会返回一个持有结果的新Stream③Stream 操作是延迟执行的。这意味着他们会等到需要结果的时候才执行3.Stream 执行流程①Stream的实例化②一系列的中间操作(过滤、映射、...)③终止操作4.说明:①一个中间操作链,对数据源的数据进行处理。
2023-08-30 18:40:05
393
1
原创 java8--lambda表达式各种应用场景总结
Lambda 表达式是 Java 8 引入的一种语法特性,它允许你以更紧凑的方式表示匿名函数或代码块。Lambda 表达式主要用于函数式编程和简化代码,它在多种场景下都能发挥作用。以下是 Java 中 Lambda 表达式的主要用法总结:这些只是 Lambda 表达式的一些常见用法。通过使用 Lambda 表达式,你可以编写更简洁、更具可读性的代码,并且在函数式编程范式中更自然地表达逻辑。请注意,在使用 Lambda 表达式时需要了解参数列表、箭头操作符和代码块的语法结构。使用 Lambda 之前(使用匿名
2023-08-30 17:53:19
1053
2
原创 java8新特性--Lambda表达式
>右边:lambda,体应该使用一对{}包裹;如果lambda体只有一条执行语句(可能是return语句),可省略这一对{}和return关键字。->左边:lambda形参列表的阐述类型可以省略(因为存在类型推断);1.举例:(o1,o2)->Integer.compare(o1,o2);->左边:lambda形参列表(其实就是接口中的抽象方法的形参列表)->右边:lambda体(其实就是重写的抽象方法的方法体)4.Lambda表达式的本质:作为函数式接口的实例。3.Lambda表达式的使用:6种。
2023-08-29 17:30:00
87
1
原创 MySQL外键设置之Cascade、NO ACTION、Restrict、SET NULL详解
cascade:在父表上 update / delete记录时,同步 update / delete掉子表的匹配记录No action:如果子表中有匹配的记录, 则不允许对父表对应候选键进行update / delete操作Restrict:同 no action, 都是立即检查外键约束set null:在父表上 update / delete记录时,将子表上匹配记录的列设为 null要注意子表的外键列不能为 not nulldefault:父表有变更时, 子表将外键列设置成一个默认的值但Innod
2023-08-28 00:50:14
6733
1
原创 数据库函数使用
1.合计/统计函数1.count返回行的总数2.group by ··· having ···2. 字符串相关函数3.数学相关函数4.时间日期相关函数
2023-08-27 12:16:48
52
原创 备份数据库、备份数据库的表、恢复数据库
mysqldump -u 用户名(默认root) -p密码 -B 数据库1 数据库2 数据库n > D:\study\文件名.sql。mysqldump -u 用户名(默认root) -p密码 数据库 表1 表2 表n > D:\study\文件名.sql。方法二:Mysql内运行sql文件或者将sql文件的内容放到编译器执行。Source D:\study\文件名.sql。方法一:进入并登录Mysql命令行再执行。
2023-08-25 16:21:57
64
1
原创 【反射快速入门、反射调用优化、Class类常用方法】
3.虚拟机会保证一个类的()方法在多线程环境中被正确地加锁、同步,如果多个线程同时去初始化一个类,那么只会有一个线程去执行这个类的方法,其它线程都需要阻塞等待,直到活动线程执行()完毕。这个Class对象就像一面镜子,通过这个镜子看到类的结构,所以,形象地称之为:反射。第三个阶段就是初始化,加载和连接阶段是由JVM虚拟机控制的,而初始化阶段就是由程序员控制的,比如静态代码块里写什么东西,全部由程序员控制,可以输出一条语句,或者对某个静态变量进行初始化;
2023-08-23 21:59:35
215
原创 Git项目如何与GitHub远程仓库关联?
2) 此处yuoj-frontend是关联远程仓库的SSH别名,yuoj-frontend2是关联远程仓库的HTTPS别名,我使用HTTPS会报错,参考网上的git config --global http.sslVerify "false"和git config --global https.sslVerify "false" 修改后push变成警告不安全并无法继续执行(具体报错没在去复现),最后是使用SSH地址访问的远程仓库。1)git需要和GitHub关联。
2023-07-31 01:25:26
438
1
原创 nvm详细安装使用教程及问题解决(nvm-node多版本管理工具)
主要参考链接2,修改为从淘宝镜像下载,不然下载很慢很慢很慢!nvm on 打开nodejs控制。off 关闭nodejs控制。
2023-07-29 17:09:02
190
原创 为啥有时会出现 4.0 - 3.6 = 0.40000001 这种现象?
如果基本的整数和浮点数精度不能够满足需求, 那么可以使用java.math 包中的两个 很有用的类:Biglnteger 和 BigDecimal 这两个类可以处理包含任意长度数字序列的数值。Java 语言的设计者确实为字符串的连接重载了 + 运算符,但没有重载其他的运算符,也没有给 Java 程序员在自己的类中重载运算符的机会。浮点数值采用二进制系统表示, 而在二进制系统中无法精确地表示分数 1/10。但是0.1不能够精确表示,因为它不能表示成为1/(2^n)的和的形式。
2023-07-22 16:42:51
113
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人