自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

mischen520的博客

技术成就梦想

  • 博客(1076)
  • 资源 (17)
  • 收藏
  • 关注

原创 CountDownLatch和CyclicBarrier有什么区别?

3.CyclicBarrier提供getNumberWaiting()方法,可以获得CyclicBarrier阻塞的线程数量,还提供isBroken()方法,可以判断阻塞的线程是否被中断,等等。2.CyclicBarrier能处理更为复杂的业务场景,比如计算发生错误,可以结束阻塞,重置计算器,重新执行程序。4.CountDownLatch会阻塞主线程,CyclicBarrier不会阻塞主线程,只会阻塞子线程。

2022-09-16 01:20:01 20

原创 如何打破双亲委派模型?打破双亲委派模型示例?什么是双亲委派模型?

双亲委派模型:如果一个类加载器收到了类加载的请求,它首先不会自己去尝试加载这个类,而是把请求委托给父加载器去完成,依次向上,因此,所有的类加载请求最终都应该被传递到顶层的启动类加载器中,只有当父加载器在它的搜索范围中没有找到所需的类时,即无法完成该加载,子加载器才会尝试自己去加载该类。3.双亲委派就是类加载器之间的层级关系,加载类的过程是一个递归调用的过程,首先一层一层向上委托父类加载器加载,直到到达最顶层启动类加载器,启动类加载器无法加载时,再一层一层向下委托给子类加载器加载。为什么要打破双亲委派模型?

2022-09-10 09:36:53 137

原创 2021年下半年系统架构设计师下午试题一标准答案解析

该平台的核心应用场景是用户通过拖拽算法组件灵活定义机器学习流程,采用自助方式进行智能应用设计、实现与部署,并可以开发新算法组件加入平台中。请将合适的质量属性名称填入图1-1中(1)、(2)空白处,并从题干中的(a)-(i)中选择合适的质量属性描述,填入(3)-(6)空白处,完成该平台的效用树。(d)平台支持初学者和高级用户两种界面操作模式,用户可以根据自己的情况灵活选择合适的模式;(j)在正常负载情况下,平台应在0.5秒内对用户的界面操作请求进行响应;

2022-09-08 03:34:37 36

原创 Springboot中的定时任务是否会发生阻塞?

不同的定时任务之间互不影响,同一个定时任务(方法)依然会有被阻塞的机制。如果任务执行时间超过定时任务间隔时间,不管是同一个定时任务还是不同的定时任务,下一个任务都会被阻塞。首先需要知道:定时任务默认是单线程的。所以默认情况下,上一个定时任务没有执行完,下一个定时任务是不会开始的。3.在需要定时任务方法上增加注解@Scheduled,注解的参数是定时任务执行时机。Springboot中上一个定时任务没执行完,是否会影响下一个定时任务执行?3.如果定时任务交给线程池处理,则下一个任务不会被阻塞。

2022-09-07 22:02:10 27

原创 Win10系统设置开机默认开启数字小键盘

2.在注册表编辑器中,依次展开“HKEY_USERS 》 .DEFAULT 》 Control Panel 》Keyboard”,点击Keyboard之后在右侧窗口中找到InitialKeyboardIndicators项目,双击进入。3.将InitialKeyboardIndicators项目的数值数据由2147483648,修改为“80000002”,并点击确定按钮。1.运行win+r组合键,打开cmd,输入regedit,打开注册表编辑器。5、将电脑重新启动,看看是否win10开机默认开启小键盘了。

2022-09-05 06:40:51 222

原创 redis集群节点间的内部通信机制

meet:某个节点发送meet给新加入的节点,让新节点加入集群中,然后新节点就会开始与其他节点进行通信,不需要发送形成网络的所需的所有CLUSTER MEET命令。奇数个master节点可以在满足选举该条件的基础上节省一个节点,比如三个master节点和四个master节点的集群相比,大家如果都挂了一个master节点都能选举新master节点,如果都挂了两个master节点都没法选举新master节点了,所以奇数的master节点更多的是从节省机器资源角度出发说的。消息的延迟 , 消息冗余。

