Java
文章平均质量分 64
java基础
一个搬砖的农民工
逆水行舟,不进则退
展开
-
Java 基础常见面试题整理
Java基础常见面试题原创 2024-04-25 00:28:12 · 8761 阅读 · 8 评论 -
java锁介绍
java中有哪些锁?原创 2024-04-18 23:55:00 · 1337 阅读 · 0 评论 -
Synchronized和ReenTrantLock锁的区别
什么是synchronized锁、什么是reentrantLock锁,他们的区别是什么原创 2024-04-16 14:44:11 · 1380 阅读 · 0 评论 -
深入理解Java内存模型(JMM)
java内存模型包括:原子性、可见性、有序性原创 2024-04-15 21:31:44 · 1057 阅读 · 0 评论 -
Java中过滤器和拦截器区别
java中拦截器和过滤器区别是什么原创 2024-03-19 20:46:54 · 523 阅读 · 0 评论 -
深入理解ConcurrentHashMap源码解析
1.7采用segment加reentrantLock实现,而1.8采用CAS和synchronized以及volatile实现。原创 2023-12-06 01:18:18 · 1033 阅读 · 0 评论 -
深入理解CopyOnWriteArrayList源码分析
CopyOnWriteArrayList 是线程安全的ArrayList集合,适用于读多写少场景,不适合大量修改的场景,因为每次增删改都会copy一份数组出来原创 2023-12-05 23:52:27 · 830 阅读 · 0 评论 -
Java中快速失败 (fail-fast) 机制
fail-fast快速失败是什么?集合在迭代和循环遍历时为何不能进行增加、删除操作原创 2023-12-05 23:36:32 · 545 阅读 · 0 评论 -
深入理解JVM中的即时编译器(JIT)
JIT编译器在`运行时`编译字节码为`本地机器码`,从而提高程序的性能。JIT采用了多种优化技术:方法内联、逃逸分析、循环优化、死代码消除 等。原创 2023-12-05 12:07:54 · 1604 阅读 · 0 评论 -
【泛型】JAVA基础篇(三)
泛型为Java添加了类型安全性和重用性,使得代码更加灵活和可维护。这篇博客将介绍泛型的基础知识、类型擦除、通配符和泛型方法。原创 2023-11-29 00:35:47 · 1001 阅读 · 0 评论 -
ArrayList 和 HashMap 源码解析
ArrayList和HashMap源码分析原创 2023-11-29 00:05:26 · 1172 阅读 · 0 评论 -
深入理解Java AQS:从原理到源码分析
AQS是用于`实现锁和同步器`的框架。提供了`双向链表的node节点等待队列`,`可实现公平和非公平性`。`提供了state变量`,在不同的同步器中,代表了不同的含义原创 2023-11-22 00:13:53 · 1315 阅读 · 0 评论 -
深入理解Java中的引用、复制、克隆和拷贝
在Java中,引用、复制、克隆、和拷贝是编程中常见的概念。了解它们之间的区别对于有效地处理对象和数据非常重要。本文将深入探讨这些概念之间的联系和区别,帮助读者更好地理解Java中的对象操作。原创 2023-11-15 02:05:02 · 1168 阅读 · 0 评论 -
Java中 ThreadLocal 简介
本文将深入讨论Java中的ThreadLocal,它是一种线程级别的局部变量,可以在多线程环境下实现数据的隔离和共享。通过ThreadLocal,可以避免线程安全问题,提高代码的可维护性和性能。本文将介绍ThreadLocal的简介、使用示例、详解、原理和优缺点,并介绍适合使用ThreadLocal的场景。原创 2023-11-02 23:48:55 · 155 阅读 · 0 评论 -
Java 线程池规范
本博客将介绍Java线程池的规范和最佳实践,帮助开发人员正确地使用和配置线程池,以提高应用程序的性能和可靠性。原创 2023-11-02 22:25:32 · 351 阅读 · 0 评论 -
AQS 框架、JUC常见并发包 简述
AQS 是 Java 并发包中的核心部分,它提供了一个基于 FIFO(先进先出)排队的双向链表等待队列,用于管理等待线程并控制资源的获取和释放。AQS 提供了一些核心的方法供子类继承和实现。下面我们重点介绍几个常见的 AQS 实现。ReentrantLock是一种互斥锁,用于保护共享资源免受并发访问的侵害。CountDownLatch和Semaphore不是用来进行同步互斥的,CountDownLatch用来协调并行任务。原创 2023-11-02 00:30:42 · 164 阅读 · 0 评论 -
JAVA 中 Socket 和 WebSocket 区别
socket和websocket的简单介绍原创 2023-10-31 12:46:23 · 995 阅读 · 0 评论 -
Java中的三种I/O模型:BIO、NIO和AIO
Java提供了三种不同的I/O模型:AIO、BIO和NIO。以及tomcat和netty使用的是什么IO模型原创 2023-10-30 23:00:59 · 676 阅读 · 0 评论 -
钉钉API详解:实现高效办公与团队协作的利器(持续更新)
钉钉是一款功能强大的移动办公应用,为企业提供了丰富的API接口,可用于实现与钉钉平台的集成和定制开发。本篇博客将介绍钉钉API的基本概念、使用方法和常见应用场景,帮助开发者深入了解如何利用钉钉API实现高效办公和团队协作。我们将探讨如何通过钉钉API实现企业内部应用集成、消息通知、考勤管理、企业组织架构同步等功能,以及如何利用钉钉API来构建自定义的钉钉机器人。通过本文的学习,您将掌握使用钉钉API的技巧和最佳实践,为企业打造高效便捷的移动办公环境提供有力支持。原创 2023-07-21 18:16:14 · 435 阅读 · 0 评论 -
Java 字符串获取中获取${}中变量
java字符串中获取${}中变量原创 2023-06-15 17:15:50 · 2780 阅读 · 0 评论 -
BigDecimal解析-线上慎用!
一、BigDecimal概述二、BigDecimal常用构造函数2.1、常用构造函数2.2、使用问题分析三、BigDecimal常用方法详解3.1、常用方法3.2、BigDecimal大小比较四、BigDecimal格式化五、BigDecimal常见异常5.1、除法的时候出现异常六、BigDecimal总结6.1、总结6.2、工具类推荐原创 2023-04-28 15:46:10 · 374 阅读 · 1 评论 -
Java Bean 映射工具(浅复制)
javabean映射工具、beanutils如何使用、mapstruct如何使用原创 2023-04-07 15:51:24 · 4213 阅读 · 1 评论 -
二进制字节码的左移、右移、逻辑右移运算
二进制字节码的左移()、逻辑右移(>>>)运算原创 2023-03-24 00:40:15 · 1147 阅读 · 0 评论 -
史上最简单Nginx入门
也可以作为电子邮件(IMAP/POP3)代理服务器和通用的TCP/UDP代理服务器。它最初由Igor Sysoev设计和开发,于2004年首次公开发布。Nginx是一个开源软件,以BSD许可证发布,因此它是免费的,并且可以在Windows、Linux、Mac OS X、Unix等多种操作系统上运行。,被广泛用于高流量的网站、视频流媒体、CDN、反向代理、负载均衡等场景。它的设计理念是模块化、可扩展、灵活,可以通过添加模块来扩展其功能,也可以通过自定义模块来实现特定的需求。原创 2023-03-05 23:49:43 · 588 阅读 · 0 评论 -
Spring声明式事务@Transactional
导致Spring事务不生效场景和解决方案原创 2023-03-04 21:25:25 · 910 阅读 · 0 评论 -
Java线程、多线程简述
一文让你秒懂什么是线程,如何创建一个线程,多线程是什么原创 2023-03-04 18:00:29 · 1284 阅读 · 0 评论 -
Java8之lambda表达式
什么是lambda表达式?lambda表达式语法?什么是函数式接口原创 2023-03-02 13:07:37 · 2291 阅读 · 0 评论 -
EasyExcel导入、导出合并单元格excel文件
原文地址:https://blog.csdn.net/weixin_42195311/article/details/110441885<!--版本最好大于2.2.6,版本太低会导致没有extra方法--><dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.2.6<原创 2021-09-26 14:47:27 · 1897 阅读 · 1 评论 -
map常用遍历方法
一.map遍历的几种方法// 方法一:常规遍历方法for (Map.Entry<String, String> entry : map.entrySet()) { System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());}// 方法二:不建议这种方法,因为通过键去查值比较消耗性能 for (String key : map.keySet()) { Strin原创 2021-07-19 16:59:49 · 767 阅读 · 0 评论 -
Java 日志简介
所以单独的 slf4j 是不能工作的,必须搭配其他具体的日志实现方案,比如 apache 的 org.apache.log4j.Logger,jdk 自带的 java.util.logging.Logger 等。Log4j 中将要输出的 Log 信息定义了 5 种级别,依次为 DEBUG、INFO、WARN、ERROR 和 FATAL,当输出时,只有级别高过配置中规定的 级别的信息才能真正的输出,这样就很方便的来配置不同情况下要输出的内容,而不需要更改代码。 同样的代码路径,Logback 执行更快。原创 2023-02-18 14:52:37 · 507 阅读 · 0 评论 -
【集合】JAVA基础篇(二)
集合类主要负责保存、盛装其他数据,因此集合类也被称为容器类。Java 所有的集合类都位于 java.util 包下,提供了一个表示和操作对象集合的统一构架,包含大量集合接口,以及这些接口的实现类和操作它们的算法。集合类和数组不一样,数组元素既可以是基本类型的值,也可以是对象(实际上保存的是对象的引用变量),而集合里只能保存对象(实际上只是保存对象的引用变量,但通常习惯上认为集合里保存的是对象)。Java 集合类型分为 Collection 和 Map,它们是 Java 集合的根接口。原创 2023-02-16 22:15:59 · 857 阅读 · 0 评论 -
JPA 问题汇总(持续更新中)
Executing an update/delete query今天JPA在执行update的时候报这个错,是因为jpa在执行语句的时候遇到’select’会认为这是一个只读事务,这个时候去执行‘update’就会报错。:在上面加上事务注解@Transactional,这样就能告诉jpa这个事务是支持修改和删除的(默认readOnly = false)原创 2023-01-05 16:31:00 · 197 阅读 · 0 评论 -
【IO流】JAVA基础篇(一)
Java IO 提供强大的输入输出功能,包括输入输出流、文件操作和网络通信。它支持各种数据类型的读写,以及文件和网络资源的管理与操作,为Java程序提供了广泛的输入输出解决方案。原创 2022-12-20 10:48:41 · 1068 阅读 · 0 评论 -
【poi导出excel之XSSFWorkbook】
HSSF、XSSF、SXSSF、excelutils工具类、poi生成excel下拉原创 2022-08-03 15:19:17 · 23763 阅读 · 5 评论 -
pdf导出工具类
java中如何导出pdf,如何往pdf里面写数据,pdf中如何建表原创 2022-12-20 10:58:54 · 147 阅读 · 0 评论 -
java导出excel下载后文件损坏无法修复
2、如果用的XSSFWorkbook之类的,记得关闭流和工作簿。按照如下格式即可正常打开。原创 2022-07-29 10:09:14 · 3475 阅读 · 0 评论 -
Java中反射与泛型基本介绍和用法
泛型的本质是参数化类型,即给类型指定一个参数,然后在使用时再指定此参数具体的值,那样这个类型就可以在使用时决定了。这种参数类型可以用在类、接口和方法中,分别被称为泛型类、泛型接口、泛型方法。Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。举例:类里面有不同字段但是前缀相同,比如前缀是field,后缀是_1,这个字段就是field_1,field_2以此类推,如何用反射获取字段数据?原创 2022-05-11 11:54:40 · 652 阅读 · 0 评论 -
easyexcel和poi区别
但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是在内存中完成的,内存消耗依然很大。easyexcel重写了poi对07版Excel的解析,一个3M的excel用POIsax解析依然需要100M左右内存,改用easyexcel可以降低到几M,并且再大的excel也不会出现内存溢出;03版依赖POI的sax模式,在上层做了模型转换的封装,让使用者更加简单方便。...原创 2022-05-11 10:20:19 · 3980 阅读 · 0 评论 -
常用的加密有哪些?在Java中如何实现?(MD5、AES、RSA)
常用加密有哪些?在Java中如何实现?MD5加密、AES对称加密、RSA非对称加密如何实现?原创 2022-03-09 15:22:41 · 1048 阅读 · 0 评论 -
Java枚举,如何通过code获取枚举?
Java枚举,如何通过code获取枚举?原创 2022-03-07 10:24:12 · 7262 阅读 · 0 评论