自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 解决 SpringBoot 依赖导入过慢问题

在搭建 Maven 项目时,解决依赖导入慢问题是通过更改 setting.xml 的镜像仓库为阿里云镜像仓库 ,Spring Boot 解决此问题也一样打开 SpringBoot 项目的 Pom.xml 文件,在里面添加下列代码(更改镜像为阿里云)<repositories> <repository> <id>aliy...

2019-12-11 22:03:57 5024 10

原创 正确版本!!!彻底解决tomcat中文乱码问题

在网上搜索后,不管我们更改 Server.xml 的 URIEncoding 还是编译器的编码方式都没用,最终我找到了彻底解决的办法:① — >>> 打开 tomcat 文件② — >>> 打开 conf 文件夹③ — >>> 打开 logging.properties 文件④ — >>> 找到第 50 行的位...

2019-12-10 21:54:12 5898 14

原创 【工具】为key生成唯一序列数(基于Redis)

生成唯一序列数工具

2022-07-07 11:41:42 1809 1

原创 2021 - 2022个人年度总结

前言再次翻阅去年的个人总结,自检当时写下的几点期望,我全部达成了!真是个令人激动人心的事情呐~回顾回顾这一年来自己的方方面面:

2022-01-04 11:44:56 666 2

原创 初识区块链

前言区块链是一个信息技术领域的术语。从本质上讲,它是一个共享数据库,存储于其中的数据或信息,具有“不可伪造”“全程留痕”“可以追溯”“公开透明”“集体维护”等特征。基于这些特征,区块链技术奠定了坚实的“信任”基础,创造了可靠的“合作”机制,具有广阔的运用前景。 -- 百度百科区块链记账原理区块链(1.0)是一个基于密码学安全的分布式账本,是一个方便验证,不可篡改的账本。区块链在记账时会把账页信息(包含序号、记账时间、交易记录)作为原始信息进行Hash, 得到一个Hash值,如:787635

2021-12-21 13:37:04 11583

原创 并发场景下的幂等问题

问题钉钉实人认证业务存在数据重复的问题。正常情况下,数据库中应该只有一条实人认证成功记录,但是实际上某用户有多条。原因并发导致了不幂等。幂等(idempotent、idempotence)是一个数学与计算机学概念,常见于抽象代数中。在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。 --百度百科该业务一般流程为:1)用户选择实人认证后会在服务端初始化一条记录;2)用户在钉钉移动端按照指示完成人脸比对;3)比对完成后访问服务端修改

2021-12-01 21:32:21 682

原创 初识Serverless

导读回顾架构的演进过程,我们不难发现,研发运维人员正在逐渐地把关注点从机器上移走,不再去管理机器,Serverless 正是在这样的背景下应运而生。Serverless 的愿景应该是 Write locally, compile to the cloud,即代码只关心业务逻辑,由工具和云去管理资源。Serverless 的价值不用关心服务器 :任何一台服务器都可能出现故障,如何自动识别故障,摘除有问题的实例,这是 Serverless 平台必须具备的能力;此外,操作系统的安全补丁升级,需要做到

2021-12-01 20:16:02 1741

原创 ZAB 协议

简介ZAB ,Zookeeper Atomic Broadcast,ZooKeeper原子消息广播协议,是专为 ZooKeeper 设计的一种支持崩溃恢复的原子广播协议,在 Zookeeper 中,主要依赖 ZAB 协议来实现分布式数据一致性。Zookeeper 使用一个单一主进程来接收并处理客户端的所有事务请求,即写请求。当服务器数据的状态发生变更后,集群采用 ZAB 原子广播协议,以事务提案 Proposal 的形式广播到所有的副本进程上。ZAB 协议能够保证一个全局的变更序列,即可以为每一个事务

2021-11-18 21:04:51 4152

原创 Paxos 算法

简介Paxos 算法是莱斯利·兰伯特(Leslie Lamport)1990 年提出的一种基于消息传递的、具有高容错性的一致性算法。Google Chubby 的作者 Mike Burrows 说过,世上只有一种一致性算法,那就是 Paxos,所有其他一致性算法都是 Paxos 算法的不完整版。Paxos 算法是一种公认的晦涩难懂的算法,并且工程实现上也具有很大难度。较有名的 Paxos 工程实现有 Google Chubby、ZAB、微信的 PhxPaxos 等。Paxos 算法是用于解决什么问题