2022-09-03 09:31:42 65

原创 java判断两个日期之间是否超过n年?

【代码】java判断两个日期之间是否超过n年?

2022-09-03 09:10:09 100

原创 java获取用键盘输入常用的两种方法

方法 2:通过 BufferedReader。方法 1:通过 Scanner。

2022-09-02 00:30:34 115

原创 Java序列化中如果有些字段不想进行序列化怎么办

transient 关键字的作用是:阻止实例中那些用此关键字修饰的的变量序列化;当对象被反序列化时,被 transient 修饰的变量值不会被持久化和恢复。对于不想进行序列化的变量,使用 transient 关键字修饰。transient 只能修饰变量,不能修饰类和方法。

2022-09-02 00:28:07 112

原创 import java 和 和 javax 有什么区别?

API 包来说使用。然而随着时间的推移,javax 逐渐的扩展成为 Java API 的组。刚开始的时候 JavaAPI 所必需的包是 java 开头的包,javax 当时只是扩展。但是,将扩展从 javax 包移动到 java 包将是太麻烦了,最终会破坏。因此,最终决定 javax 包将成为标准 API 的一部分。所以,实际上 java 和 javax 没有区别。

2022-09-02 00:22:38 50

原创 在 Java 中定义一个不做事且没有参数的构造方法的作用

Java 程序在执行子类的构造方法之前,如果没有用 super() 来调用父类特定。义了有参数的构造方法,而在子类的构造方法中又没有用 super() 来调用父类。中特定的构造方法,则编译时将发生错误,因为 Java 程序在父类中找不到没。的构造方法,则会调用父类中“没有参数的构造方法”。因此,如果父类中只定。有参数的构造方法可供执行。解决办法是在父类里加上一个不做事且没有参数。

2022-09-02 00:20:26 37

原创 Oracle JDK 和 OpenJDK 的区别?

答:非常接近 - 我们的 Oracle JDK 版本构建过程基于 OpenJDK 7 构建,只添加了几个部分,例如部署代码,其中包括 Oracle 的 Java 插件和 Java WebStart的实现,以及一些封闭的源代码派对组件,如图形光栅化器,一些开源的第三方组件,如 Rhino,以及一些零碎的东西,如附加文档或第三方字体。展望未来,我们的目的是开源 Oracle JDK 的所有部分,除了我们考虑商业功能的部分。此外,OpenJDK 被选为 Java 7 的参考实现,由 Oracle 工程师维护。

2022-09-02 00:15:13 18

原创 SimpleDateFormat严格限制日期转换setLenient(false)

虽然绝大多数会在前台处理,但是也有需要从文件流读入的情况,如果日期不合格就需要抛异常,这时候就需要禁止SimpleDateFormat的自动计算功能。SimpleDateFormat.setLenient(false):严格解析日期,如果日期不合格就抛异常,不会自动计算。SimpleDateFormat.setLenient(true) : 默认值true,不严格解析日期,会自动计算。有时候我们需要判断用户的日期格式是否正确,这时候就需要用到setLenient。...

2022-08-05 06:59:34 56

原创 JVM 对 Java 的 原 生 锁 做 了 哪 些 优 化 ?

由 于 Java 层 面 的 线 程 与 操 作 系 统 的 原 生 线 程 有 映 射 关 系 , 如 果 要 将 一个 线 程 进 行 阻 塞 或 唤 起 都 需 要 操 作 系 统 的 协 助 , 这 就 需 要 从 用 户 态 切 换到 内 核 态 来 执 行 , 这 种 切 换 代 价 十 分 昂 贵 , 很 耗 处 理 器 时 间 , 现 代 JDK中 做 了 大 量 的 优 化。 当 没 有 竞 争 出 现 时 , 默 认 会 使 用 偏 向 锁。...

2022-08-03 22:31:46 83

原创 spring事务什么时候会失效?

