- 博客(17)
- 收藏
- 关注
原创 linux几种常见的文件内容查找和替换命令
vi命令下的查找和替换vi下的查找 /pattern:向下查找 ?pattern:向上查找 n:继续向同一方向查找 N:继续向相反方向发展 /^name:查找以name开始的行 /name$:查找以name结束的行 //^name:查找^name字符串vi下的替换 :s/old/new/ 替换当前行第一个old为new :s/old/new/g ...
2018-06-27 16:44:17
2495
原创 关于DOM和SAX
DOM:基于文档驱动需要加载整个文档,并用树状结构存储在内存中。可随机访问元素节点,效率较高。适用于修改文档。不适用于大文件,容易导致内存溢出。#SAX:基于事件驱动:按顺序读取文件,不会一次性全部读取。只能按顺序读取文件,不能修改文档。适用于读取大文件。...
2018-06-26 10:41:43
168
翻译 关于Java的设计模式
一、设计原则开闭原则:对扩展开放,对修改关闭。里氏代换原则:父类可以被子类代替,即继承。依赖倒转原则:针对接口编程,依赖于抽象而不依赖于具体。接口隔离原则:使用多个隔离的接口来降低耦合。迪米特法则:一个实体应当尽量少地与其它实体间发生相互作用,使得系统功能模块相互独立。合成复用原则:尽量使用合成/聚合的方式,而不是使用继承,继承容易破坏类的封装性。 二、设计模式工厂模...
2018-06-07 15:32:15
189
翻译 关于mina框架
一、适用场景:Mina是基于TCP/IP、UDP/IP协议栈的通信框架。适用于快速开发高性能、高扩展性的网络应用。底层依赖的主要是Java NIO库,上层提供的是基于事件的异步接口。二、整体结构:IoService:最底层服务,负责具体IO相关工作。如IOSocketAcceptor和IOSocketChannel,它们分别对应TCP协议下的客户端和服务端的IoService。IoS...
2018-06-07 13:20:36
207
原创 完全二叉树结构创建小顶堆
public static void heapSort(int[] A) { int len = A.length; int start = len / 2 - 1; for (int i = start; i >= 0; --i) { siftDown(A, i); } } ...
2018-06-06 20:41:14
652
原创 计算1-N中第K小的数字(按字典序排序)
public static int calK(int n, int k) { if (k > n) { return 0; } int target = 1; for (int i = 2; i <= k; i++) { target = next(target, n...
2018-06-06 17:26:55
2609
2
原创 关于SpringCloud
服务注册与发现:eureka。服务消费:Feign。断路器:在一个请求需要调用多个服务的场景下,较低层的服务如果出现故障,会导致连锁故障。当对一个服务的调用的不可用达到一个阈值后,断路器打开。可以避免连锁故障,fallback方法返回一个固定值作为响应。如FeignClient注解自带的fallback。路由转发和过滤器:zuul。分布式配置中心:spring cloud config ...
2018-06-06 12:05:20
94
翻译 关于Java内存回收机制
一、内存泄漏什么是内存泄露? 无用对象持续占有内存或无用对象内存得不到及时的释放,从而造成内存空间的浪费成为内存泄漏。易发场景: a.静态集合类引起内存泄漏:静态类型集合中的对象已被释放但集合本身仍然存活造成集合占有的内存得不到释放。 b.集合中对象属性被修改后,调用remove后无效: “` public static void main(String[] args)...
2018-06-05 20:15:30
346
翻译 Java的三种代理
一、静态代理实现方法:代理对象与目标对象实现统一的接口或者继承统一的父类。demo:public interface IService { public void method(String argument);}public class ServiceImpl implements IService{ @Override public void me...
2018-06-05 19:33:22
146
翻译 关于MySQL索引
所有存储引擎支持每个表至少16个索引,总索引长度至少为256字节。唯一索引联合索引全文索引索引只能提高查询效率;索引过多,反而会降低insert、update和delete性能。复合索引中只要有一列是NULL值,则该列对应的联合索引无效。每次查询只能使用一个索引。运算、NOT IN、‘%like%’都不会使用索引。考虑列中值的分布,索引的列的基数越大,索引的效果越好。MySQL...
2018-06-01 20:38:06
132
翻译 关于MySQL的Innodb引擎
一、特性Innodb引擎提供了对数据库ACID事务的支持,并且还提供了行级锁和外键的约束。可以利用数据日志来对数据进行恢复。会在内存中建立缓冲池,用于缓冲数据和索引。批量并发执行update语句时效率较高。不支持全文搜索启动较慢二、索引数据结构(B+树)主键索引树。辅助索引树。聚簇索引:叶子节点存储数据行,非数据地址,区别于MyISAM。...
2018-06-01 16:16:23
138
翻译 关于数据库事务的分类和特性
一、特性原子性:事务中的所有操作要么全部成功,要么全部失败。持久性:事务一旦提交,对数据库的影响就是持久性的。一致性:事务必须使数据库从一个一致性状态转换为另一个一致性状态。也就是事务执行前后状态保持一致。隔离性:多个并发事务之间相互隔离。 二、隔离级别脏读:并发事务之间一个事务读取了另一个事务还未提交的数据。不可重复读:并发事务间一个事务多次读取,分别读取了另一个事务...
2018-06-01 15:11:58
1210
翻译 关于kafka的原理和使用
一、kafka的特性高吞吐量,低延迟:kafka每秒可以处理几十万条信息,它的延迟最低只有几毫秒。每个topic可以分为多个partition,consume group 对partition进行消费。可扩展性:kafka集群支持热扩展。 3.容错性:允许集群中节点失败(若副本数量为n,则允许n-1个节点失败)。 4.高并发:支持上千个客户端并发访问。...
2018-05-30 11:00:42
179
1
原创 关于synchronized关键字的用法
关于synchronized关键字的用法修饰代码块,作用的对象是调用这个代码块的对象修饰方法,作用的对象是调用此方法的对象修饰静态方法,作用的对象是此类的所有对象修饰类,作用的对象是此类的所有对象...
2018-05-29 11:37:56
158
原创 欢迎使用CSDN-markdown编辑器
MySql事务隔离级别SQL标标准定义的四类隔离级别Read Uncommitted(读未提交) 所有事务都可以看到其它事务尚未提交的执行结果,会引发脏读、幻读和不可重复读问题。Read Committed(读已提交) 所有事务只能读取其它事务已经提交的结果。但是由于同一事务的其它实例在本实例处理期间可能会有新的commit,所有会有幻都和不可重复读问题。Repeatable Read
2017-11-27 12:09:01
120
原创 hashcode()与equals()
hashcode()与equals()1、两者的关系equals()相等的两个对象hashcode() 一定相等equals()不等的两个对象hashcode()有可能相等hashcode()是用来查找元素存储位置的索引函数equals()是用来根据元素的大概位置来查找相同元素的2、equals()的覆盖原则和方法自反性对称性一致性地址相同,返回trueobj为空返回false
2017-11-17 12:21:05
148
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人