
java
Lsy_Benjamin
自己努力做好就行
展开
-
logback控制台输出导致进程假死
记一次线上logback日志的问题,微服务调用时客户端调用服务端超时, 检查线上机器后发现机器没有什么问题,GC也正常,于是使用jstack排查一下 线程堆栈信息 发现大量日志打印线程处于waiting状态 再查找wait d3a0结尾的那个资源,看是那个线程正在占用,发现是控制台输出 网上查询后,最终解决方案是日志不往控制台输出,但是里面具体的原因还有待探究 ...原创 2019-12-24 16:24:44 · 3115 阅读 · 0 评论 -
java设计模式学习-适配器模式
http://haolloyin.blog.51cto.com/1177454/346128 适配器模式(Adapter):将一个类的接口转换成客户希望的另外一个接口。A d a p t e r 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 适用场景: 1、已经存在的类的接口不符合我们的需求; 2、创建一个可以复用的类,使得该类转载 2017-03-17 17:01:16 · 277 阅读 · 0 评论 -
java设计模式学习 (1)命令模式
java设计模式学习 (1)命令模式命令模式–在许多设计中,经常涉及到一个对象请求另一个对象调用其方法达到某种目的,如果请求者不希望或无法直接和被请求者打交道,即不希望或无法含有被请求者的引用,这时就可以使用命令模式。 结构中包括4个角色: 接收者(Receiver):是一个类的实例,负责执行与请求相关的操作. 命令(Command)接口: 一个接口,规定用来封装“”请原创 2017-03-09 20:05:35 · 278 阅读 · 0 评论 -
百度面试题--度度熊想去商场买一顶帽子,商场里有N顶帽子,有些帽子的价格可能相同,度度熊想买一顶价格第三便宜的帽子,问第三便宜的帽子价格是多少?
第一种方法:可以使用LIst 进行每次加入时进行判断是否包含,将重复的数据不再加入List中 最后再找出List中第三便宜的帽子,若list的size小于3输出-1; 特点:每次加入数据都要进行判断是否包含,最后也需要排序或者其他方法找出第三便宜。 第二种方法 :将所有的数据保存在一个数组中,对数组进行快排, 遍历数组后一位是否比前一位大 如果大把代表第几便宜的标志位进行自增原创 2017-10-30 20:02:51 · 2623 阅读 · 0 评论 -
百度面试题 度度熊回家
时间限制:1秒 空间限制:32768K 一个数轴上共有N个点,第一个点的坐标是度度熊现在位置,第N-1个点是度度熊的家。现在他需要依次的从0号坐标走到N-1号坐标。 但是除了0号坐标和N-1号坐标,他可以在其余的N-2个坐标中选出一个点,并直接将这个点忽略掉,问度度熊回家至少走多少距离? 输入描述: 输入一个正整数N, N <= 50。 接下来N个整数表示坐标,正数表示X轴的正原创 2017-11-01 11:29:54 · 470 阅读 · 0 评论 -
Lombok常用注解 详解
原文地址:原文链接lombok注解介绍lombok注解文档 lombok官网下载lombok是一个可以帮助我们简化java代码编写的工具类,尤其是简化javabean的编写,即通过采用注解的方式,消除代码中的构造方法,getter/setter等代码,使我们写的类更加简洁,当然,这带来的副作用就是不易阅读…不过,还是能看得懂吧,废话不多说,先看一下lombok支持的一些常见的注解。@NonNull...转载 2018-05-11 11:12:55 · 540 阅读 · 0 评论 -
List遍历remove的那些事
在工作中经常写代码时会遇到遍历list并且过滤的一些逻辑,现在来看一下不同的遍历的优劣: case在50000的范围内过滤3和7的倍数 先看一个案例 这个是以7为倍数,看结果大家可能以为过滤没问题,大家其实别被表象误导,其实遍历到49的时候就会出现错误(7*7=49),只是此时可能没看出来,来一个比较明显的:加一个条件再过滤3的呢。 可以看到7为倍数的数字没被过滤,而这个就是...原创 2018-08-21 17:57:26 · 2613 阅读 · 0 评论