- 博客(9)
- 资源 (2)
- 收藏
- 关注
原创 aop相关
AOP方案写死代码静态代理动态代理:JDK和CGLIBSpring AOPSpring+AspectJ静态代理代理类和被代理的类实现了同样的接口,代理类同时持有被代理类的引用,这样,当我们需要调用被代理类的方法时,可以通过调用代理类的方法来做到package com.example.kafka.tes;import com.example.kafka.tes.service.UserService;import com.example.kafka.tes.se
2021-11-08 16:06:06
813
原创 redis可重入锁
package com.example.demo.util;import org.springframework.boot.autoconfigure.data.redis.RedisProperties;import redis.clients.jedis.Jedis;import java.util.HashMap;import java.util.Map;/** * @Author: lihaozhen * @Date: 2020/6/20 23:12 * @Descriptio
2020-06-20 23:41:38
529
原创 redis锁-注解版
Redis实现分布式锁利用 SETNX 和 SETEX基本命令主要有:SETNX(SET If Not Exists):当且仅当 Key 不存在时,则可以设置,否则不做任何动作。当且仅当 key 不存在,将 key 的值设为 value ,并返回1;若给定的 key 已经存在,则 SETNX 不做任何动作,并返回0。SETEX:基于SETNX功能外,还可以设置超时时间,防止死锁。项目图 代码实现application.yml# Redis数据库索引(默认为0)spring.redis.
2020-06-05 17:57:40
804
原创 LRU缓存实例
一、什么是 LRU 算法LRU算法又称最近最少使用算法,它的基本思想是长期不被使用的数据,在未来被用到的几率也不大,所以当新的数据进来时我们可以优先把这些数据替换掉。代码实现/** * @Author: 李浩真 * @Date: 2020/6/5 12:40 * @deprecated :LUR缓存(最近最少使用)的简单实现 */public class LRETest { public static void main(String[] args) { //true
2020-06-05 12:52:39
343
原创 使用rocketMQ进行通信
需求:确定两个平台之间能够正常通信,以及业务模块在绑定授权码后像控制平台发送一条消息代码实现:application.ymlrocketmq: name-server: 199.199.199.199:9876;199.199.199.199:9876 #name-server: 127.0.0.1:9876 producer: group: sveco-shortvideo-be-parent-dev send-message-timeout: 30000 #发送
2020-06-05 10:59:50
660
原创 对请求的参数进行验签
需求描述:前端发起请求的参数携带sign=xxxx,后台验证签名是够正确sign签名生成规则:1.将post请求的body转成jsonstring (按照body里key的自然升序排列),得到stringA,即: “reqBody=jsonstring"2.对字符串stringA="reqBody={jsonstring}" 2.对字符串stringA="reqBody=jsonstring"2.对字符串stringA="reqBody={jsonstring}”, stringB=“cpToken=
2020-06-05 10:11:20
1622
原创 用策略模式处理不同订单的业务流程
策略模式的核心是要把频繁发生变化的部分封装起来,作用是把变化部分的影响隔离开,避免局部的变化对其它fixed部分造成影响,设计时可能需要更多的时间,但便于维护、复用与扩展(我的目的就是为了解决sql查出订单类型,不同的订单类型,走不同的处理流程)VO类@Datapublic class OrderVo { /** * 订单id(自增主键) */ private String id; /** * 总价 */ private Bi
2020-06-04 13:35:42
1659
1
原创 用map做缓存
需求:公共层写一个map,用来做数据缓存(没有redis)代码实现import java.util.Map;import java.util.concurrent.ConcurrentHashMap;/** * @Author: 李大本事 * @Date: 2020/6/1 11:27 */public class MemoryCacheUtils { private static Map<String, CacheData> CACHE_DATA; sta
2020-06-03 13:25:42
2300
1
strategy_pattern.rar
2020-06-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人