摘要: 对接飞鹅和易联云后 ,网上几乎没资料对大趋智能打印机java api分享,故此分享一波。 官方文档地址 SnParam.java package com.shanheyongmu.openapi.param; import lombok.Data; import lombok.NoArgsConst 阅读全文
posted @ 2022-11-28 09:40 山河永慕~ 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 今天研究红包雨 了解到二倍均值算法 微信发放100元10个红包随机的 首先我们先看一下拼手气红包的功能要求: 所有红包累计金额等于红包总金额 每个红包金额不能小于0.01元,也就是说必须保证每个用户至少能抢到一个预设的最小金额,人民币红包设置的最小金额一般是0.01元,如果是发放其他类型的红包(比如 阅读全文
posted @ 2024-11-29 16:29 山河永慕~ 阅读(31) 评论(0) 推荐(0) 编辑
摘要: public class MySemaphore { private Sync sync; public MySemaphore(int count) { sync = new Sync(count); } public void acquire() { sync.acquireShared(1); 阅读全文
posted @ 2024-07-25 14:05 山河永慕~ 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 手写CountDownLatch思路 1. 设置aqs类中的状态为2; 2. 调用await方法,让当前线程变为阻塞 3. 调用countDown方法的时候 状态-1,如果状态=0的情况下,则唤醒刚才阻塞的线程 public class MyCountDownLatch { private Sync 阅读全文
posted @ 2024-07-25 14:02 山河永慕~ 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 问题原因:jdk版本过高导致,jdk1.8高版本对ssl做了限制 1、在URL中添加在数据库后面添加?createDatabaseIfNotExist=true&useSSL=false 2、修改JDK 下的为 java.security文件 文件里查找:jdk.tls.disabledAlgori 阅读全文
posted @ 2024-01-10 13:10 山河永慕~ 阅读(350) 评论(0) 推荐(0) 编辑
摘要: 请注意 如果是windows编写好上传ubuntu deploy.sh就会出现这样 编码问题, 请在ubuntu上直接vim deploy就不会出现这样问题。 shell在windows上写的,拿到linux稍微修改了下跑不了,竟然说cd命令找不到.我晕死,从国外站点查到是因为有^M字符结尾的原因 阅读全文
posted @ 2023-12-31 19:32 山河永慕~ 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 一、ThreadLocal介绍 在多线程环境下访问同一个线程的时候会出现并发问题,特别是多个线程同时对一个变量进行写入操作时,为了保证线程的安全,通常会进行加锁来保证线程的安全,但是加锁又会造成效率的降低;ThreadLocal是jdk提供的除了加锁之外保证线程安全的方法,其实现原理是在Thread 阅读全文
posted @ 2023-12-22 18:39 山河永慕~ 阅读(1716) 评论(0) 推荐(0) 编辑
摘要: 标有@Sharable的Handler,代表了他是一个可以被分享的handler,这就是说服务器注册了这个handler后,可以分享给多个客户端使用,如果没有使用该注解,则每次客户端请求时,都必须重新创建一个handler。 ex private NettyHandler nettyHandler 阅读全文
posted @ 2023-12-21 14:06 山河永慕~ 阅读(79) 评论(0) 推荐(0) 编辑
摘要: 项目中需要用一个替代concurrenthashmap 能够帮忙过期或者防止一直put oom所以使用 优点内存管理优化Caffeine 使用了一种基于堆外内存的存储模型,通过直接内存访问,避免了 Java 堆内存的垃圾回收开销。这种内存管理优化可以减少垃圾回收对应用性能的影响,提供更高的缓存读写性 阅读全文
posted @ 2023-12-21 11:31 山河永慕~ 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 使用策略模式 多态获取具体的策略 问题描述:classforName在代码中使用反射获取对象实例后,对象实例中通过@Autowrite注解注入的属性值为null(注入失败),导致带反射获取的对象实例调用方法时出现空指针等情况。问题原因:通过反射获取对象实例相当于“new”了一个对象,所以这个对象并没 阅读全文
posted @ 2023-10-18 11:28 山河永慕~ 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 本文为上一篇redis使用setnx实现分布式锁的增加篇 重在体会思想 与开源的框架自然是无法比拟的 如果当前线程已经获取到锁的情况下,不需要重复获取锁,而是直接复用。 秒杀A里面同时调用秒杀B 需要实现锁的复用 不然会报该锁 获取失败 执行错误 package com.shanhe.lock; p 阅读全文
posted @ 2023-02-07 21:34 山河永慕~ 阅读(322) 评论(0) 推荐(0) 编辑