spring事务的原理是AOP,进行了切面增强,那么失效的根本原因是这个AOP不起作用了!常见情况有如下几种1、发生自调用,类里面使用this调用本类的方法(this通常省略),此时这个this对象不是代理类,而是UserService对象本身!解决方法很简单,让那个this变成UserService的代理类即可!2、方法不是public的3、数据库不支持事务4、没有被spring管理5、异常被吃掉,事务不会回滚(或者抛出的异常没有被定义,默认为RuntimeException)...

2022-07-09 07:42:53 143

原创 Spring框架中的单例Bean是线程安全的么?

Spring中的Bean默认是单例模式的,框架并没有对bean进行多线程的封装处理。如果Bean是有状态的 那就需要开发人员自己来进行线程安全的保证,最简单的办法就是改变bean的作用域 把 "singleton"改为’‘prototype’ 这样每次请求Bean就相当于是 new Bean() 这样就可以保证线程的安全了。有状态就是有数据存储功能无状态就是不会保存数据 controller、service和dao层本身并不是线程安全的,只是如果只是调用里面的方法,而且多线程调用一个实例的方法,会在

2022-07-09 07:34:34 140

原创 RabbitMQ如何确保消息发送 ? 消息接收?

发送方确认机制:信道需要设置为 confirm 模式,则所有在信道上发布的消息都会分配一个唯一 ID。一旦消息被投递到queue(可持久化的消息需要写入磁盘),信道会发送一个确认给生产者(包含消息唯一ID)。如果 RabbitMQ 发生内部错误从而导致消息丢失,会发送一条 nack(未确认)消息给生产者。所有被发送的消息都将被 confirm(即 ack) 或者被nack一次。但是没有对消息被 confirm 的快慢做任何保证,并且同一条消息不会既被 confirm又被nack发送方确认模式是异

2022-07-08 08:25:14 239

原创 详解负载均衡算法

1、轮询法将请求按顺序轮流地分配到后端服务器上,它均衡地对待后端的每一台服务器,而不关心服务器实际的连接数和当前的系统负载。2、随机法通过系统的随机算法,根据后端服务器的列表大小值来随机选取其中的一台服务器进行访问。由概率统计理论可以得知,随着客户端调用服务端的次数增多,其实际效果越来越接近于平均分配调用量到后端的每一台服务器,也就是轮询的结果。3、源地址哈希法源地址哈希的思想是根据获取客户端的IP地址,通过哈希函数计算得到的一个数值,用该数值对服务器列表的大小进行取模运算,得到的结果便是客服端要

2022-07-07 08:45:36 56

原创 Redis的过期键的删除策略

Redis是key-value数据库,我们可以设置Redis中缓存的key的过期时间。Redis的过期策略就是指当Redis中缓存的key过期了,Redis如何处理。惰性过期:只有当访问一个key时,才会判断该key是否已过期,过期则清除。该策略可以最大化地节省CPU资源,却对内存非常不友好。极端情况可能出现大量的过期key没有再次被访问,从而不会被清除,占用大量内存。定期过期:每隔一定的时间,会扫描一定数量的数据库的expires字典中一定数量的key,并清除其中已过期的key。该策略是一个折中方案。

2022-07-06 08:40:14 51

原创 ORA-01461:仅能绑定要插入 LONG 列的 LONG 值

ORA-01461:仅能绑定要插入 LONG 列的 LONG 值这个功能是解析一个excel表格,然后将解析的数据批量插入数据库中,数据库用的是oracle,因为excel里面的数据量比较多,有两千多条,细看也看不出来是为啥报错,没法,我就只有先判断每个字段的字符串长度,因为数据库该列的长度是VARCHAR2(4000),所以我就在数据入库的时候判断了一下字符串长度,超过4000的就不让他插入数据库了。可是奇怪的是,没有任何数据超过了40...

2022-07-03 16:53:46 570

原创 ORA-01502 索引或这类索引的分区处于不可用状态

ORA-01502 索引xx或这类索引的分区处于不可用状态索引失效后,向表中是无法插入数据的原因: 出现这个问题,可能有人move过表,或者disable 过索引。删除数据后,move回收表空间导致表索引失效。alter table message move;1.索引失效 重建索引解决方法:–查索引失效select index_name,index_type,tablespace_name,table_type,status from user_indexes where index_name=‘P

