事件对象的兼容

每个事件函数天生有一个参数叫event,它是事件对象,如果想修改event的名称,事件函数的第一个参数就是用来修改的 <div id="div"></div> var oDiv = document.getElementById("div"); oDiv.onclick = function() { ...

《Go 语言并发之道》读书笔记(六)

今天这篇笔记我们来学习一下context包 context包的一个应用场景是可以通过它控制goroutine的取消,超时等。 我们先来看一个取消的例子 context.WithCancel func doSomething(ctx context.Context) { ctx, cancelctx ...

聊一聊装饰者模式

装饰者模式(Decorator Pattern)允许向一个现有的对象扩展新的功能,同时不改变其结构。主要解决直接继承下因功能的不断横向扩展导致子类膨胀的问题,无需考虑子类的维护。 ...

《Go 语言并发之道》读书笔记(五)

今天这篇笔记我们来记录Channel 和 Select, Go语言并发中Channel是goroutine传递数据的桥梁,是非常重要的一个工具。 定义Channel 双向Channel 要定义一个channel很简单,只需要在类型前面加上chan就可以了, stringStream := make( ...

递归与Stream流转换

递归与Stream流转换 今天写一个很久以前一直不太会的,今天花了大量的时间进行研究处理,现将代码解析于此 list转为类中一个属性为key,类实例为value的Map Map<String, List<OrgTreeVo>> orgMap = orgList.stream().filter(h - ...

哈夫曼应用

哈夫曼编码应用 问题描述 ​ 给定字符串,将每个不同的字符的哈夫曼编码表示并输出其哈夫曼编码,并再将其哈夫曼编码还原回字符串 分析一下 构建哈夫曼树 ​ 使用静态链表,先将所有的结点关系全部清零,再进行结点和相应权值的赋值,遍历后n-1个结点 (新根),从n个结点中选两个最小的权值了合成一棵树,并将 ...

公司新来一个同事,把优惠券系统设计的炉火纯青!

作者:盐汽水 链接:https://juejin.cn/post/7116401645323288613 问题抛出 在近期的项目里面有一个功能是领取优惠券的功能, 问题描述: 每一个优惠券一共发行多少张,每个用户可以领取多少张: 如:A优惠券一共发行120张,每一个用户可以领取140张,当一个用户领 ...

【RocketMQ】顺序消息实现原理

全局有序 在RocketMQ中,如果使消息全局有序,可以为Topic设置一个消息队列,使用一个生产者单线程发送数据,消费者端也使用单线程进行消费,从而保证消息的全局有序,但是这种方式效率低,一般不使用。 局部有序 假设一个Topic分配了两个消息队列,生产者在发送消息的时候,可以对消息设置一个路由I ...

ssm整合

1.mybatis层 1.1 、导入依赖包 <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis< ...

AJAX---个人信息案例

案例分析: 如图所示,页面加载时有数据回填,同时实现select表单同步和图片上传,保存后上传至服务器等功能 HTML模板: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA ...