- 博客(717)
- 资源 (7)
- 收藏
- 关注

原创 【分享】笔记合集
Dubbo入门学习笔记:1、Dubbo快速入门-框架介绍:http://note.youdao.com/noteshare?id=2145332640e068fafa7d6aaf9776356a&sub=DA4D2F1792724AD1B626C20FC497830F 2、Dubbo快速入门-XML配置:http://note.youdao.com/noteshare?id=4645...
2019-08-07 11:54:10
412
原创 BM算法简单理解
什么是BM算法BM算法算是RK(模式串与主串按位比较,主串按位后移)算法的变种,提高了移动的范围。达到优化的目的BM算法的两大核心:坏字符&好后缀的处理。坏字符从***高->低***按位比较时的第一个不匹配的字符。移动位数计算:mi = s i - xi解析mi:主串比较向后移动位数si:坏字符对应的模式串下标xi:坏字符首次比对成功的模式串下标(初始值-1)场景一:无一匹配场景二:存在匹配好后缀说明模式串后缀存在部分匹配,那么针对这些部分匹
2021-06-17 21:40:48
1290
转载 win10和ubuntu双系统下彻底删除ubuntu系统和grub引导
转载自:http://blog.sina.com.cn/s/blog_e8c35f550102x3ue.html目的是删除grub引导,本质删除boot files里的/EFI/ubuntu文件夹1、挂载EFI打开命令提示符(管理员权限)diskpartlist diskselect disk 0 # 根据你系统在哪个盘来选择list partitionselect partition 1 # 选择系统分区,就是要挂载这个分区才能操作里面的文件assign letter=p
2021-01-23 10:33:25
9274
3
原创 金融rate函数解析【附java实现】
Rate本质就是根据PMT公式反推利率而已,但是因为rate没有界限及收敛域所以没法通过简单的极限求解来获取解。最终就是通过牛顿迭代式,利用切线与曲线的关系构建新的收敛函数,求最优解。1、构建利率函数【来源PMT公式】f(rate)=fv+pv∗(rate+1)nper+pmt∗(1+rate∗type)∗(rate+1)nper−1ratef(rate)=fv+pv*(rate+1)^{nper}+pmt*(1+rate*type)*\frac{(rate+1)^{nper}-1}{rate}
2020-09-18 14:19:00
2075
1
原创 RestTemplate获取微信小程序码
使用RestTemplate获取小程序的码的时候会面对正常请求和异常请求统一返回的问题。正常:返回的图片的byte[]异常:返回的是异常code+异常msg1、封装统一返回对象public class GetUnlimitedRes { private int errcode; private String errmsg; private String contextType; private byte[] buffer;}2、其实只要保证正常\异常使用不
2020-08-13 16:11:46
925
原创 【TL】关于grep的or、and、not操作
文章目录1、grep常用语法2、grep的or用法2.1、方式一、使用‘grep 'pattern1\ |pattern2' filename|’2.2、方式二、使用‘grep -E 'pattern1|pattern2' filename’2.3、方式三、使用‘egrep 'pattern1|pattern2' filename’2.4、方式四、使用‘grep -e pattern1 -e pattern2 filename’3、grep的and用法3.1、方式一、使用‘grep -E 'pattern
2020-08-10 11:07:21
929
1
原创 【TL】Shell定时工具Crontab的使用
1、指定crontab的默认编辑器export EDITOR="/usr/bin/vim" ; crontab -e2、基本使用/var/spool/cron/ 目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名/etc/crontab 这个文件负责调度各种管理和维护任务。/etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本。...
2020-05-05 20:52:34
504
原创 Python使用win32组件实现企业微信抢课插件
利用win32组件实现对程序的监控,实现抢课# -*- coding: UTF-8 -*-## 目的实现抢课# 依赖:win32、autopy、PIL、aircv、opencv# pip install win32 -i https://mirrors.aliyun.com/pypi/simple/# pip install autopy -i https://mirrors.al...
2020-04-27 16:43:50
1473
1
原创 【Mockito】Mockito工具的使用
文章目录1 什么是Mockito?2 为什么使用Mockito?3 如何使用Mockito?3.1 Mockito的基本对象3.2 Mockito简单使用Demo3.3 关于@InjectMock的注意事项3.3.1、InjectingAnnotationEngine#injectMock3.3.2、DefaultInjectionEngine#injectMocksOnFields3.3.3、M...
2020-04-25 13:48:38
1328
原创 【RocketMQ】2、RocketMQ基本消息使用
1、基本依赖导入MQ客户端依赖<dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-client</artifactId> <version>4.4.0</version></depe...
2020-04-23 10:53:36
657
原创 【RocketMQ】0、RocketMQ问题集锦
1、使用docker运行rocketMQ的时候外部producer和consumer无法访问到brokerorg.apache.rocketmq.remoting.exception.RemotingConnectException: connect to <172.17.0.3:10909> failed原因:当我们使用docker启动broker的时候,RocketMQ...
2020-04-12 20:56:30
599
原创 【RocketMQ】4、RocketMQ消息机制
1、消息存储分布式队列因为有高可靠性的要求,所以数据要进行持久化存储。消息生成者发送消息 MQ收到消息,将消息进行持久化,在存储中新增一条记录 返回ACK给生产者 MQ push 消息给对应的消费者,然后等待消费者返回ACK 如果消息消费者在指定时间内成功返回ack,那么MQ认为消息消费成功,在存储中删除消息,即执行第6步;如果MQ在指定时间内没有收到ACK,则认为消息消费失败,...
2020-04-12 20:55:33
984
原创 【RocketMQ】3、RocketMQ集群搭建
1、角色介绍Producer:消息的发送者;举例:发信者 Consumer:消息接收者;举例:收信者 Broker:暂存和传输消息;举例:邮局 NameServer:管理Broker;举例:各个邮局的管理机构 Topic:区分消息的种类;一个发送者可以发送消息给一个或者多个Topic;一个消息的接收者可以订阅一个或者多个Topic消息 Message Queue:相当于是Topic的...
2020-04-12 20:54:09
395
原创 【RocketMQ】1、RocketMQ快速入门
1、消息队列的使用场景 2、快速开始 2.1、下载并构建 2.2、启动Name Server 2.3、启动Broker 2.4、测试RocketMQ 参考文章1、消息队列的使用场景优势:解耦、提速(异步)、广播、削峰缺点:引入复杂度、短暂的不一致性(保证了最终一致性)使用场景:生产者不需要从消费者处获得反馈、容许短暂的不一致性、确实是用了有效果在某个场景里有...
2020-04-12 20:51:44
393
原创 Git安装失败问题
进行磁盘整理,导致GIT安装目录意外格式化,重新安装提示unable to get systemconfig解决办法,移除注册表中GIT相关记录:1、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Git_is1...
2020-04-09 19:42:29
2986
原创 【TL】QLExpress
文章目录1、快速开始2、扩展Operator的使用2.1 自定义Operator2.2 使用Operator3、绑定java类或者对象的method4、macro 宏定义(规则执行)5、java class的相关api6、扩展Context6.1、扩展IExpressContext6.2、可以直接使用Spring容器托管的对象7、自定义函数操作符获取原始的context控制上下文相关文章1、快速...
2020-03-23 09:30:55
1011
原创 Mysql外连接原理
今天在使用left join的时候出现一个问题,主表table1 left join 附表table2 on table1.id = table2.t1_id where table1.id='12580'。table1中id市主键,二附表中多条记录的t1_id='12580',这个时候返回了多条记录。SQL Select语句完整的执行顺序:1、from子句组装来自不同数据源的数据;...
2019-11-06 16:14:42
790
原创 CDN加速的实现逻辑
什么是CDN?CDN全程是(Content Delivery Network)内容分发网络。指一种通过互联网相互连接的计算级网络系统,利用最靠近每个用户的服务器,更快、更可靠的将资源(图片、视频、流、资源、程序等)发送给用户。对于系统而言可以预先将内容分发至全国各地的加速节点,这样用户就可以就近的获取所需内容,避免网络拥堵、地域、运营商等因素带来的访问延迟问题,有效提升下载速度,降低响应时...
2019-11-06 16:13:20
1021
原创 Apache的BeanUtils.copyProperties的坑
问题解释:再CopyProters的时候,apache没有通过递归的方式去嵌套copy属性对象的子属性,而是直接通过orig.getXXX和desc.setXXX的方式进行复制,所以只要出现三层以上,也就是子属性的子属性那么你的末日了,他可能变成了另一个对象而且无法再编译时发现,只会在运行时告诉你ClassCastError。暴力模拟,这里只是简单的模拟。...
2019-11-06 16:10:13
1216
2
原创 windows安装TensorFlow
安装步骤1、安装python32、安装anaconda3.X(注意和python版本一致)ps:这里安装了anaconda可以不用安装python3、使用管理员权限打开命令窗口4、将命令窗口的字符编码调整为UTF-8【chcp 65001】如果是英文版系统,不用调整5、使用pip安装TensorFlow【pip install tensorflow】注意打开vpn验证Ten...
2019-11-06 16:09:30
437
原创 Activiti服务查询方法你不是你的经典实例
简单描述:当我们使用ActivitiService的queryService的时候,存在查询条件的时候,并且字符串的长度超过4000,那么desc不是String是LongString,而LongString并不是String而是ByteArray,最后的结果就是String不是String了。这里的'String','LongString','ByteArray'均是Activiti用来...
2019-11-06 16:08:27
559
原创 GIT配置免密提交
GIT配置免密提交 通过简单配置实现GIT的免密提交,这里使用的是GITEE。创建线上git仓库,并clone到本地 这里直接在gitee线上操作就好了,使用git clone xxx保存到本地。修改~/.git/config配置文件实现免密提交 这里只需要修改[remote "origin"]节点下的url地址来实现原始地址:https://gitee.com/lfs...
2019-11-06 16:07:16
1369
1
原创 常用的Junit的注解
常用的Junit的注解(@Before @After @Test @Ignore @BeforeClass @AfterClass)@Before:初始化方法,在任何一个测试执行之前必须执行的代码;@After:释放资源,在任何测试执行之后需要进行的收尾工作。在每个测试方法执行之后执行一次,该annotation只能修饰public void 方法;@Test:测试方法,表明这...
2019-06-18 22:22:55
553
原创 RabbitMQ入门
RabbitMQ介绍RabbitMQ 即一个消息队列,主要是用来实现应用程序的异步和解耦,同时也能起到消息缓冲,消息分发的作用。RabbitMQ概念相关通常我们谈到队列服务, 会有三个概念: 发消息者、队列、收消息者,RabbitMQ 在这个基本概念之上, 多做了一层抽象, 在发消息者和 队列之间, 加入了交换器 (Exchange). 这样发消息者和队列就没有直接联系, 转而变成发消息者把...
2019-05-11 20:07:26
378
1
原创 Nginx负载均衡策略
目前Nginx服务器的upstream模块支持6种方式的分配轮询-默认模式<br>weight-权重模式<br>ip_hash-依据ip分配方式<br>least_conn-最小连接方式<br>fair(第三方)-相应时间方式<br>url_hash(第三方)-依据URL分配方式<br>轮询最基本的配置方式,...
2019-05-11 20:06:14
396
原创 MySql之行级锁
mysql锁机制之行级锁:锁实在执行多线程时用于强行限定资源访问的同步机制,数据库锁根据锁的粒度可分为行级锁,表级锁和页级锁。行级锁行级锁是mysql中粒度最细的一种锁机制,表示只对当前所操作的行记性加锁,行级锁发生冲突的概率低,其粒度最小,但是加锁的代价最大。行级锁分为共享锁和排他锁。特点开销大,加锁慢,会出现死锁;锁定粒度最小,发生锁冲突的概率最大,并发性也高;实现原理InnoD...
2019-05-11 20:05:00
413
原创 MySql多列索引
多列索引多列索引就是将多个列作为一个索引,在一个多列B-Tree索引中,索引列的顺序意味着索引首先按照最左列进行排序,然后第二列第三列等等。所以可以按照升序或者降序进行扫描,以满足精确符合列顺序的ORDER BY,GROUP BY和DISTINCT等子句,所以,多列索引的顺序至关重要,key(列1,列2)和key(列2,列1)这两个多列索引很可能有巨大的性能差距。设计索引的时候是多个单列...
2019-05-11 20:04:16
2210
原创 设计模式-策略模式
策略模式 在策略模式中(strategy pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的context对象。策略对象改变context对象的执行算法。介绍意图:定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。主要解决:在有多种算法相似的情况下,使用if…el...
2019-05-11 20:01:33
323
原创 SSH连接Win10 Linux子系统
查看是否开启SSH服务ps -ef | grep ssh安装SSH服务apt-get remove openssh-serverapt-get install openssh-server修改端口为22,开启允许密码登录Port 22PasswordAuthentication yes重启服务service ssh --full-restart...
2019-05-11 19:56:06
6538
原创 使用Thymeleaf渲染html模板
使用Thymeleaf来渲染html模板step1:添加Thymeleaf依赖<!-- Thymeleaf 模板引擎 --><dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf</artifactId> <...
2018-12-10 14:10:30
3066
原创 【LeetCode】601. Human Traffic of Stadium
题目:https://leetcode.com/problems/human-traffic-of-stadium/description/解决方案:通过三表的混合的笛卡尔积,然后我们枚举出所有可能的情况,在第一个数,在第二个数,在第三个数,然后去重,排序即可select distinct t1.*from stadium t1, stadium t2, stadium t3wh...
2018-10-08 11:39:28
515
原创 【LeetCode】262.Trips and Users
题目:https://leetcode.com/problems/trips-and-users/解决方案:需要得到有效用户对象+完成数据量+未完成数据量+时间SELECT l1.Day Day, ROUND(SUM(l1.cn)/(SUM(l1.cp)+SUM(l1.cn)),2) AS "Cancellation Rate"FROM(SELECT T.Request_at ...
2018-10-08 10:32:27
345
原创 【Gson】源码解析
private FieldNamingStrategy fieldNamingPolicy = FieldNamingPolicy.IDENTITY;public Gson create() { List<TypeAdapterFactory> factories = new ArrayList<TypeAdapterFactory>(); factories...
2018-10-08 10:29:21
598
原创 【stream】处理含null字段的排序
msgInfoList=msgInfoList.stream().sorted(Comparator.comparing(l->l.getCreateDate(), Comparator.nullsFirst(java.util.Date::compareTo).reversed())).collect(Collectors.toList());源码: public static ...
2018-10-08 10:26:06
3466
原创 java编译,采用增量更新的时候报NoSuchMethodError错误
java.lang.NoSuchMethodError:com.lfsenior.cn.TestDemo.getParam(Ljava/lang/String;)Ljava/util/Map; com.lfsenior.TestWeb.doGet(TestWeb.java:19)javax.servlet.http.HttpServlet.service(HttpServlet.java:622)...
2018-10-08 10:24:26
734
原创 【rem】自定义rem.js
console.time("test");!function(win, option) { var count = 0, designWidth = option.designWidth, designHeight = option.designHeight || 0, designFontSize = option.designFont...
2018-09-21 09:45:45
742
原创 【Mysql】的float类型
对于单精度浮点数Float: 当数据范围在±131072(65536×2)以内的时候,float数据精度是正确的,但是超出这个范围的数据就不稳定(如131070.22结果为131070;13107.22结果为13107.2;13107777.22结果为13107000),没有发现有相关的参数设置。建议:将float改成double或者decimal,两者的差别是double是浮点计算,decim...
2018-09-21 08:59:56
2213
原创 【Gson】serializeNulls支持空对象序列化
在对象序列化为json字符串时,默认是不序列化NULL对象的,如果在序列化时设置serializeNulls了,就可以支持NULL的序列化。注意serializeNulls对反序列化没有影响。示例如下开启serializenulls支持:{"id": 1,"name": "lfsenior","car": null,"age": 0}--------------...
2018-09-20 13:06:37
1208
原创 【vue】中的$符号
在使用vue的时候我们会有用户自定义的属性与方法,同时还存在vue定义好属性和方法(实例属性/实例方法)在使用实例属性/方法的时候需要水用$符号,以便与用户自定义的定义的属性区分开来//$watch是一个实例方法vm.$watch('counter',function (nval,oval) {//将在counter发送改变后调用alert('计数器值的变化:'+oval+'变...
2018-09-20 13:06:01
13402
原创 【RESTEasy】学习
1.1、了解Rest是什么: REST是英文RepresentationalState Transfer 的缩写,有中文翻译为“具象状态传输”。REST 这个术语是由 RoyFielding 在他的博士论文《Architectural Styles and the Design ofNetwork-based Software Architectures 》中提出的。REST并非标...
2018-09-17 13:44:33
387
axis2客户端调用webService的DEMO
2018-01-19
锋利的jQuery实例源码
2017-09-09
锋利的jQuery高清版
2017-09-09
java与模式
2017-07-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人