2022-07-03 15:12:50 332

原创 ConcurrentHashMap实现原理

jdk7:数据结构:ReentrantLock+Segment+HashEntry,一个Segment中包含一个HashEntry数组,每个 HashEntry又是一个链表结构。元素查询:二次hash,第一次Hash定位到Segment,第二次Hash定位到元素所在的链表的头部。锁:Segment分段锁 Segment继承了ReentrantLock,锁定操作的Segment,其他的Segment不受影响,并发度为segment个数,可以通过构造函数指定,数组扩容不会影响其他的segment。get方

2022-07-03 08:34:00 33

原创 ElasticSearch7为什么会去掉type

关系型数据库中两个数据表示是独立的,即使他们里面有相同名称的列也不影响使用,但ES中不是这样的。elasticsearch是基于Lucene开发的搜索引擎,而ES中不同type下名称相同的filed最终在Lucene中的处理方式是一样的。• 两个不同type下的两个user_name,在ES同一个索引下其实被认为是同一个filed,你必须在两个不同的type中定义相同的filed映射。否则,不同type中的相同字段名称就会在处理中出现冲突的情况,导致Lucene处理效率下降。• 去掉type就是为了提高

2022-07-02 10:53:56 281

原创 什么是跨域以及为什么会出现跨域以及跨域的解决方案

1.什么是跨域?跨域:指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全限制。• 同源策略:是指协议,域名,端口都要相同,其中有一个不同都会产生跨域;跨域举例:2.为什么会出现跨域?我们都知道要想访问一个网站,首先要知道这个网站的URL,才能够进入该网站。而URL是由协议、域名、端口组成的(协议,浏览器自动填充;域名的端口默认为80,所以通常这两项不用输入)。而跨域就是说去访问的网站信息中的协议、域名、端口号这三者之中任意一个与当前页面的UR

2022-07-02 10:39:02 1168

原创 详解Eureka的自我保护机制

Eureka Server的⾃我保护机制会检查最近15分钟内所有Eureka Client正常心跳的占比,如果低于85%就会被触发。我们如果在Eureka Server的管理界面发现如下的红色内容,就说明已经触发了自我保护机制。EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMINGINSTANCES ARE UP WHEN THEY’RE NOT. RENEWALS ARE LESSER THANTHRESHOLD AND HENCE THE INSTANCES A

2022-06-28 23:03:46 314

原创 Eureka是如何进行服务注册的?

eureka

2022-06-28 22:59:58 59

原创 idea application.yml配置文件没有提示的解决方法

idea

2022-06-05 21:34:46 3582

原创 idea properties配置文件中文乱码

idea配置文件中文乱码

2022-06-05 16:05:58 107

原创 怎样将idea背景色调整为白色

idea背景色调整为白色

2022-06-05 16:03:12 172

原创 怎样将idea背景色调整为白色

idea背景色调整为白色

2022-06-05 10:49:53 768

原创 git如何配置远程连接以及免密登录

git免密登录配置

2022-06-03 10:58:20 186

原创 怎样查看自己电脑是否安装了git

git

2022-06-03 10:23:01 2445

原创 VS code怎样安装常用插件

vscode

2022-06-03 09:29:49 220

原创 idea怎样配置自己的maven仓库地址

idea、maven

2022-06-03 09:11:49 1708

原创 Aspect切面类的实际应用

切面,面向切面编程

2022-06-02 21:03:40 120

原创 with as 的使用方式详解

一. WITH AS 的含义WITH AS 短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到。有的时候,是为了让SQL语句的可读性更高些,也有可能是在 UNION ALL 的不同部分,作为提供数据的部分。特别对于 UNION ALL 比较有用。因为 UNION ALL 的每个部分可能相同,但是如果每个部分都去执行一遍的话,则成本太高,所以可以使用 WITH AS 短语,则只要执行一遍即可。如果

2022-06-02 19:14:26 577

原创 oracle面试题解析(用一条sql语句实现批量一对一更新)

