随笔分类 -  Java

摘要:VOLATILE关键字在JAVA中用于确保多线程环境下的变量可见性和一定程度的有序性,其具体实现机制基于JAVA内存模型(JAVA MEMORY MODEL, JMM): 可见性: 当一个线程修改了标记为 volatile 的共享变量时,它会强制将这个变量值从当前线程的工作内存刷新回主内存。 同时, 阅读全文
posted @ 2024-03-14 14:06 fchhk 阅读(28) 评论(0) 推荐(0) 编辑
摘要:Arrays.asList返回的List是Arrays类的内部类。 平时经常使用的ArrayList是位于java.util包下的: 它也继承了AbstractList类,重写了很多方法,比如我们上面使用的contains方法,但是却没有重写add方法,所以我们在调用add方法时才会抛出java.l 阅读全文
posted @ 2024-02-19 17:08 fchhk 阅读(49) 评论(0) 推荐(0) 编辑
摘要:开发环境 开发依赖 版本 openJDK 17、21 SpringBoot 3.2.1 以下是SpringBoot3.x版本依赖 坐标发生变化的常用框架 一、整合MybatisPlus SpringBoot2.x版本引入的依赖是: <mybatis.plus.version>3.4.2</mybat 阅读全文
posted @ 2024-01-11 11:19 fchhk 阅读(1403) 评论(2) 推荐(0) 编辑
摘要:使用openjdk17 openjdk各版本下载地址 openjdk下载地址 下载jre 下载下来压缩包解压,没有jre 进入jdk安装目录执行 bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre Spr 阅读全文
posted @ 2024-01-10 11:05 fchhk 阅读(158) 评论(0) 推荐(0) 编辑
摘要:父子任务共用同一线程池,系统”饥饿”死锁 当他们都被同一个线程池执行时,一定条件下会出现以下场景: 1、父任务获取到线程池线程执行,而子任务则被暂存到队列中 2、当父任务占满了线程池所有的线程,等待子任务返回结果后,结束父任务 3、此时子任务由于在队列中,一直不能等到线程来处理,导致不能从队列中释放 阅读全文
posted @ 2023-11-23 17:13 fchhk 阅读(39) 评论(0) 推荐(0) 编辑
摘要:动态给注解内容参数赋值 @WebServiceClient(name = "IXxxService", targetNamespace = "http://xxx.xxx.xxx.com", wsdlLocation = "${WSDL_URL}") public class IXxxService 阅读全文
posted @ 2023-11-16 17:20 fchhk 阅读(917) 评论(0) 推荐(0) 编辑
摘要:官方jdk8下载地址 jdk8下载地址 jdk8 api文档 api文档 spring中文网 spring中文网 jdk17新特性 升级jdk17 openjdk17下载地址 openjdk17下载 阅读全文
posted @ 2023-11-05 22:48 fchhk 阅读(32) 评论(0) 推荐(1) 编辑
摘要:EasyExcel合并单元格 阅读全文
posted @ 2023-09-26 09:41 fchhk 阅读(324) 评论(0) 推荐(0) 编辑
摘要:在业务中常常有这样的需求,需要遍历集合,分别处理,相互之前单独处理,互不影响。 为了充分利用服务器资源,可以使用多线程来执行。 parallelStream创建一个并行流, 使用ConcurrentHashMap使多线程情况下线程安全 CompletableFuture.allOf是所有线程全部执行 阅读全文
posted @ 2023-08-28 16:22 fchhk 阅读(114) 评论(0) 推荐(0) 编辑
摘要:### 传递文件 服务端 ```java @RestController public class DemoController { @PostMapping("/upload") @ApiOperation("上传文件") public void upload(@RequestParam("fil 阅读全文
posted @ 2023-08-21 13:42 fchhk 阅读(790) 评论(0) 推荐(0) 编辑
摘要:### 配置yml ```java # 异步线程配置 自定义使用参数 spring: task: execution: pool: core-size: 5 max-size: 10 queue-capacity: 20 keep-alive: 60 thread-name-prefix: defa 阅读全文
posted @ 2023-08-15 10:33 fchhk 阅读(78) 评论(0) 推荐(0) 编辑
摘要:stripTrailingZeros():去除小数部分末尾的零 @Test public void TestCompare() { // JAVA中Float类型的小数超过4位(前面都是0,例如0.0001)会转成科学计数法存储 float f = 0.0001F; // 转BigDecimal的时 阅读全文
posted @ 2023-06-30 10:20 fchhk 阅读(1190) 评论(0) 推荐(0) 编辑
摘要:相同字符串视为相同字符,去除相同字符串 public List<String> removeSameStr() { List<String> list = new ArrayList<>(); List<String> result = new ArrayList<>(); list.add("12 阅读全文
posted @ 2023-05-08 21:07 fchhk 阅读(9) 评论(0) 推荐(0) 编辑
摘要:for (int i = 0; i < 10; i++) { CompletableFuture<Void> cf1 = CompletableFuture.supplyAsync(() -> { System.out.println("A"); return null; }); Completab 阅读全文
posted @ 2023-05-08 21:04 fchhk 阅读(13) 评论(0) 推荐(0) 编辑
摘要:WrapperedRequest import javax.servlet.ReadListener; import javax.servlet.ServletInputStream; import javax.servlet.http.HttpServletRequest; import java 阅读全文
posted @ 2023-04-19 17:10 fchhk 阅读(2284) 评论(0) 推荐(0) 编辑
摘要:1.过滤器? 过滤器的英文名称为 Filter, 是 Servlet 技术中最实用的技术。 如同它的名字一样,过滤器是处于客户端和服务器资源文件之间的一道过滤网,帮助我们过滤掉一些不符合要求的请求,通常用作 Session 校验,判断用户权限,如果不符合设定条件,则会被拦截到特殊的地址或者基于特殊的 阅读全文
posted @ 2023-04-19 16:56 fchhk 阅读(78) 评论(0) 推荐(0) 编辑
摘要:redis 默认的最大的内存设置为maxmemory0,相当于基于物理机的最大值 八种策略 volatile-lru,针对设置了过期时间的key,使用lru算法进行淘汰。 allkeys-lru,针对所有key使用lru算法进行淘汰。 volatile-lfu,针对设置了过期时间的key,使用lfu 阅读全文
posted @ 2023-03-27 21:55 fchhk 阅读(35) 评论(0) 推荐(0) 编辑
摘要:造成这个问题的原因 首先这两个操作不是原子性的,在多线程环境下,当线程A从数据库中读到的数据是1,在往缓存里面更新缓存之前,线程B操作了这条数据更新成为2。并发带来的原子性问题就是出现这个问题的根本原因。 解决方案 强一致性 延时双删:删除数据、更新redis的时候,等待其他线程把缓存更新好。可能出 阅读全文
posted @ 2023-03-27 21:06 fchhk 阅读(48) 评论(0) 推荐(0) 编辑
摘要:Druid+Mysql默认使用的是ping的方式去判断连接是否有效。我们给druid配置的validationQuery根本就不会执行。 调试源码,发现usePingMethod变量为true 那么问题来了,如何将usePingMethod变为false呢? 解决方法: 在进程的启动参数中(jvm参 阅读全文
posted @ 2023-03-14 10:37 fchhk 阅读(300) 评论(0) 推荐(0) 编辑
摘要:网关简单理解 排他网关(ExclusiveGateway):解析条件,条件都不满足->报错。都满足,走id小的那一条线路。 并行网关(ParallelGateway):不解析条件,不报错,都走 包含网关(InclusiveGateway):包含网关可以看做是排他网关和并行网关的结合体。和排他网关一样 阅读全文
posted @ 2023-03-06 14:12 fchhk 阅读(48) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示