
biubiu
文章平均质量分 51
y_index
有些人30岁就死了,但是80岁才埋
展开
-
手写LRU(Least recently used)
通过LinkedHashMap的源码可以知道,在LinkedHashMap构造方法中,多了一个AccessOrder字段,这是一个Boolean类型字段,标识插入数据的排序类型(false 为插入顺序,true为访问顺序),所以这里我们需要设置为true。LinkedHashMap<String, Object> map = new LinkedHashMap<>(16, 0.75f, true); map.put("a", 1); ...原创 2021-09-03 10:21:56 · 198 阅读 · 0 评论 -
布隆过滤器
<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>23.0</version> </dependency>package com.xdf.xcloud.api.utils;...原创 2021-09-02 16:33:49 · 214 阅读 · 0 评论 -
springboot - Excel 导出
1、maven引入 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.13</version> </dependency...原创 2019-08-14 17:47:32 · 371 阅读 · 0 评论 -
springboot 5 -整合多数据源(aop,自定义注解实现)
通过自定义注解,利用aop来实现对指定数据源操作。1、数据库配置server: port: 10000spring: datasource: initialize: false name: MySQL druid: first: url: jdbc:mysql://192.168.199.86:3306/aoshop?...原创 2019-07-30 19:03:11 · 674 阅读 · 0 评论 -
tcp三次握手
所谓三次握手(Three-Way Handshake)即建立TCP连接,就是指建立一个TCP连接时,需要客户端和服务端总共发送3个包以确认连接的建立。在socket编程中,这一过程由客户端执行connect来触发,整个流程如下图所示1)第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入SYN_SENT...原创 2019-07-22 18:52:14 · 359 阅读 · 0 评论 -
int and Integer 包装类
int和Integer的区别Integer=int-2^31——2^31-11、Integer是int的包装类,int则是java的一种基本数据类型2、Integer变量必须实例化后才能使用,而int变量不需要3、Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值4、Integer的默认值是nul...原创 2019-03-08 23:29:28 · 143 阅读 · 0 评论 -
异常归纳总结
首先,Error类和Exception类都是继承Throwable类Error(错误)是系统中的错误,程序员是不能改变的和处理的,是在程序编译时出现的错误,只能通过修改程序才能修正。一般是指与虚拟机相关的问题,如系统崩溃,虚拟机错误,内存空间不足,方法调用栈溢等。对于这类错误的导致的应用程序中断,仅靠程序本身无法恢复和和预防,遇到这样的错误,建议让程序终止。Exception(异常)表示程...原创 2019-03-08 17:31:37 · 237 阅读 · 0 评论 -
Eclipse快捷键大全
Ctrl+1 快速修复(最经典的快捷键)Ctrl+D 删除当前行Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑ 当前行和上面一行交互位置(同上)Alt+← 前一个编辑的页面Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)Alt+Ent...原创 2019-10-12 14:01:09 · 169 阅读 · 0 评论 -
explain分析sql语句执行效率
Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看SQL语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优化语句。Explain语法:explain select … from … [where …]例如:explain select * from news;输出:+----+--------...原创 2019-03-04 10:28:11 · 197 阅读 · 0 评论 -
mybatis是如何防止SQL注入的
1、首先看一下下面两个sql语句的区别:<select id="selectByNameAndPassword" parameterType="java.util.Map" resultMap="BaseResultMap">select id, username, password, rolefrom userwhere username = #{username,jdb...原创 2019-02-28 16:18:29 · 327 阅读 · 0 评论 -
写一段代码在遍历 ArrayList 时移除一个元素?
上题:写一段代码在遍历 ArrayList 时移除一个元素?该问题的关键在于面试者使用的是 ArrayList 的 remove() 还是 Iterator 的 remove()方法。是使用正确的方式来实现在遍历的过程中移除元素,而不会出现 ConcurrentModificationException 异常的示例代码。于是对ArrayList移除一个元素的相关知识点进行了拓展,查...原创 2019-02-15 14:59:23 · 880 阅读 · 0 评论 -
一名优秀程序员,20句金玉良缘
1.作为前端开发者,使用双显示器能大幅提高开发效率。2.学编程最好的语言不是PHP,是English。3.自己做的东西交付之前先测试一遍。4.问别人之前最好先自己百度,google一下,以免问出太低级的问题。5.把觉得不靠谱的需求放到最后做,很可能到时候需求就变了,或者取消了。6.读好书,垃圾书会浪费你时间。7.不要炫技,面向人脑编程更便于维护。8.没事别重复造轮子,你...原创 2019-01-07 10:30:16 · 99 阅读 · 0 评论 -
事务隔离级别
⑴ 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。⑵ 一致性(Consistency) 一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。...原创 2018-11-22 20:07:35 · 123 阅读 · 0 评论 -
Java并发编程:volatile关键字解析
Java并发编程:volatile关键字解析volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java...原创 2018-05-03 10:43:50 · 151 阅读 · 0 评论 -
重写equals方法的时候为什么需要重写hashcode
困扰我很久的问题,一直不明白为什么重写equals()方法的时候要重写hashCode()方法,这次总算弄明白了,作此分享,如有不对之处,望大家指正。一、equals()方法先说说equals()方法。 查看Java的Object.equals()方法,如下:public boolean equals(Object object){ return(this == ob...原创 2019-03-02 15:42:22 · 156 阅读 · 0 评论