基础
文章平均质量分 92
uuboke
这个作者很懒,什么都没留下…
展开
-
一些名词的含义像TP50、TPS、QPS等
一、TP50、TP90、TP99、TP999TP=Top Percentile,Top百分数,是一个统计学里的术语,与平均数、中位数都是一类。TP50、TP90和TP99等指标常用于系统性能监控场景,指高于50%、90%、99%等百分线的情况。首先给出Google到的答案:The tp90 is a minimum time under which 90% of requests ...原创 2019-11-18 21:49:50 · 2932 阅读 · 0 评论 -
JDK1.8stream操作
1、distinct()public static void main(String[] args) { List<CommonConfig> commonConfigList = new ArrayList<>(10); for (int i =0;i<10;i++){ commonConfigList....原创 2019-11-08 11:23:21 · 449 阅读 · 0 评论 -
过滤器、拦截器、监听器
一、过滤器(Filter)Servlet中的过滤器Filter是实现了javax.servlet.Filter接口的服务器端程序,主要的用途是设置字符集、控制权限、控制转向、做一些业务逻辑判断等。其工作原理是,只要你在web.xml文件配置好要拦截的客户端请求,它都会帮你拦截到请求,此时你就可以对请求或响应(Request、Response)统一设置编码,简化操作;同时还可进行逻辑判断,如用户...原创 2019-10-11 21:05:01 · 127 阅读 · 0 评论 -
ThreadLocal的一些点
一、ThreadLocal 内存泄漏问题ThreadLocal的作用是提供线程内的局部变量,这种变量在线程的生命周期内起作用,减少同一个线程内多个函数或者组件之间一些公共变量的传递的复杂度。但是如果滥用ThreadLocal,就可能会导致内存泄漏。下面,我们将围绕三个方面来分析ThreadLocal内存泄漏的问题ThreadLocal实现原理 ThreadLocal为什么会内存泄漏...转载 2019-06-14 08:50:09 · 89 阅读 · 0 评论 -
SimpleDateFormat的线程安全问题与解决方案
https://www.cnblogs.com/zemliu/archive/2013/08/29/3290585.html原创 2019-06-14 08:53:08 · 79 阅读 · 0 评论 -
Java 中的 ==, equals 与 hashCode 的区别与联系
一、概述1、概念== : 该操作符生成的是一个boolean结果,它计算的是操作数的值之间的关系 equals : Object 的 实例方法,比较两个对象的content是否相同 hashCode : Object 的 native方法 , 获取对象的哈希值,用于确定该对象在哈希表中的索引位置,它实际上是一个int型整数二、关系操作符 ==1、操作数的值基本数据类型变量...转载 2019-06-04 13:41:29 · 138 阅读 · 0 评论 -
队列-线程池-ForkJoinPool
阻塞队列阻塞队列,顾名思义,首先它是一个队列,而一个阻塞队列在数据结构中所起的作用大致如下所示:当阻塞队列是空时,从队列中获取元素的操作将会被阻塞。 当阻塞队列是满时,往队列里添加元素的操作将会 被阻塞。阻塞队列有没有好的一面 不得不阻塞,你如何管理为什么需要BlockingQueue?好处是我们不需要关心什么时候需要阻塞线程,什么时候需要唤醒线程,因为这一切Bloc...原创 2019-04-25 01:07:24 · 2766 阅读 · 0 评论 -
自动装箱
1、自动拆箱和装箱会影响性能,如下面的例子:public class LongTest { public static void main(String[] args) { LonglongTest(); longlongTest(); LongLongTest(); longLongTest(); } ...原创 2019-07-23 18:24:50 · 182 阅读 · 0 评论 -
一些没有方法的功能性接口
目录1、Cloneable接口这个接口并没有包含任何方法,那么它到底有什么作用尼?2、RandomAccess接口Java ArrayList 为什么要实现 RandomAccess 接口?RandomAccess接口RandomAccess总结1、Cloneable接口这个接口并没有包含任何方法,那么它到底有什么作用尼?它决定了Object中受保护的cl...原创 2019-07-26 09:56:32 · 659 阅读 · 0 评论 -
深入理解String.intern
在 JAVA 语言中有8中基本类型和一种比较特殊的类型String。这些类型为了使他们在运行过程中速度更快,更节省内存,都提供了一种常量池的概念。常量池就类似一个JAVA系统级别提供的缓存。8种基本类型的常量池都是系统协调的,String类型的常量池比较特殊。它的主要使用方法有两种:直接使用双引号声明出来的String对象会直接存储在常量池中。如果不是用双引号声明的String对象,可以...原创 2019-09-02 15:16:48 · 232 阅读 · 0 评论 -
异常
结构图:1、java.lang.StackOverflowError:public class StackOverErrorTest { public static void main(String[] args) { stackOverErrorTest(); } private static void stackOverErrorTest(...原创 2019-05-06 09:59:13 · 835 阅读 · 0 评论 -
强引用、弱引用、软引用、虚引用
引用的架构:1、强引用当内存不足,JVM开始垃圾回收,对于强引用的对象,就算是出现OOM也不会对该对象进行回收,死都不收。强引用是我们最常见的普通对象引用,只要还有强引用指向一个对象,就能表明对象还‘活着’,垃圾收集器不会碰这中对象。在java中对常见的就是强引用,把一个对象赋给一个引用变量,这个引用变量就是一个强引用。当一个对象被强引用变量引用时,它处于可达状态,它是不可能被垃圾...原创 2019-05-05 23:23:27 · 232 阅读 · 0 评论 -
Java类的各种成员初始化顺序
参考:https://blog.csdn.net/qq_27093465/article/details/70292221class B extends A ,然后A类也就是父类里面有静态代码块,普通代码块,静态方法,静态成员变量,普通成员变量,普通方法。子类也是这样,然后继承之后,关于程序打印输出的结果。涉及到Java类的各种成员的初始化顺序。经测试,得到如下结论:执行顺序:按照下...原创 2018-07-19 13:52:56 · 822 阅读 · 1 评论 -
java8新特性
java8发布修改了很多的,比如HashMap、ConcurrentHashMap的实现都有了修改;ConcurrentHashMap在JDK8的实现已经抛弃了Segment分段锁机制,利用CAS+Synchronized来保证并发更新的安全,底层依然采用数组+链表+红黑树的存储结构。说一下java8的有点有哪些:1 速度更快2 代码更少(增加了新的语法 Lambda 表达式)3 ...原创 2018-07-14 10:10:15 · 406 阅读 · 0 评论 -
java的八大基本类型
1. Java的简单类型及其封装器类Java基本类型共有八种,基本类型可以分为三类,字符类型char,布尔类型boolean以及数值类型byte、short、int、long、float、double。数值类型又可以分为整数类型byte、short、int、long和浮点数类型float、double。JAVA中的数值类型不存在无符号的,它们的取值范围是固定的,不会随着机器硬件环境或者操作系统...原创 2018-09-04 16:30:15 · 32647 阅读 · 1 评论 -
java修饰符
Java语言提供了很多修饰符,大概分为两类: 1. 访问权限修饰符 2. 非访问权限修饰符访问权限修饰符public:共有访问。对所有的类都可见。 protected:保护型访问。对同一个包可见,对不同的包的子类可见。 default:默认访问权限。只对同一个包可见,注意对不同的包的子类不可见。 private:私有访问。只对同一个类可见,其余都不见。非访问权限修饰符s...原创 2018-09-05 15:21:34 · 102 阅读 · 0 评论 -
idea在mac上面操作的快捷键
一、Mac键盘符号和修饰键说明⌘ Command⇧Shift⌥ Option⌃ Control↩︎ Return/Enter⌫ Delete⌦ 向前删除键(Fn+Delete)↑ 上箭头↓ 下箭头← 左箭头→ 右箭头⇞ Page Up(Fn+↑)⇟ Page Down(Fn+↓)Home Fn + ←End Fn + →⇥ 右制表符(Tab键)⇤ 左制表符(S...转载 2018-09-12 13:37:20 · 2117 阅读 · 0 评论 -
Bigdecimal的计算
一、BigDecimal介绍 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或者是工程计算,在商业计算中若需要精确的计算结果则要用java.math.BigDecimal类。二...原创 2018-10-30 20:09:40 · 9189 阅读 · 0 评论 -
工具类的使用总结
1、org.apache.commons.lang.StringUtils(可以参考:https://blog.csdn.net/imHanweihu/article/details/80536361)包:org.apache.commons.lang.StringUtilsmaven: <dependency> <groupId>o...原创 2018-12-12 17:45:40 · 810 阅读 · 1 评论 -
各种类型的转换
/** * 将对象装换为map * * @param bean * @return */ public static <T> Map<String, Object> beanToMap(T bean) { Map<String, Object> map = Maps.newHashMap...原创 2019-04-12 14:52:52 · 187 阅读 · 0 评论 -
java死锁
死锁的概念:死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力干涉,那他们都将无法推进下去,如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因为争夺有限的资源而陷入死锁下面是我写的一个死锁的Demopublic class DeadLockTest { private static final String...原创 2019-04-28 23:04:44 · 103 阅读 · 0 评论 -
cookie和session
Cookie和Session详解会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不能用Session。 1.1 ...转载 2018-07-24 19:21:42 · 168 阅读 · 0 评论