2021-11-18 20:11:55 1589

原创 顺丰速运——深圳二面(19分钟)

面试内容自我介绍数据库查询压力很大怎么办?数据插入压力很大怎么办?利用缓存先存储数据,数据存储安全性是100%吗?缓存如果崩了怎么保证数据安全性?讲讲AOF和RDB的区别和使用场景?一百万条数据,ArrayList和LinkedList来存,请问谁遍历更快?AOP的原理,JDK动态代理的原理,CGLIB的原理?CountDownLatch原理了解多少?(实习用了它,所以问了)总结本轮面试时间和一面一样短,考察点比较少,自己下来可以对CountDownLatch底层更深入了解下。

2021-09-14 19:42:38 257 1

原创 联想——成都国外业务一面(25分钟)

面试三个面试官同时对我进行视频面试面试官先个人信息介绍、部门基本信息介绍自我介绍实习内容考察:并发相关、分布式锁设计开源项目简要介绍,AOP原理与实现MAVEN、Git使用指令和经历介绍Java设计原则、设计模式实战经历讲讲?反问环节:工作地点是否在成都?(Y)业务技术栈包括哪些?(基于Spring)总共几轮面试?(如果三人商量合适,下一面直接HR面)总结主技术面试官看起来年龄偏长,非常和蔼,所以我发挥就很自然,表达出了自己想要扩展的内容等。等待面试结果,继续加油!...

2021-09-12 11:04:45 171

原创 顺丰速运——深圳大数据部一面(18分钟)

内容自我介绍实习内容展开问Java锁了解哪些?JVM了解哪些?场景题:1个T的订单,只有1个G的内存,如何做设计?如何排序?总结本轮面试时间很短,面完很快进入复试,约了二面时间。由于对方为大数据相关部门,该方向自己实战经验缺乏,需要多调研学习。...

2021-09-12 10:52:31 262

原创 阿里巴巴本地生活——上海饿了么配送一面(一小时)

