自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Java并发:synchronized关键字如何保证线程安全

线程安全当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他的协调操作,调用这个对象的行为都可以获得正确的结果,那么这个对象就是线程安全的。Java语言中得各种操作共享数据可以分成五类,按安全程度由强到弱,来排序:1. 不可变: 不可变的对象一定是线程安全的,无论对象的方法实现还是方法的调用者都不需要在采取安全措施。如果共享数据是一个基本数据类型,那么只要在定义的时候使用final关键字修饰就可以保证它不可变;如果是共享数据是

2021-12-19 16:44:56 2816 1

原创 Mybatis Generator代码生成以及复杂用法的使用

1. 在maven中引入generator的依赖和plugin组件在pom.xml文件中添加下面的依赖 <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.2</

2021-12-18 21:19:12 1090

原创 通过阻塞队列多线程完成ftpClient完成文件和文件夹的上传下载

1. ftpClient实现文件和文件夹上传1.1ftp实现文件的上传单个文件的上传是最简单的,直接出代码。 /** * * @param ftp 初始化好的ftp连接 * @param remoteBasePath 远程文件夹的路径 * @param localFile 本地文件File对象 * @return * @throws IOException */ public static boolean uploa

2021-12-17 00:12:58 1282

原创 浅谈接口幂等性

概述幂等性原本是数学上的概念,即使公式:f(x)=f(f(x)) 能够成立的数学性质。用在编程领域,则意为对同一个系统,使用同样的条件,一次请求和重复的多次请求对系统资源的影响是一致的。幂等性是分布式系统设计中十分重要的概念,具有这一性质的接口在设计时总是秉持这样的一种理念:调用接口发生异常并且重复尝试时,总是会造成系统所无法承受的损失,所以必须阻止这种现象的发生。幂等有两个维度:一是空间维度上的幂等,即幂等对象的范围,是个人还是机构,是某一次交易还是某种类型的交易… 二是时间维度上的幂等,即幂等的保

2021-12-04 15:13:40 158

原创 MySQL中多表查询几种方式

多表查询有3种方式,分别是:1、传统方式,包括左外连接查询,右外连接查询 ,完全外链接查询;2、子查询方式,包括单行查询,多行查询;3、聚合查询方式,包括求和,平均查询,记录总数。多表查询有3种方式,分别是:一、传统方式/*-- 传统连接方式 --*/select e.ename,d.dnamefrom dept d , emp ewhere d.deptno = e.deptno/*--natural join 两张表中只有一个同名栏位时行连接 --*/select e.ename,.

2021-12-04 11:35:38 3573

原创 CORS跨域资源共享处理

什么是跨域?当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同即为跨域。出于浏览器的同源策略限制。同源策略(Sameoriginpolicy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。同源策略会阻止一个域的javascript脚本和另外一个域的内容进行交互。所谓同源(即指在同一个域)就是两个页面具有相同的协议(protocol),主机(host)和端

2021-11-27 14:29:52 111

原创 MySQL中的锁(表锁、行锁)

MySQL中的锁(表锁、行锁)概述MySQL表级锁的锁模式(MyISAM)MyISAM的锁调度InnoDB锁问题1.事务(Transaction)及其ACID属性2.并发事务带来的问题3.事务隔离级别InnoDB的行锁模式及加锁方法InnoDB行锁实现方式间隙锁(Next-Key锁)关于死锁总结锁是计算机协调多个进程或纯线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所在有数据库必须解决的

2021-11-08 18:30:00 400

原创 MYSQL MVCC实现原理

MYSQL MVCC实现原理MYSQL 架构事务隔离级别MYSQL 事务日志MVCC实现举例说明MVCC(Multi Version Concurrency Control的简称),代表多版本并发控制。与MVCC相对的,是基于锁的并发控制,Lock-Based Concurrency Control)。MVCC最大的优势:读不加锁,读写不冲突。在读多写少的OLTP应用中,读写不冲突是非常重要的,极大的增加了系统的并发性能MYSQL 架构了解MVCC前,我们先学习下Mysql架构和数据库事务隔离级别

2021-11-06 15:50:54 78

原创 事半功倍的20种SQL语句优化

事半功倍的20种SQL语句优化1.使用where条件限定要查询的数据,避免返回多余的行假设业务场景是查询某个用户是否是会员优化前:List<Long> userIds = sqlMap.queryList("select userId from user where isVip=1");boolean isVip = userIds.contains(userId);优化后:Long userId = sqlMap.queryObject("select userId from

2021-10-31 20:00:00 145

转载 MySQL主从复制面试和原理

MySQL主从复制面试和原理一、什么是主从复制?主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库;主数据库一般是准实时的业务数据库。二、主从复制的作用(好处,或者说为什么要做主从)重点!1、做数据的热备,作为后备数据库,主数据库服务器故障后,可切换到从数据库继续工作,避免数据丢失。2、架构的扩展。业务量越来越大,I/O访问频率过高,单机无法满足,此时做多库的存储,降低磁盘I/O访问的频率,提高单个机器的I/O性能。3、读写分离,使数据库能支撑更大的并发。在报表中尤其重要。由于

2021-10-30 11:22:15 2473

原创 MySQL中explain用法和结果分析

Redis分布式锁的个人理解和看法欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习

2021-10-30 10:18:47 233

原创 mysql索引的个人理解

mysql索引的个人理解索引是什么?索引有哪些分类总结索引是什么?索引是辅助存储引擎高效获取数据的一种数据结构。索引有哪些分类我们经常从以下几个方面对索引进行分类从数据结构的角度对索引进行分类B+treeHashFull-texts索引从物理存储的角度对索引进行分类聚簇索引二级索引(辅助索引)从索引字段特性角度分类主键索引唯一索引普通索引前缀索引从组成索引的字段个数角度分类单列索引联合索引(复合索引)数据结

2021-10-27 10:46:35 121

空空如也

空空如也

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

TA关注的人

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