![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
基础
文章平均质量分 63
懵懵懂懂程序员
编程上不断摸爬打滚的程序员! 相信美好的一切即将发生,一切问题都能解决。
展开
-
异步编程CompletableFuture(2021.12.28)
异步(并发)编程CompletableFuture (2021-12-28)1.0 ExecutorService的submit()说明先进行介绍为什么需要学习CompletableFuture。以往我们需要获取到线程异步执行结果都是调用的submit()方法, 其方法有3个。Future<?> submit(Runnable task); 、 <T> Future<T> submit(Runnable task, T result);<T> Fu原创 2021-12-28 18:38:52 · 344 阅读 · 0 评论 -
CyclicBarrier 让所有线程等待命令在继续执行
CyclicBarrier 让所有线程等待命令在继续执行字面意思回环栅栏,通过它可以实现让一组线程等待至某个状态之后再全部同时执行。叫做回环是因为当所有等待线程都被释放以后,CyclicBarrier可以被重用。我们暂且把这个状态就叫做barrier,当调用await()方法之后,线程就处于barrier了。CyclicBarrier类位于java.util.concurrent包下,CyclicBarrier提供2个构造器:public CyclicBarrier(int parties, Ru原创 2021-06-08 10:39:38 · 406 阅读 · 0 评论 -
CountDownLatch 等待所有线程执行完毕
CountDownLatch 等待所有线程执行完毕CountDownLatch类位于java.util.concurrent包下,利用它可以实现类似计数器的功能。比如有一个任务A,它要等待其他4个任务B执行完毕之后才能执行,此时就可以利用CountDownLatch来实现这种功能了。CountDownLatch类仅有且必需, 需要有参数的构造方法,初始化倒数次数public CountDownLatch(int count) { if (count < 0) thro原创 2021-06-04 20:46:30 · 682 阅读 · 0 评论 -
HttpClient(学习笔记)
HttpClient(学习笔记)HttpClient是Apache Jakarta Common下的子项目,用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议。HttpClient已经应用在很多的项目中,比如Apache Jakarta上很著名的另外两个开源项目Cactus和HTMLUnit都使用了HttpClient一: 依赖 &...原创 2020-02-27 23:23:22 · 361 阅读 · 0 评论 -
Stream流学习加强
集合与数组Stream流Stream流的遍历写法 public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("张无忌"); list.add("周芷若"); list.add("赵敏");...原创 2020-02-26 20:59:08 · 163 阅读 · 0 评论 -
请求流和响应流(复习笔记)
请求流和响应流一: 使用响应流进行响应文件(数据,图片都可以) @GetMapping("/test") public void getRequestMap(HttpServletRequest request, HttpServletResponse response) throws Exception { //获取响应流 ServletOutputS...原创 2020-02-26 20:56:13 · 1288 阅读 · 0 评论 -
代码动态读取配置文件属性
动态读取配置文件属性一: 使用ResourceBundle来读取(jdk提供的)ResourceBundle类是java自带的类用来读取项目中后缀为properties的配置文件。(只能读取.properties文件)配置文件名称:xxxx.properties(可将文件存放在工程的resource目录下,或者lib目录下)示例:配置文件准备: test1.properties , te...原创 2020-02-25 17:48:57 · 620 阅读 · 0 评论 -
SpringBoot中使用过滤器和拦截器(Boot项目响应乱码问题解决)
SpringBoot中使用过滤器和拦截器(boot项目响应乱码问题解决)过滤器(Filter)和拦截器(Interceptor)是Web项目中常用的两个功能!Filter:是Servlet规范提供的一种技术(接口)。作用在请求到达目标资源之前,Filter可以拦截请求进行过滤处理,然后放行,那么请求会到达目标资源;作用在响应从服务器发出之前,Filter可以进行过滤处理,然后放行,响应会到达客...原创 2019-12-18 21:42:25 · 2728 阅读 · 4 评论 -
为什么阿里巴巴要禁用Executors创建线程池
为什么阿里巴巴要禁用Executors创建线程池?看阿里巴巴开发手册并发编程这块有一条:线程池不允许使用Executors去创建,而是通过ThreadPoolExecutor的方式,通过源码分析禁用的原因写在前面首先感谢大家在盖楼的间隙阅读本篇文章,通过阅读本篇文章你将了解到:线程池的定义Executors创建线程池的几种方式ThreadPoolExecutor对象线程池执行任...转载 2019-12-02 17:19:49 · 172 阅读 · 0 评论 -
线程池复习知识点(4种常用线程池介绍)
一. 线程池简介1. 线程池的概念: 线程池就是首先创建一些线程,它们的集合称为线程池。使用线程池可以很好地提高性能,线程池在系统启动时即创建大量空闲的线程,程序将一个任务传给线程池,线程池就会启动一条线程来执行这个任务,执行结束以后,该线程并不会死亡,而是再次返回线程池中成为空闲状态,等待执行下一个任务。2. 线程池的工作机制 2.1 在线程池的编程模式下,任务...转载 2019-07-30 15:20:45 · 210 阅读 · 0 评论 -
Java 7 的那些“新”特性
数值中可使用下划线分隔符联接复制代码其中 100_000 就是读者要我解释清楚的那个特性:在数值类型的字面值中使用下划线分隔符联接。人脑不总是很善于记住很长串的数字,所以在处理长串数字时会采用分割法,比如说电话号码要用一个分隔符“-”隔开,银行卡号会每隔四位有一个空格等等。数字中没有用逗号(,)和中划线(-)作为分隔符,是因为它们可能会引发歧义,取而代之的是下划线()。这个不起眼的特性,让...转载 2019-07-29 14:14:50 · 110 阅读 · 0 评论