
java
亮すliang
这个作者很懒,什么都没留下…
展开
-
ConnectionKeepAliveStrategy解析
彻底掌握网络通信(七)ConnectionReuseStrategy,ConnectionKeepAliveStrategy解析转载 2021-10-25 20:28:41 · 934 阅读 · 0 评论 -
ThreadLocal内存泄漏
ThreadLocal原理ThreadLocal并不是一个Thread,其内部有一个静态内部类ThreadLocalMap,而每一个 Thread 里都有一个 ThreadLocal.ThreadLocalMap 这样的类型变量,该变量的名字叫作 threadLocals,当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本。即同一个 ThreadLocal 所包含的对象,在不同的原创 2021-10-22 21:18:04 · 172 阅读 · 0 评论 -
ForkJoinPool使用时的一些问题
ForkJoinPool使用时的一些问题1、ForkJoinPool的简单使用2、awaitTermination(int num,TimeUnit)3、 控制ForkJoinPool中的子线程与主线程之间的执行顺序1、ForkJoinPool的简单使用下面展示ForkJoinPool与parallelStream的常用方法。List<Integer> list = new ArrayList<>();for(int i = 0; i < 1000; i++) { l原创 2021-10-19 22:42:15 · 2772 阅读 · 0 评论 -
HttpClient RestTemplate上传多个文件携带参数
服务器接收到前端发送的上传文件请求后,需要将文件数据转发给其他服务器//Controller层/*** @Param url 目标服务器* @Param params 请求携带的参数* @Parma multipartFiles 上传的文件*/@PostMapping("/upload/{url}")public JSONObject uploadPostRoute(@PathVariable("url") String url, @RequestParam("file") Multi原创 2021-10-10 19:06:34 · 1292 阅读 · 1 评论 -
CPU 的分支预测
如下这样一个简单的代码:相信大家都能看懂。这段代码对data数组中所有大于等于128的值进行求和。这样的求和操作运行了 10 万轮。下面,我们来看一下这段代码的性能。我们这样随机生成一个数组:使用这个随机生成的数组,测试上面的代码。在我的计算机上,整体耗时是8.5 秒左右。下面问题来了。如果,我对这个随机的数组进行一遍排序。对排序后的数组执行上面的代码,性能会有怎样的影响?可能很多同学都会认为,性能是差不多的。...转载 2020-10-07 12:40:50 · 2546 阅读 · 1 评论 -
最全SpringBoot注解(整合+详解)
使用注解的优势: 1.采用纯java代码,不在需要配置繁杂的xml文件 2.在配置中也可享受面向对象带来的好处 3.类型安全对重构可以提供良好的支持 4.减少复杂配置文件的同时亦能享受到springIoC容器提供的功能一、注解详解(配备了完善的释义)@SpringBootApplication:申明让spring boot自动给程序进行必要的配置,这个配置等同于:@Configuration,@EnableAutoConfiguration...转载 2020-10-05 11:59:17 · 266 阅读 · 0 评论 -
Spring Boot核心原理实现及核心注解类
以下文章来源于搜狐技术产品,作者朱智胜,原文链接不详1.前言Spring Boot 最核心的功能就是“自动配置”,这一切都基于“约定优于配置”的原则。那么 Spring Boot 是如何约定,又是如何实现自动配置功能的呢?下面带大家来通过源码学习 Spring Boot 的核心运作原理以及最核心的注解@EnableAutoConfiguration来进行讲解。1.1.核心运行原理使用 Spring Boot 时我们只需引入对应的 Starters,Spring Boot 启动时便自会..转载 2020-10-03 12:30:33 · 502 阅读 · 0 评论 -
switch case 当default在中间时,输出是什么?
看下面代码,当default在中间时,输出是什么?public static void main(String[] args) { //当default在中间时,且看输出是什么? int a = 1; switch (a) { case 2: System.out.println("print 2"); case 1: System.out.println("print 1"); default: Sys原创 2020-09-28 20:39:22 · 2950 阅读 · 0 评论