学习笔记
Valhalla6416
这个作者很懒,什么都没留下…
展开
-
基于POI的wod模板文件,导入参数,导出最终文件
最近工作上碰到了这个问题,就研究了一下。结合了网上几位大哥的成果,我自己又优化了一下。除了基础的导入参数之外,还优化了参数识别能力,添加了页面复制能力,并且保留了样式。下面是我测试的word模板:你好,现在是${time} ,我是${userName} 。表格1 ##{foreachTable}## table1 序号...原创 2020-01-14 16:38:01 · 442 阅读 · 0 评论 -
java中集合的学习与总结
集合与数组:数组:长度固定,可以存储基本类型。集合:长度可变,不能存储基本类型(只能存储对象)。 集合类框架图: Collection接口是集合类的根接口,Java中没有提供这个接口的直接的实现类。但是却让其被继承产生了两个接口,就是Set和List。Set中不能包含重复的元素。List是一个有序的集合,可以包含重复的元素,提供了按索引访问的方式。Map是Java.util包中的另一个接口,它和C...转载 2018-04-18 16:02:21 · 167 阅读 · 0 评论 -
Volatile和synchronized
多线程为什么会发生问题: 如下图所示,不同线程运行在不同的cpu或cpu核心中,在cpu和主存之间,还存在一层缓存,因此cpu在读取一个变量时,会先读取到缓存,再进入cpu的寄存器,写入时也是如此,会先进入缓存,再写入主存。这样就会导致不同线程之间的冲突了。 两者在内存中的表现Volatile: 被Volatile修饰的变量,会越过缓存,cpu的读写操作直接刷到主存(通过memory ...原创 2018-04-19 16:28:22 · 163 阅读 · 0 评论 -
jvm内存学习
Jvm学习一、Jvm内存划分Jvm内存主要划分为以下几个模块二、程序计数器(Program Counter Register)程序计数器是线程私有的,每一个线程有一个。与cpu中的pc寄存器相似,用来只是当前的线程执行到了字节码的哪一行。当jvm当前执行的是一个java方法,则程序计数器记录的是当前放的字节码地址;如果执行的是一个本地方法,则程序计数器存放的是Unde...原创 2018-05-17 14:44:29 · 213 阅读 · 0 评论 -
linux(Centos 7) 常用命令:端口开放,开机自启动,进程查询,RPM安装
记录一些redhat系列的centos系统中常用的命令端口开放:# 开放端口3306firewall-cmd --zone=public --add-port=3306/tcp --permanent# 重载防火墙firewall-cmd --reload# 查看端口3306是否开放firewall-cmd --zone --query-port=3306/tcp...原创 2019-04-22 17:39:25 · 703 阅读 · 0 评论 -
java集合类之List
类图:图片来自:https://www.cnblogs.com/paddix/p/5539326.html1.ArraylList(1)定义public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, ...原创 2019-04-28 15:39:50 · 189 阅读 · 0 评论 -
JAVA线程池的学习
JAVA线程池为什么会有线程池JAVA线程与系统线程的映射方式 多对一映射,多个线程被认为一个系统核心线程,由系统调度,这多个线程在jvm内部进行调度,避免使用系统资源进行调度,快速而又安全。 一对一映射,在cpu多核时代,上面的模式显然只能同时使用一个cpu核心,于是出现了一个java线程对应一个系统核心线程的方案。这样可以发挥多核的作用,不同线程运行在不同的核心上,但缺点是...原创 2019-09-17 15:25:43 · 199 阅读 · 0 评论