需求:现在有一个项目表project,里面的字段主要有proj_Id,money,主键字段为id,proj_Id可能为空,money字段类型为NUMBER(17,2),在某种条件下,会关联表proj_appl表字段proj_Id,另外一个表proj_appl,里面的字段主要有proj_Id,appl_money,主键字段为proj_Id,appl_money字段类型为NUMBER(17,2),现在两边的金额不一致,需要把两个表金额不一致的替换为金额一致的表,金额以表proj_appl表字段proj_I

2022-05-31 19:00:00 107

原创 如何利用一条sql语句进行批量更新(需要满足一对一更新)

需求:现在有一个项目表project,里面的字段主要有proj_Id,money,主键字段为id,proj_Id可能为空,money字段类型为NUMBER(17,2),在某种条件下,会关联表proj_appl表字段proj_Id,另外一个表proj_appl,里面的字段主要有proj_Id,appl_money,主键字段为proj_Id,appl_money字段类型为NUMBER(17,2),现在两边的金额不一致,需要把两个表金额不一致的替换为金额一致的表,金额以表proj_appl表字段proj_I

2022-05-31 18:00:00 774

原创 什么是SQL注入攻击?列举抵御SQL注入攻击的方式?

SQL注入攻击,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。抵御sql注入攻击:1.使用PreparedStatement2.使用存储过程3.验证输入/过滤输入4.专业的安全产品...

2022-05-29 09:51:18 178

原创 详解蓝绿部署、金丝雀发布(灰度发布)、A/B测试的准确定义

最近一直听他们说金丝雀发布,工作这么多年,竟然不知道金丝雀发布是什么意思。想想,感觉挺丢人的,因为我们之前的项目发布是使用的灰度发布。出于好奇,就学习了一下。下面,就详细介绍一下,灰度发布、蓝绿部署、滚动部署、A/B测试,这几个概念。蓝绿部署目的:减少发布时的中断时间、能够快速撤回发布蓝绿部署中,一共有两套系统:一套正在提供服务的系统,标记为“绿色”;另一套是准备发布的系统,标记为“蓝色”。两套系统都是功能完善的,并且正在运行的系统,只是系统版本和对外服务情况不同。蓝色系统作用:用来做发布前测试

2022-05-29 09:05:25 691

redis-2.6.zip

redis测试开发使用,直接在windows安装即可使用,需要的小伙伴们可以下载哦

2019-06-05

SecureCRT.exe

一款非常好用的支持ssh的连接工具,不要注册码的安装,安装好以后可以直接使用

2017-01-18

mysql64位安装工具

一款非常还用的MySQL,支持64位操作系统

2017-01-18

mysql-5.5.40-win32安装包

非常好用的mysql数据库,简单易装

2017-01-18

远程连接服务器工具SFTP

一款非常好用的连接服务器的工具,支持快速上传和下载

2017-01-18

登陆注册界面实现

登陆注册界面实现

2016-08-03

servlet作为服务器响应请求.zip

servlet作为服务器登陆注册界面的实现,非常有用的一段代码。

2016-07-14

用js写的163登陆界面系统

用js写的163登陆界面系统,所有功能几乎都已完善,只有少许有待优化

2016-07-11

apache-tomcat-6.0.18.exe

2016-07-11

MyEclipse10.1破解工具及方法图解.zip

2016-07-10

mysql-connector-java-5.1.26.jar

mysql-connector-java-5.1.26.jar,支持mysql 5.0

2016-06-28

commons-logging-1.2-bin.zip

2016-06-26

eclipse4.5.1.exe

只支持32位windows系统

2016-06-26

eclipse-inst-win32.zip

只支持32位windows操作系统

2016-06-25

net.sf.jadclipse压缩包

一款非常耐用的java反编译器,下载非常方便

2016-06-23

mysql中文学习手册

mysql中文学习手册,很值得一看哦!

2016-06-23

mysql 5.0资源下载

非常好用的一个mysql 5.0的配置文件,欢迎下载

2016-06-22

空空如也

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

TA关注的人

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