代码改变世界

随笔分类 -  Java

Java 读写 excel 实战完全解析

2021-03-15 23:16 by GarfieldEr007, 1478 阅读, 收藏, 编辑
摘要: 背景 时值毕业季,很多毕业生初入职场。 因此,这边也写了一些新手相关的 Android 技术点。 比如上一篇的 Android 开发你需要了解的那些事 就是列举了一些小点,避免新手 Android 开发者踩坑。 同时,也是恰逢暑假,因此大学生处于放假阶段。 这一篇主要是来自一位大学生的提问。 因此这 阅读全文

Java读取批量Excel文件,并转化为List<Map<String,String>>

2021-03-15 23:14 by GarfieldEr007, 1549 阅读, 收藏, 编辑
摘要: 1.首先基础知识:一 :简介 开发中经常会设计到excel的处理,如导出Excel,导入Excel到数据库中,操作Excel目前有两个框架,一个是apache 的poi, 另一个是 Java Excel Apache POI 简介是用Java编写的免费开源的跨平台的 Java API,Apache 阅读全文

Guava集合工具

2019-08-15 12:42 by GarfieldEr007, 473 阅读, 收藏, 编辑
摘要: JDK提供了一系列集合类,如下所示,极大的方便了开发工作,并针对这些类提供了一个工具类java.util.Collections,Guava在此基础上添加了一些常用工具类方法,相比于java.util.Collections集合类,Guava使用起来更方便快捷。本文主要介绍Guava集合工具类中Li 阅读全文

伪共享和缓存行

2019-02-18 22:39 by GarfieldEr007, 328 阅读, 收藏, 编辑
摘要: 在计算机系统中,内存是以缓存行为单位存储的,一个缓存行存储字节的数量为2的倍数,在不同的机器上,缓存行大小为32字节到256字节不等,通常来说为64字节。伪共享指的是在多个线程同时读写同一个缓存行的不同变量的时候,尽管这些变量之间没有任何关系,但是在多个线程之间仍然需要同步,从而导致性能下降的情况。 阅读全文

request.getParameter(“xxx”)的参数的取值

2019-01-07 21:09 by GarfieldEr007, 490 阅读, 收藏, 编辑
摘要: request.getParameter(“xxx”)的参数的取值的几种可能: 1. Html中form表单中标签的name属性: <form name="form" method="post" action="checkUser"> 请输入用户姓名:<input type="text" name= 阅读全文

Request的getParameter和getAttribute方法的区别

2019-01-07 21:08 by GarfieldEr007, 243 阅读, 收藏, 编辑
摘要: HttpServletRequest.getParameter("modelName"); 能取到想要的modelObject吗?经过测试之后,发现是不能的。后来想想,其他道理挺简单的,当两个Web组件之间为转发关系时,转发源会将要共享 request范围内的数据先用setAttribute将数据放 阅读全文

request.getParameter() 和request.getAttribute() 区别

2019-01-07 21:07 by GarfieldEr007, 275 阅读, 收藏, 编辑
摘要: getParameter 是用来接受用post个get方法传递过来的参数的.getAttribute 必须先setAttribute.(1)request.getParameter() 取得是通过容器的实现来取得通过类似post,get等方式传入的数据,request.setAttribute()和 阅读全文

Java并发编程:线程池的使用

2019-01-06 23:07 by GarfieldEr007, 196 阅读, 收藏, 编辑
摘要: 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是执行完一个任务 阅读全文

Java并发(理论知识)—— 线程安全性

2019-01-06 23:06 by GarfieldEr007, 283 阅读, 收藏, 编辑
摘要: 1、什么是线程安全性 当多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些进程将如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类都能表现出正确的行为,那么就称这个类是线程安全的。 在线程安全类中封装了必要的同步机制,因此客户端无需进一步采取同步错失。 2、原子性 要编写线程 阅读全文

java线程安全之并发Queue

2019-01-06 23:05 by GarfieldEr007, 652 阅读, 收藏, 编辑
摘要: 关闭 关闭 原 java线程安全之并发Queue(十三) 2017年11月19日 23:40:23 小彬彬~ 阅读数:12092更多 所属专栏: 线程安全 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33524158/article/det 阅读全文

一篇文章看懂Java并发和线程安全

