![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 50
Softnothings
收藏从未停止,学习从未开始
展开
-
JAVA实现节假日维护
java实现节假日维护原创 2022-08-25 20:39:29 · 1039 阅读 · 1 评论 -
Java实现doc转docx
jacob这个包可以实现此功能jacob-1.19-x86.dll jacob-1.19-x86.dll这两个文件放到system32下或者java的jre的bin目录下public static String convertDocx(String filePath,String descPath) { ComThread.InitMTA(); ActiveXcomponent app = new ActiveXcomponent("Word.Application");原创 2022-02-17 14:56:12 · 4466 阅读 · 0 评论 -
Eclipse的使用配置
Eclipse的使用前言:使用习惯了IDEA,突然换成eclipse是真的不习惯,但是公司要求必须使用eclipse开发,idea未授权不能商用是真的裂开。这里废话不多说先设置下eclipse让开发更流畅一点。1.eclipse配置maven开发中maven作为依赖管理工具必不可少,eclipse也支持了maven的配置,Windows->preferences,修改自己的maven Setting.xml2.eclipse配置tomcat1.windows->preference原创 2021-03-15 15:41:23 · 198 阅读 · 1 评论 -
乱码问题产生原因
原创 2021-02-20 15:27:21 · 142 阅读 · 0 评论 -
HashMap
HashMap是基于哈希表(散列表),实现Map接口的双列集合,数据结构是“链表散列”,也就是数组+链表 ,key唯一的value可以重复,允许存储null 键null 值,元素无序。初始化hashMap继承了abstractMap,实现了Map接口。当new一个hashMap时在堆内存中开辟了一块空间,构造方法中初始化了负载因为0.75f,初始化完成,成员变量table数组默认为null,size默认为0;负载因子0.75f。put(K,V)方法首先会调用putVal()方法,putVa原创 2021-02-04 10:56:54 · 89 阅读 · 1 评论 -
JVM内存模型小记
jvm内存模型根据JVM规范,JVM 内存共分为虚拟机栈,堆,方法区,程序计数器,本地方法栈五个部分。程序计数器(线程私有):是当前线程锁执行字节码的行号治时期,每条线程都有一个独立的程序计数器,这类内存也称为“线程私有”的内存。正在执行java方法的话,计数器记录的是虚拟机字节码指令的地址(当前指令的地址)。如果是Natice方法,则为空。java 虚拟机栈(线程私有):每个方法在执行的时候会创建一个栈帧,存储了局部变量,操作数,动态链接,方法返回地址。每个方法从调用到执行完毕,对应一个栈帧原创 2021-02-04 10:12:59 · 92 阅读 · 0 评论 -
Lambda表达式 实现 java list 交集 并集 差集 去重复并集
Lambda表达式 实现 java list 交集 并集 差集 去重复并集javaList 交、并集采用简单的 removeAll retainAll 等操作,不过这也破坏了原始的javaList对象,采用java8 lambda表达式流操作则可以不影响原始list对象而得到两个javaList对象的 交、并、差集。1. 简单两个List 交、并、差集import java.util.ArrayList;import java.util.HashSet;import java.util.List原创 2021-02-03 15:39:30 · 272 阅读 · 0 评论 -
阶段小结(一)
1.redis的类型了解吗?String:key-value redis命令不区分大小写,但是key区分的,redis中的数据都是字符串Hash: key-field-value 相当于一个key 对应一个map (map中又是key- value)List: List是有顺序可重复(数据结构中的:双链表,队列),可作为链表 ,从左添加元素 也可以从右添加元素。 redis的list类型其实就是一个每个元素都是string类型的双向链表。 所以lpush、rpush、l原创 2021-02-01 14:25:12 · 267 阅读 · 0 评论 -
Java线程通信--假死问题
死锁和阻塞的区别:死锁:是由于两个对象在拥有一份资源的情况下申请另一份资源,而另一份资源恰好又是这两个对象所持有的,导致两个对象无法完成操作,且所持资源无法释放。阻塞:是由于资源不足引起的排队等待的现象。“假死”的现象就是全部线程都进入了WAITING状态(死锁),则程序就不再执行任何业务功能了,整个项目呈停止状态。这里以常见的生产者消费者模型分析:import lombok.SneakyThrows;public class ProduceConsumerSync { //定义变量原创 2021-01-29 12:42:13 · 1358 阅读 · 0 评论