面试内容自我介绍编程题1 :伯乐平台:自己实现一个链表编程题2:如何判断链表有环? (口述搞定)介绍自己的实习各方面收获,从而扩展开以下:实习中该需求分布式锁如何实现的? 1.KEY如何设定? 2.如果缓存击穿了怎么办?(面试官讲解了自己的见解)Java并发相关还了解哪些?关于本地缓存是堆内还是堆外所带来的影响?(我主动提的,跟面试官一起商讨,面试官说这一点很有意思,他下来会花时间去调研学习)场景题:在大促环境下,有一个满10块减5块的活动,在缓存中存储的活动和商品的关系该如何设计? (分

2021-09-06 20:04:05 244

原创 字节跳动提前批--成都互娱一面(一小时)

问题自我介绍进程和线程的区别?线程如何通信?中断是什么?如何响应中断?锁了解哪些?hashMap数据结构?哈希算法了解有哪些?线程安全的哈希表有哪些?如何实现的?数据库为什么用B+树索引?算法手写CAS最大正方形全排列的最大数总结问题问得都偏基础,没啥问题。就是算法做不来,哈哈哈。...

2021-08-13 18:41:46 141

原创 解决request.getSession().getServletContext().getRealPath(“/“)为null问题

今天需求做对excel文件加密,需要生成一个临时文件路径进行文件存储,第一时间想到了用request.getSession().getServletContext().getRealPath("/")结果报空指针了,以下是替代它的方案:this.getClass().getResource("/").getPath().replaceAll("^\\/", "");希望我的答案对类似问题有所帮助。...

2021-07-07 16:17:11 1074

原创 在前端将JSON数据格式化展示解决办法

我一个后台开发人员,要自己敲公司数据管理系统对应接口的前端部分。研究这前端问题好几个小时,结果写了这个函数解决了我的问题:function JSON_Format(str) { //判空 if (str == null) { return "查询结果为空"; } //栈-用于括号匹配 var stack = []; //新格式化JSON字符串 var tmpStr = '';

2021-06-24 10:51:22 846

原创 京东 京东健康HR面 17分钟电话面试

前言早上八点过短信和邮件通知 (被吵醒,但是很开心)面试时间:2021年4月20日下午17:00总面试时长:17分钟过程自我介绍两次项目的过程,讲讲收获、难点、改善三个方面。讲讲自己如果要将此项目升级,需要哪些需求?讲讲自己的优劣势,朋友眼中的你,劣势造成的后果是什么?自己为什么选择北京?为什么选择京东?反问:多久发OFFER?是否会告诉我提前准备哪些技术栈一类的?总结本次面试完后状态立刻更新为HR面试完成,OFFER灯亮了。京东实习面试告一段落,许愿自己尽快签约,然后接下

2021-04-20 22:01:21 2372 2

原创 京东 京东健康二面 14分钟视频面试

前言电话面试面试时间:2021年4月14日下午16:00总面试时长:14分钟技术问题:无过程自我介绍简历上的项目详细介绍问家乡在哪,职业规划,是否对京东了解总结本次面试更是快的令人吃惊,毫无技术问题。面试后半小时转为HR面了,许愿许愿!!!...

2021-04-17 09:46:33 1220

原创 京东 京东健康一面 18分钟电话面试

前言电话面试总面试时长:18分钟技术问题:4个记录自我介绍Java并发了解哪些?(从volatile,synchronized底层到J.U.C下面分别有哪些都讲了,面试官说可以了)JVM层面垃圾回收相关了解哪些?(从垃圾手机算法到各版本垃圾收集器的讲解)Java面向对象思想是什么?什么是多态?(继承封装多态,静态分派和动态分派的讲解)C可以多继承,Java怎么实现呢?(使用合成聚合复用达到此目的)说一说自己的优点和缺点?问在北京实习可以吗?然后有哪些问题要问? (没问题,实习做哪

2021-04-14 22:16:27 1001

原创 腾讯IEG JAVA后台实习生 一面

面试时长:50分钟开始无自我介绍,直接开始项目讲一下 (讲了下流程和设计数据库流程)是否使用使用索引,讲一下(扩展出B+树,B-树,哈希索引)是否做过数据库拆分(做过逻辑拆分)redis讲一下(讲自己的使用)网络原理方面(做过NIO聊天室,扩展出select,poll,epoll函数)数据结构方面讲一下 (哈希表(扩展出hashmap的底层),数组,链表比较)口述算法:一个数组里面有一半及以上数是相同的,怎么找?多线程并发方面 (讲了synchronized和Reentran.

2021-03-25 20:12:17 271

原创 腾讯PCG 腾讯看点部门JAVA后台实习生 一面

前言视频面试总时长一小时面试自我介绍项目介绍 --(衍生出以下)-- >>选择什么数据库?为什么用MySQL8.0?使用的索引数据结构?讲述一下选择该索引的原理和理由?最左匹配原则的底层实现原理?建立索引后整个数据库发生的过程?数据库数据量大了怎么办?Redis底层原理了解哪些?说一说Strings这种基本类型的原理实现?其他相关底层?用的Nginx还是tomcat? 说一下tomcat的底层原理实现? tomcat的架构设计?你的项目接口性能测试做得怎么样?

2021-03-18 09:52:59 786 1

原创 阿里巴巴CTO事业群 春招JAVA实习岗位一面 总时长两个半小时

前言本人双非本科,投递阿里巴巴(CTO)国际贸易部门春招JAVA实习生岗位,一面记录本次面试总时长:两个半小时!!!电话面试面试内容自我介绍 – 几分钟项目介绍(中间穿插各种问题,例如如何设计,如何解决,如何提升该项目等等) – 二三十分钟JVM minor GC和 Full GC 区别和理解关于年轻代和老年代GC调优 (不会,从自己的理解上回答了可以从年轻代过渡到老年代的调优方案)垃圾收集器有哪些,分别是做什么的?对多态底层的理解? (没接触过,面试官说这是编译原理的知识,我说我

2021-03-14 17:28:55 449

原创 2020 - 2021个人年度总结

前言今天是2021年的1月1日,由我对我自己的2020做一个简单的回顾和总结。并对2021年做一些小小的计划。回顾一年前正是疫情开始的时候,自己在家中度过了整整八个月。在家中自己很多时候都是在玩儿,有幸的是自己当时能有一点点觉悟,在此期间坚持把并发编程、JVM基础知识、设计模式这些书都看了一遍,坚持每天早上刷一至两小时的算法题(初次接触力扣的时候很多时候都是抄题解,想不出来鸭!),并且在二月底到四月份期间做了一个SSM以及它SpringBoot版本的项目(顺便用来交了这学期的WEB期末答辩作业.

2021-01-01 21:13:30 809 6

转载 Web开发安全相关问题

(1)XSS跨站脚本攻击:XSS (Cross-Site Scripting)跨站脚本攻击是一种常见的安全漏洞,恶意攻击者在用户提交的数据中加入一些代码,将代码嵌入到了Web页面中,从而可以盗取用户资料,控制用户行为或者破坏页面结构和样式等。为了和 CSS 区分,这里把攻击的第一个字母改成了 X,于是叫做 XSS。最简单的就是当我们提交一个查询后弹出一个alert页面,却无论如何都关不掉,这就是发生了XSS跨站脚本攻击。XSS产生原因:XSS产生的原因是过于信任客户端的数据,没有做好过滤或者转义等

2020-10-19 16:58:19 341 1

原创 网络协议知识小结(一)

OSI七层协议模型?OSI七层模型包括应用层,表示层,会话层,传输层,网络层,数据链路层以及物理层应用层 : 由用户自己规定,规定各个应用之间消息传递的形式等,包括各机互访协议,分布式数据库协议等。常见的应用层协议有HTTP协议和FTP等表示层 : 在满足用户需求的基础上,尽可能的节省传输费用而设置的,比如传输压缩文件,jpeg或者加密文件等格式会话层 : 用于建立和拆除会话传输层 : 负责将来自会话层的消息传递给网络层,常见的传输层协议有TCP和UDP等协议网络层 : 规定通信网内的路由选

2020-10-18 16:19:26 411

原创 HashMap,Hashtable,ConcurrentHashMap 相关问题小结

HashMap和Hashtable的区别有哪些?HashMap没有考虑同步,是线程不安全的;Hashtable使用了synchronized关键字,是线程安全的HashMap允许null作为Key;Hashtable不允许null作为Key,Hashtable的value也不可以为nullHashMap是线程不安全的是吧?你可以举一个例子吗?HashMap线程不安全主要是考虑到了多线程环境下进行扩容可能会出现HashMap死循环Hashtable线程安全是由于其内部实现在put和remove

2020-09-25 15:15:10 227

原创 Spring小结

Spring知识点小结Spring?Spring是一个开源框架,它由Rod Johnson创建,是为解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益(1)目的:解决企业应用开发的复杂性(2)功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能(3)范围:任何Java应用(4)简单来说,S

2020-09-08 23:18:59 220

原创 网络与WEB基础小结

网络与WEB服务器返回给客户端 http 响应包的状态码有哪几大类?302、304 分别是什么意思?状态码分为五大类:信息性状态码(Informational),表示请求已被接受,需要继续处理。码值范围:1xx成功状态码(Success),表示请求已成功被服务器接收、理解、并接受。码值范围:2xx重定向状态码 (Redirection) ,表示需要客户端采取进一步的操作才能完成请求。码值范围:3xx客户端错误状态码 (Client Error),表示请求语法错误或者请求无法完成。码值范围:4

2020-09-08 14:35:23 207

原创 redis基础内容总结

redis" Redis 是一个开源(BSD 许可)的、内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如字符串(strings),散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询,bitmaps, hyperloglogs 和地理空间(geospatial)索引半径查询。 Redis 内置了 复制(replication),LUA 脚本(Lua scripting),LRU 驱动事件(LRU evi

2020-09-07 19:59:37 205

原创 MySQL进阶小结

MySQL进阶分析一下 select * from t_employee t where t.age=27 and t.name = ‘李四’ 这条语句在 mysql 中如何执行的?在连接器上进行权限检查。首先在连接器如果没有权限,直接返回错误信息;如果有权限,在 MySQL8.0 版本以前,会先查询缓存,以这条 sql 语句为 key 在内存中查询是否有结果,如果有直接缓存,如果没有,执行下一步在分析器上进行词法分析和语法分析。词法分析会提取 sql 语句的关键元素 select,提取需要查

2020-09-07 16:19:12 321

原创 MySQL锁

事务是什么?事务(Transaction)是并发控制的基本单位。所谓的事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。事务是数据库维护数据一致性的单位,在每个事务结束时,都能保持数据一致性事务有哪些特性?原子性(Atomicity):事务是一个不可分割的单位,事务中的所有SQL等操作要么都发生,要么都不发生一致性(Consistency):事务发生前和发生后,数据的完整性必须保持一致隔离性(Isolation):当并发访问数据库时,一个正在执行

2020-09-06 16:37:21 160

原创 MySQL索引知识总结

MySQL ( 目前最流行的关系型数据库管理系统 )什么是索引?MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构,可以帮助我们快速的进行数据的查找索引是什么样的数据结构?索引的数据结构跟存储引擎有关,在MySql中使用较多的索引有B+数索引和哈希索引,我们常用的MYISAM和InnoDB存储引擎的默认索引实现为:B+树索引Hash索引和B+树索引有什么区别或者说优劣呢?首先要知道Hash索引

2020-09-05 14:20:55 230

原创 队列知识总结

栈(Stack)和队列(Queue)的相同点和不同点是什么?如何用两个栈实现队列(入队和出队)?相同点:栈和队列都属于线性表栈和队列插入操作都是限定在线性表的头尾进行栈和队列插入和删除的时间复杂度是O(1)不同点:特性不同,栈先进后出 (LIFO,Last In First Out) ;队列先进先出 (FIFO,First In First Out)栈知识表的一端进行插入和删除操作,队列是在表的一端插入,另一端删除Java的栈(Stack)继承自 Vector,再往上的接口是

2020-09-04 14:54:03 534

原创 JavaIO基础总结

IO基础什么是流?作用是什么?流是一种有顺序的,有起点和终点的字节集合,是对数据传输的总成或抽象。即数据在两设备之间的传输称之为流,流的本质是数据传输,根据数据传输的特性讲流抽象为各种类,方便更直观的进行数据操作。字符流和字节流的区别是区别是什么?字符流的由来:因为数据编码的不同,而有了对字符进行高效操作的流对象,其本质就是基于字节流读取时,去查了指定的码表。字符流和字节流的区别:读写单位不同:字节流一字节(8bit)为单位,字符流以字符为单位,根据码表映射字符,一次可能读多个字

2020-09-03 21:48:58 469

原创 线程与线程池重点知识总结

Java中线程有哪些状态?六种状态:初始状态 (NEW) :尚未启动的线程处于此状态。通常是新创建了线程,但还没有调用 start () 方法运行状态(RUNNABLE):Java 线程中将就绪(ready)和运行中(running)两种状态笼统的称为 “运行中”。比如说线程在运行线程池中,等待被调度选中,获取 CPU 的使用权,此时处于就绪状态(ready)。就绪状态的线程在获得 CPU 时间片后变为运行中状态(running)阻塞状态 (BLOCKED):表示线程阻塞于锁等待状态 (WAIT

2020-09-02 15:05:50 194

原创 锁与并发重点知识总结

什么是线程死锁?死锁产生的条件是什么?如何避免死锁?什么是线程死锁?死锁是指两个或两个以上的进程(线程)在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁。死锁产生的条件是什么?互斥条件 :该资源任意一个时刻只由一个线程占有请求与保持条件 : 一个线程/进程因请求资源时对已经获得的资源保持不放不剥夺条件 : 线程/进程已经获得的资源在未使用之前不能被其他线程/进程强行剥夺 (只有自己使用完毕主

2020-09-02 10:25:58 255

原创 NIO学习

NIO学习姓名 :Non-blocking I/O 或 New I/O出生: JDK 1.4职务: 高并发网络服务器支持岗NIO网络模型 :NIO核心 :Channel : 通道Buffer : 缓冲区Selector : 选择器或多路复用器Channel 简介双向性非阻塞性操作唯一性Channel 实现文件类 : FileChannelUDP类 ...

2020-05-02 15:04:58 198

原创 学习HashMap源码后总结

图解HashMap数据结构 :图解说明:源码分析:

2020-04-14 18:12:13 167

原创 SpringBoot后台返回前端后字符串中文乱码

直击解决方案:在SpringBoot项目中的自定义MVC配置类中进行修改 (我自己实现的 MVC配置类是: MvcConfiguration ,继承了 WebMvcConfigurer, ApplicationContextAware,关系到中文乱码的是 WebMvcConfigurer 这个类下面的 StringHttpMessageConverter在 MvcConfiguration...

2020-03-30 23:22:49 2050

转载 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

Mysql 设置密码时提示有关密码安全问题:转自:点我加载

2020-03-17 20:59:28 113

空空如也

空空如也

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

TA关注的人

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