2018年博客之星,需要您宝贵的一票!

很荣幸入选了CSDN博客之星候选,既然入选了,那么我还是想全力以赴!虽然比不上其他大佬那么优秀,但还是希望大家多多支持! 请投 003 号:刘志熊 一票 投票地址 https://bss.csdn.net/m/topic/blog_star2018/index ...

2018-12-30 23:21:09

阅读数:1227

评论数:80

Java8-Stream

概述 Java 8 API添加了一个新的抽象称为流Stream,可以让你以一种声明的方式处理数据。 Stream 使用一种类似用 SQL 语句从数据库查询数据的直观方式来提供一种对 Java 集合运算和表达的高阶抽象。 Stream API可以极大提高Java程序员的生产力,让程序员写出高效率、干...

2019-01-16 20:18:52

阅读数:91

评论数:9

Java8-Lambda表达式

概述 Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。 Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。 使用 Lambda 表达式可以使代码变的更加简洁紧凑。 语法 lambda 表达式的语法格式如下: (parameters) -&...

2019-01-16 19:46:00

阅读数:65

评论数:0

LeetCode-判断一棵树是否为平衡二叉树

文章目录题目链接题目描述示例解析代码 题目链接 Problem.110:https://leetcode.com/problems/balanced-binary-tree/ 题目描述 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右...

2019-01-11 19:59:25

阅读数:219

评论数:4

TCP/IP协议-最大传输单元MTU和最大分段大小MSS

一 概述 MTU和MSS MTU和MSS都是TCP/IP协议中的重要概念。其中 MTU解释为网络最大传输单元,它的大小由硬件决定,例如以太网的MTU为1500。 MSS解释为网络传输数据最大值,实际指的是TCP数据部分的传输最大值。 MTU与MSS的关系为 MTU = MSS + TCP首部 ...

2019-01-08 18:50:50

阅读数:186

评论数:4

Java并发编程之CountDownLatch & CyclicBarrier

概述 CountDownLatch类位于java.util.concurrent包下,利用它可以实现线程间同步等功能。 例如,现在有一个主线程和两个子线程,主线程需要等待两个子线程执行结束之后才能执行,那么就可以通过CountDownLatch来实现。 构造器 &am...

2018-12-29 10:41:07

阅读数:285

评论数:6

浅谈volatile在i++情况下失效

概述 如果你对volatile不陌生的话,应该会知道volatile能够保证共享变量对线程的可见性。 那为什么volatile无法保证 i++ 操作的线程可见性呢? 分析 假设i的初始值为0,现有两个线程,分别为线程1和线程2进行 i++ 操作,我们来分析一下为什么会出现错误。 首先,i...

2018-12-25 13:35:47

阅读数:380

评论数:8

Kafka Produce如何保证数据不丢失

概述 Kafka的发送模式可以分为同步模式和异步模式,可以通过参数producer.type=sync和producer.type=async指定。 同步模式 producer.type设置为sync时为同步模式。 此时可以通过配置request.required.acks的值来指定确认机制,分别...

2018-12-25 11:00:22

阅读数:292

评论数:0

HTTP协议的POST与PUT区别

幂等性 对同一URL的多个请求应该返回同样的结果。 区别 PUT和POS都有更改指定URI的含义。但是POST被定义为非幂等的方法,PUT被定义为幂等的方法。 POST : 后一个请求不会把前一个请求覆盖掉,而是新增一个资源。 PUT : 后一个请求会把前一个请求覆盖掉。 ...

2018-12-25 10:12:26

阅读数:319

评论数:2

Mybatis原理剖析之二级缓存(五)

MyBatis的二级缓存是Application级别的缓存,它可以提高对数据库查询的效率,以提高应用的性能。本文将深入分析MyBatis的二级缓存的设计以及实现原理。

2018-12-20 11:17:04

阅读数:645

评论数:12

Mybatis原理剖析之一级缓存(四)

一级缓存是SqlSession级别的缓存,缓存的作用是,一是提升查询速度,二是降低数据库的并发请求压力。

2018-12-18 13:42:14

阅读数:887

评论数:18

LeetCode-二叉搜索树的范围和

给定一个二叉搜索树的根节点,以及两个整数类型的左边界和右边界,计算二叉搜索树中介于左边界和右边界的整数和(包含左边界和右边界)。注:假设二叉搜索树中的节点值唯一。

2018-12-15 15:02:05

阅读数:457

评论数:2

Mybatis原理剖析之自动映射器(三)

自动映射器算是Mybatis的一种特性吧,如果不能搞懂自动映射器的实现原理,那也没法理解Mybatis的其他特性。

2018-12-14 09:44:43

阅读数:737

评论数:14

Mybatis原理剖析之Configuration(二)

Mybatis包含两类至关重要的XML配置文件,分别为mybatis-config.xml和mapper.xml。

2018-12-13 14:28:04

阅读数:456

评论数:4

Mybatis原理剖析之架构分析(一)

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。

2018-12-13 11:02:43

阅读数:603

评论数:4

设计模式之观察者模式

观察者设计模式定义了对象间的一种一对多的组合关系,以便一个对象的状态发生变化时,所有依赖于它的对象都得到通知并自动刷新。

2018-12-12 13:48:18

阅读数:550

评论数:14

设计模式之模板方法模式

模板方法模式在一个父类方法中定义一个算法的骨架,而将一些步骤的实现延迟到子类中。

2018-12-11 19:56:11

阅读数:442

评论数:2

设计模式之外观模式

外观模式的意图是为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。

2018-12-11 13:29:32

阅读数:445

评论数:0

设计模式之原型模式

通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建。

2018-12-11 11:11:22

阅读数:467

评论数:0

设计模式之建造者模式

建造者模式将类的构建与表示进行分离,可以在一定程度上解决这个问题,建造者模式又称创建者模式或Builder模式。

2018-12-11 10:22:20

阅读数:456

评论数:2

提示
确定要删除当前文章?
取消 删除