2019-01-06 23:04 by GarfieldEr007, 390 阅读, 收藏, 编辑
摘要: 一、前言 长久以来,一直想剖析一下Java线程安全的本质,但是苦于有些微观的点想不明白,便搁置了下来,前段时间慢慢想明白了,便把所有的点串联起来,趁着思路清晰,整理成这样一篇文章。 二、导读 1、为什么有多线程? 2、线程安全描述的本质问题是什么? 3、Java内存模型(JMM)数据可见性问题、指令 阅读全文

java并发之如何解决线程安全问题

2019-01-06 23:03 by GarfieldEr007, 399 阅读, 收藏, 编辑
摘要: 并发(concurrency)一个并不陌生的词,简单来说,就是cpu在同一时刻执行多个任务。 而Java并发则由多线程实现的。 在jvm的世界里,线程就像不相干的平行空间,串行在虚拟机中。(当然这是比较笼统的说法,线程之间是可以交互的,他们也不一定是串行。) 多线程的存在就是压榨cpu,提高程序性能 阅读全文

Java并发/多线程系列——线程安全篇(1)

2019-01-06 23:01 by GarfieldEr007, 276 阅读, 收藏, 编辑
摘要: 创建和启动Java线程 Java线程是个对象,和其他任何的Java对象一样。线程是类的实例java.lang.Thread,或该类的子类的实例。除了对象之外,java线程还可以执行代码。 创建和启动线程 在Java中创建一个线程是这样完成的: 要启动Java线程,您将调用其start()方法,如下所 阅读全文

当面试官问线程池时,你应该知道些什么?

2019-01-06 22:56 by GarfieldEr007, 441 阅读, 收藏, 编辑
摘要: Java面试中,线程池也算是一个高频的问题,其实就JDK源码来看线程池这一块的实现代码应该算是写的清晰易懂的,通过这篇文章,我们就来盘点一下线程池的知识点。 本文基于JDK1.8源码进行分析 首先看下线程池构造函数: public ThreadPoolExecutor(int corePoolSiz 阅读全文

java 线程池 使用实例

2019-01-06 22:53 by GarfieldEr007, 10028 阅读, 收藏, 编辑
摘要: 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是执行完一个任务 阅读全文

多线程-Executors和Executor,线程池

2019-01-06 22:49 by GarfieldEr007, 335 阅读, 收藏, 编辑
摘要: jdk1.5之前,所有的线程都是需要自己手动创建的,由jvm销毁,当请求过多的时候,频繁的创建和销毁线程是非常浪费资源的。jdk1.5为此做了优化,提供了 java.util.concurrent 包,该包下有个 Executor 接口,官方解释为: 执行已提交的 Runnable 任务的对象。此接 阅读全文

从阿里Java开发手册学习线程池的正确创建方法

2019-01-06 22:48 by GarfieldEr007, 2804 阅读, 收藏, 编辑
摘要: 前言 最近看阿里的 Java开发手册,上面有线程池的一个建议: 【强制】线程池不允许使用 Executors 去创建,而是通过 ThreadPoolExecutor 的方式,这样的处理方式让写的同学更加明确线程池的运行规则,规避资源耗尽的风险。 结合最近面试的经历,发现这条建议还是十分有用的,因为自 阅读全文

什么时候使用CountDownLatch

2019-01-05 19:16 by GarfieldEr007, 271 阅读, 收藏, 编辑
摘要: 本文由 ImportNew - 张涛 翻译自 howtodoinjava。欢迎加入翻译小组。转载请见文末要求。 正如每个Java文档所描述的那样,CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程的操作执行完后再执行。在Java并发中,countdownlatc 阅读全文

CountDownLatch使用场景及分析

2019-01-05 19:08 by GarfieldEr007, 360 阅读, 收藏, 编辑
摘要: JDk1.5提供了一个非常有用的包,Concurrent包,这个包主要用来操作一些并发操作,提供一些并发类,可以方便在项目当中傻瓜式应用。 JDK1.5以前,使用并发操作,都是通过Thread,Runnable来操作多线程;但是在JDK1.5之后,提供了非常方便的线程池(ThreadExecutor 阅读全文

Java并发编程:CountDownLatch、CyclicBarrier和 Semaphore

2019-01-05 19:07 by GarfieldEr007, 139 阅读, 收藏, 编辑
摘要: 原文出处: 海子 在java 1.5中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDownLatch,CyclicBarrier和Semaphore,今天我们就来学习一下这三个辅助类的用法。 以下是本文目录大纲: 一.CountDownLatch用法 二.CyclicBarri 阅读全文
1 2 3 4 5 ··· 12 下一页
点击右上角即可分享
微信分享提示