10 2018 档案
摘要:用法 简单看到,这个值,每次执行都是不同的。 生成规则 第1 2 3 段是与时间有关的。 time_low、time_mid、time_high_and_version转成16进制后分别对应第1 2 3段。这个时间是从1582-10-15 00:00:00.00到当前时间的100ns值。(实际上系统
阅读全文
摘要:1. GrantedAuthority 在user对应的权限类中, 需要实现该接口 在权限模板中需要继承该接口 2. UserDetails user需要实现该接口, 将username和password映射, 并实现接口中的方法 3. UserDetailsService 主要是实现,在登录验证时
阅读全文
摘要:两张表通过中间的关联表做联系时使用,即多对多关系,见权限分配 @ManyToMany(cascade = { CascadeType.DETACH, CascadeType.MERGE, CascadeType.PERSIST, CascadeType.REFRESH } , fetch = Fet
阅读全文
摘要:原文地址: https://www.cnblogs.com/skywang12345/p/3308807.html LinkedList 是一个继承于AbstractSequentialList的双向链表。它也可以被当作堆栈、队列或双端队列进行操作 LinkedList 实现 List 接口,能对它
阅读全文
摘要:我们可以定义系统环境变量来表示 在/etc/profile 最后一行增加 export JAVA_OPTS='-Djava.rmi.server.hostname=192.168.2.39 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmx
阅读全文
摘要:// Use Quicksort on small arrays if (right - left < QUICKSORT_THRESHOLD) {//QUICKSORT_THRESHOLD = 286 sort(a, left, right, true); return; } 数组一进来,会碰到第
阅读全文
摘要:用O( )来体现算法时间复杂度的记法,我们称之为大O表示法。 算法复杂度可以从最理想情况、平均情况和最坏情况三个角度来评估,由于平均情况大多和最坏情况持平,而且评估最坏情况也可以避免后顾之忧,因此一般情况下,我们设计算法时都要直接估算最坏情况的复杂度。 大O表示法O(f(n)中的f(n)的值可以为1
阅读全文
摘要:spellChecker是用来对用户输入的“检索内容”进行校正,例如百度上搜索“麻辣将”,他的提示如下图所示: 我们首先借用lucene简单实现该功能。 本文内容如下(简单实现、原理简介、现有问题) lucene中spellchecker简述 lucene 的扩展包中包含了spellchecker,
阅读全文
摘要:group by 用法解析 group by语法可以根据给定数据列的每个成员对查询结果进行分组统计,最终得到一个分组汇总表。 SELECT子句中的列名必须为分组列或列函数。列函数对于GROUP BY子句定义的每个组各返回一个结果。 某个员工信息表结构和数据如下: id name dept salar
阅读全文
摘要:1. 主键 超键 候选键 外键 主 键: 数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null)。 超 键: 在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为作为一个超键,多个属性组合在一起也可以作为一
阅读全文
摘要:kmp+trie = ac自动机 Aho-Corasick算法是多模式匹配中的经典算法,目前在实际应用中较多。 Aho-Corasick算法对应的数据结构是Aho-Corasick自动机,简称AC自动机。 搞编程的一般都应该知道自动机FA吧,具体细分为:确定性有限状态自动机(DFA)和非确定性有限状
阅读全文
摘要:字符串匹配的意思是给一个字符串集合,和另一个字符串集合,看这两个集合交集是多少。 若是都只有一个字符串,那么就看其中一个是否包含另外一个; 若是父串集合(比较长的,被当做模板)的有多个,子串(拿去匹配的)只有一个,就是问这个子串是否存在于父串之中; 若是子串父串集合都有多个,那么就是问交集了。 1.
阅读全文
摘要:下策——查询出结果后将时间排序后取第一条 select * from a where create_time<="2017-03-29 19:30:36" order by create_time desc limit 1 这样做虽然可以取出当前时间最近的一条记录,但是一次查询需要将表遍历一遍,对于
阅读全文
摘要:DoubleArrayTrie实现 Tire树终究是一颗树形结构,树形结构的两个重要要素便是前驱和后继,把Tire树压缩到双数组中,只需要保持能查询到每个节点的前驱和后继即可。Tire树中几个重要的概念。 STATE:状态,实际为在数组中的下标 CODE : 状态转移值,实际为转移字符的 ASCII
阅读全文
摘要:https://segmentfault.com/a/1190000008877595 https://blog.csdn.net/sinat_35261315/article/details/72510252 Trie 树是一种以信息换时间的数据结构,其查询的复杂度为O(m) Trie可以实现状态
阅读全文
摘要:1.删除大表的部分数据 一个表有1亿6000万的数据,有一个自增ID。最大值就是1亿6000万,需要删除大于250万以后的数据,有什么办法可以快速删除? 看到mysql文档有一种解决方案:http://dev.mysql.com/doc/refman/5.0/en/delete.html If yo
阅读全文
摘要:如果是更新为同样的内容,没啥难度,直接在where里面下功夫就好了,大家都懂,我要说的是针对更新内容不一样的情况 首先,先看看网上转载的方法: mysql 批量更新如果一条条去更新效率是相当的慢, 循环一条一条的更新记录,一条记录update一次,这样性能很差,也很容易造成阻塞。 mysql 批量更
阅读全文
摘要:1. 两个事务获取相互兼容的锁, 再次获取排他锁时出现死锁 2. 批量对数据加锁, 加锁过程是个持续性的. 案例见https://blog.csdn.net/asdfsadfasdfsa/article/details/83030011
阅读全文
摘要:不同的MySQL版本,不同的参数设置,都可能对加锁过程有影响。 分析加锁机制还是应当尽可能多地列举一下关键参数,例如:当前mysql版本、事务隔离级别等。 如下,仅仅只列出个别比较重要的参数。 1.数据库版本 1 2 3 4 5 6 mysql> select version(); + + | ve
阅读全文
摘要:前提 说法一:在RR隔离级别下 INSERT SELECT 会对 SELECT 表中符合条件的数据加上 LOCK_S 锁。 说法二:(主键自增锁模式应该为0或1) 情景一:insert into table1 ...select * from table2:table1锁表,table2逐步锁(扫描
阅读全文
摘要:主要参照<高性能mysql> 一: 1. 关于联合索引查询:https://blog.csdn.net/asdfsadfasdfsa/article/details/82755837 2.聚簇索引即是表, 其他地方无需再存储? 3.非聚簇索引叶子节点存储的是主键值, 所以查询需要两次遍历B+树 4.
阅读全文
摘要:关于IN和OR的区别,在High performance mysql 3rd中,有一段话描述的非常清楚: IN() list comparisons In many database servers, IN() is just a synonym for multiple OR clauses, b
阅读全文
摘要:连接操作的类型 (1)SYSTEM CONST的特例,当表上只有一条元组匹配 (2)CONST WHERE条件筛选后表上至多有一条元组匹配时,比如WHERE ID = 2 (ID是主键,值为2的要么有一条要么没有) (3)EQ_REF 参与连接运算的表是内表(在代码实现的算法中,两表连接时作为循环中
阅读全文
摘要:如果没有索引合并, 则在多个单列索引中优化器只会选取最有的一个索引使用, 其余的索引将舍弃 根据官方文档中的说明,我们可以了解到: 1、索引合并是把几个索引的范围扫描合并成一个索引。 2、索引合并的时候,会对索引进行并集,交集或者先交集再并集操作,以便合并成一个索引。 3、这些需要合并的索引只能是一
阅读全文
摘要:通常、我们把 <=16KB 的I/O认为是小I/O、而 >=32KB 的I/O认为是大I/O 了解I/O的大小、影响到后期对缓存、RAID类型、LUN的一些属性的调优 当前大多数数据库使用的都是传统的机械磁盘 因此、整个系统设计要尽可能顺序I/O 避免昂贵的寻道时间和旋转延迟的开销 随机小I/O消耗
阅读全文
摘要:游标只能用于存储过程!!! 1.游标是啥玩意? 简单的说:游标(cursor)就是游动的标识,啥意思呢,通俗的这么说,一条sql取出对应n条结果资源的接口/句柄,就是游标,沿着游标可以一次取出一行。我给大家准备一张图: 2.怎么使用游标? //1.声明/定义一个游标 declare 声明;decla
阅读全文
摘要:NoClassDefFoundError发生在JVM在动态运行时,根据你提供的类名,在classpath中找到对应的类进行加载,但当它找不到这个类时, 就发生了java.lang.NoClassDefFoundError的错误,而ClassNotFoundException是在编译的时候在class
阅读全文
摘要:快速排序的基本思想是 1、先从数列中取出一个数作为基准数 2、分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边 3、再对左右区间重复第二步,直到各区间只有一个数 概括来说为 挖坑填数+分治法 下面举例来进行说明,主要有三个参数,i为区间的开始地址,j为区间的结束地址,X为当前
阅读全文
摘要:0、算法概述 0.1 算法分类 十种常见排序算法可以分为两大类: 非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此称为非线性时间比较类排序。 线性时间非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,
阅读全文
摘要:1、哈希函数的引入 大家都用过字典,字典的优点是我们可以通过前面的目录快速定位到所要查找的单词。如果我们想把一本英文字典的每个单词,从 a 到 zyzzyva(这是牛津字典的最后一个单词),都写入计算机内存,以便快速读写,那么哈希表是个不错的选择。 这里我们将范围缩小点,比如想在内存中存储5000个
阅读全文
摘要:执行命令,安装libinput apt install xserver-xorg-input-libinput 修改配置,增加几项:这里的配置项不一定是90开头 sudo vim /usr/share/X11/xorg.conf.d/90-libinput.conf 启用触摸板点击,就是轻敲触摸板是
阅读全文