博客园 - 小不点啊
uuid:24b78886-0ed1-41c2-8670-e3f31dcf42c4;id=21669
2022-03-05T09:59:16Z
小不点啊
https://www.cnblogs.com/leeSmall/
feed.cnblogs.com
https://www.cnblogs.com/leeSmall/p/15968839.html
jdk8的常用的功能 - 小不点啊
1.求集合的最大最小值 List<Integer> list = new ArrayList<>(); list.add(1); list.add(2); list.add(3); 最大值: Integer max = list .stream().reduce(Integer::max).get(
2022-03-05T09:54:00Z
2022-03-05T09:54:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】1.求集合的最大最小值 List<Integer> list = new ArrayList<>(); list.add(1); list.add(2); list.add(3); 最大值: Integer max = list .stream().reduce(Integer::max).get( <a href="https://www.cnblogs.com/leeSmall/p/15968839.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/12670345.html
InterV 10:JDK8十大新特性转载(不只十个新特性,还有很多) - 小不点啊
原文链接:https://www.cnblogs.com/dennyzhangdd/p/6722445.html 一、十大新特性 1.Lambda表达式 2.Stream函数式操作流元素集合 3.接口新增:默认方法与静态方法 4.方法引用,与Lambda表达式联合使用 5.引入重复注解 6.类型注解
2020-11-08T16:38:00Z
2020-11-08T16:38:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】原文链接:https://www.cnblogs.com/dennyzhangdd/p/6722445.html 一、十大新特性 1.Lambda表达式 2.Stream函数式操作流元素集合 3.接口新增:默认方法与静态方法 4.方法引用,与Lambda表达式联合使用 5.引入重复注解 6.类型注解 <a href="https://www.cnblogs.com/leeSmall/p/12670345.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/11007049.html
InterV 9:源码分析 - 小不点啊
一. Hashmap的原理 源码分析参考文章:http://www.cnblogs.com/xwdreamer/archive/2012/06/03/2532832.html 题目参考文章:http://www.importnew.com/7099.html 总结: HashMap基于hashing
2020-11-08T16:36:00Z
2020-11-08T16:36:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一. Hashmap的原理 源码分析参考文章:http://www.cnblogs.com/xwdreamer/archive/2012/06/03/2532832.html 题目参考文章:http://www.importnew.com/7099.html 总结: HashMap基于hashing <a href="https://www.cnblogs.com/leeSmall/p/11007049.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10890548.html
InterV 8:通讯协议 - 小不点啊
一、三次握手简单例子 A:客户端 B:服务端 第一次握手: A给B打电话说,你可以听到我说话吗? 第二次握手: B收到了A的信息,然后对A说: 我可以听得到你说话啊,你能听得到我说话吗? 第三次握手: A收到了B的信息,然后说我能听到你说话,我要给你发信息啦! 图文说明: 第一次握手:客户端通过调用
2020-11-08T16:34:00Z
2020-11-08T16:34:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一、三次握手简单例子 A:客户端 B:服务端 第一次握手: A给B打电话说,你可以听到我说话吗? 第二次握手: B收到了A的信息,然后对A说: 我可以听得到你说话啊,你能听得到我说话吗? 第三次握手: A收到了B的信息,然后说我能听到你说话,我要给你发信息啦! 图文说明: 第一次握手:客户端通过调用 <a href="https://www.cnblogs.com/leeSmall/p/10890548.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10822663.html
InterV 7:算法(怎样提高算法能力、基础算法题、几道常见的子符串算法题、剑指offer部分编程题) - 小不点啊
怎样提高算法能力: 刷题是可以锻炼的,千万不要让算法成为自己的短板。 1. 刷题是没有技巧的,就是多做题多练多总结,对于很多新手不要去想是不是还有最优解什么的,你做的就是暴力法求解,刷题是很枯燥的,你需要给自己一点鼓励,当把题目解决以后再去考虑其他的,在你不能很快的解决问题的时候,可是试着写点伪代码
2020-11-08T16:33:00Z
2020-11-08T16:33:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】怎样提高算法能力: 刷题是可以锻炼的,千万不要让算法成为自己的短板。 1. 刷题是没有技巧的,就是多做题多练多总结,对于很多新手不要去想是不是还有最优解什么的,你做的就是暴力法求解,刷题是很枯燥的,你需要给自己一点鼓励,当把题目解决以后再去考虑其他的,在你不能很快的解决问题的时候,可是试着写点伪代码 <a href="https://www.cnblogs.com/leeSmall/p/10822663.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10805188.html
InterV 6:数据结构 - 小不点啊
一. Queue(队列) 1. 什么是队列 队列是数据结构中比较重要的一种类型,它支持 FIFO,尾部添加、头部删除(先进队列的元素先出队列),队列结构与日常生活中排队等候服务的模型是一致的,像火车站买票,早排队进入队列的人,早买到票并最先离开(出队);后到来的人只能排在队列的后,后得到服务并后离开
2020-11-08T16:32:00Z
2020-11-08T16:32:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一. Queue(队列) 1. 什么是队列 队列是数据结构中比较重要的一种类型,它支持 FIFO,尾部添加、头部删除(先进队列的元素先出队列),队列结构与日常生活中排队等候服务的模型是一致的,像火车站买票,早排队进入队列的人,早买到票并最先离开(出队);后到来的人只能排在队列的后,后得到服务并后离开 <a href="https://www.cnblogs.com/leeSmall/p/10805188.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10771380.html
InterV 5:数据库与nosql - 小不点啊
一、Mysql 1. 各个数据库存储引擎区别 mysql的存储引擎是针对表进行设置的,一个库的不同表可以设置不同的存储引擎,mysql默认支持多种存储引擎,以适用不同领域的数据库应用需要,主要的几个数据库引擎如下:MyISAM存储引擎: 5.5之前默认的存储引擎,不支持事务、不支持外键,表级锁,内存
2020-11-08T16:31:00Z
2020-11-08T16:31:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一、Mysql 1. 各个数据库存储引擎区别 mysql的存储引擎是针对表进行设置的,一个库的不同表可以设置不同的存储引擎,mysql默认支持多种存储引擎,以适用不同领域的数据库应用需要,主要的几个数据库引擎如下:MyISAM存储引擎: 5.5之前默认的存储引擎,不支持事务、不支持外键,表级锁,内存 <a href="https://www.cnblogs.com/leeSmall/p/10771380.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10708301.html
InterV 4:分布式系统微服务 - 小不点啊
一、架构设计相关 0. 什么是微服务?什么是分布式系统?什么是集群? 微服务:构建分布式系统的一种架构方式, 核心思路是:去中心化。 分布式系统: 一件事情,多系统协同完成。 集群:多机器做同一件事情。比如在淘宝买东西,会有一个商品展示的系统,看到合适的商品了就会下单这是会有一个订单系统,下单完成了
2020-11-08T16:30:00Z
2020-11-08T16:30:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一、架构设计相关 0. 什么是微服务?什么是分布式系统?什么是集群? 微服务:构建分布式系统的一种架构方式, 核心思路是:去中心化。 分布式系统: 一件事情,多系统协同完成。 集群:多机器做同一件事情。比如在淘宝买东西,会有一个商品展示的系统,看到合适的商品了就会下单这是会有一个订单系统,下单完成了 <a href="https://www.cnblogs.com/leeSmall/p/10708301.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10680211.html
InterV 3:流行框架与技术 - 小不点啊
一、 Spring 1) Spring有哪些特点? 应用解耦,简化开发(注解),IOC,AOP,事物管理 2) 使用Spring有什么好处? 1 应用解耦 2 依赖注入 3 AOP 4 事务管理 5 MVC 6 集成开发 3) Spring应用程序看起来像什么? 一些接口及其实现 一些POJO类 一
2020-11-08T16:29:00Z
2020-11-08T16:29:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一、 Spring 1) Spring有哪些特点? 应用解耦,简化开发(注解),IOC,AOP,事物管理 2) 使用Spring有什么好处? 1 应用解耦 2 依赖注入 3 AOP 4 事务管理 5 MVC 6 集成开发 3) Spring应用程序看起来像什么? 一些接口及其实现 一些POJO类 一 <a href="https://www.cnblogs.com/leeSmall/p/10680211.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10665232.html
InterV 2:线程 - 小不点啊
1. 什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。 2. 线程和进程有什么区别? 线程是进
2020-11-08T16:28:00Z
2020-11-08T16:28:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】1. 什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。 2. 线程和进程有什么区别? 线程是进 <a href="https://www.cnblogs.com/leeSmall/p/10665232.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10645817.html
InterV 1:基础 - 小不点啊
一、面向对象 1、面向对象和面向过程的区别 面向对象关注于一个功能实现的行为,将一些行为封装为一个对象来统一调用。 面向过程关注于一个功能实现的步骤,按步骤编程实现功能。 面向对象是以对象为中心的编程思想。 面向过程是一种事件为中心的编程思想。就是分析出解决问题所需的步骤,然后用函数把这些步骤实现,
2020-11-08T16:27:00Z
2020-11-08T16:27:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一、面向对象 1、面向对象和面向过程的区别 面向对象关注于一个功能实现的行为,将一些行为封装为一个对象来统一调用。 面向过程关注于一个功能实现的步骤,按步骤编程实现功能。 面向对象是以对象为中心的编程思想。 面向过程是一种事件为中心的编程思想。就是分析出解决问题所需的步骤,然后用函数把这些步骤实现, <a href="https://www.cnblogs.com/leeSmall/p/10645817.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10426629.html
框架源码系列十二:Mybatis源码之手写Mybatis - 小不点啊
一、需求分析 1、Mybatis是什么? 一个半自动化的orm框架(Object Relation Mapping)。 2、Mybatis完成什么工作? 在面向对象编程中,我们操作的都是对象,Mybatis框架是一个数据访问层的框架,帮我们完成对象在数据库中的存、取工作。 为什么称为半自动化? 关系
2019-03-17T02:58:00Z
2019-03-17T02:58:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一、需求分析 1、Mybatis是什么? 一个半自动化的orm框架(Object Relation Mapping)。 2、Mybatis完成什么工作? 在面向对象编程中,我们操作的都是对象,Mybatis框架是一个数据访问层的框架,帮我们完成对象在数据库中的存、取工作。 为什么称为半自动化? 关系 <a href="https://www.cnblogs.com/leeSmall/p/10426629.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10306672.html
框架源码系列十一:事务管理(Spring事务管理的特点、事务概念学习、Spring事务使用学习、Spring事务管理API学习、Spring事务源码学习) - 小不点啊
一、Spring事务管理的特点 Spring框架为事务管理提供一套统一的抽象,带来的好处有:1. 跨不同事务API的统一的编程模型,无论你使用的是jdbc、jta、jpa、hibernate。2. 支持声明式事务3. 简单的事务管理API4. 能与Spring的数据访问抽象层完美集成 说明:Spri
2019-03-17T02:56:00Z
2019-03-17T02:56:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一、Spring事务管理的特点 Spring框架为事务管理提供一套统一的抽象,带来的好处有:1. 跨不同事务API的统一的编程模型,无论你使用的是jdbc、jta、jpa、hibernate。2. 支持声明式事务3. 简单的事务管理API4. 能与Spring的数据访问抽象层完美集成 说明:Spri <a href="https://www.cnblogs.com/leeSmall/p/10306672.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10236553.html
框架源码系列十:Spring AOP(AOP的核心概念回顾、Spring中AOP的用法、Spring AOP 源码学习) - 小不点啊
一、AOP的核心概念回顾 https://docs.spring.io/spring/docs/5.1.3.RELEASE/spring-framework-reference/core.html#aop 我们先来看一下下面的这张图 说明: 程序运行时会调用很多方法,调用的很多方法就叫做Join p
2019-03-17T02:55:00Z
2019-03-17T02:55:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一、AOP的核心概念回顾 https://docs.spring.io/spring/docs/5.1.3.RELEASE/spring-framework-reference/core.html#aop 我们先来看一下下面的这张图 说明: 程序运行时会调用很多方法,调用的很多方法就叫做Join p <a href="https://www.cnblogs.com/leeSmall/p/10236553.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10228771.html
框架源码系列九:依赖注入DI、三种Bean配置方式的注册和实例化过程 - 小不点啊
一、依赖注入DI 学习目标1)搞清楚构造参数依赖注入的过程及类2)搞清楚注解方式的属性依赖注入在哪里完成的。学习思路1)思考我们手写时是如何做的2)读 spring 源码对比看它的实现3)Spring 源码解读 1. 构造参数依赖注入 org.springframework.beans.factor
2019-03-17T02:53:00Z
2019-03-17T02:53:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一、依赖注入DI 学习目标1)搞清楚构造参数依赖注入的过程及类2)搞清楚注解方式的属性依赖注入在哪里完成的。学习思路1)思考我们手写时是如何做的2)读 spring 源码对比看它的实现3)Spring 源码解读 1. 构造参数依赖注入 org.springframework.beans.factor <a href="https://www.cnblogs.com/leeSmall/p/10228771.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10188408.html
框架源码系列八:Spring源码学习之Spring核心工作原理(很重要) - 小不点啊
目录:一、搞清楚ApplicationContext实例化Bean的过程二、搞清楚这个过程中涉及的核心类三、搞清楚IOC容器提供的扩展点有哪些,学会扩展四、学会IOC容器这里使用的设计模式五、搞清楚不同创建方式的bean的创建过程 一、ApplicationContext实例化bean的过程 1.
2019-03-17T02:52:00Z
2019-03-17T02:52:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】目录:一、搞清楚ApplicationContext实例化Bean的过程二、搞清楚这个过程中涉及的核心类三、搞清楚IOC容器提供的扩展点有哪些,学会扩展四、学会IOC容器这里使用的设计模式五、搞清楚不同创建方式的bean的创建过程 一、ApplicationContext实例化bean的过程 1. <a href="https://www.cnblogs.com/leeSmall/p/10188408.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10134307.html
框架源码系列七:Spring源码学习之BeanDefinition源码学习(BeanDefinition、Annotation 方式配置的BeanDefinition的解析) - 小不点啊
一、BeanDefinition 1. bean定义都定义了什么? 2、BeanDefinition的继承体系 父类: AttributeAccessor: 可以在xml的bean定义里面加上DTD文件里面没有的属性,如 BeanMetadataElement : 定义bean定义来源于哪里,在Be
2019-03-17T02:49:00Z
2019-03-17T02:49:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一、BeanDefinition 1. bean定义都定义了什么? 2、BeanDefinition的继承体系 父类: AttributeAccessor: 可以在xml的bean定义里面加上DTD文件里面没有的属性,如 BeanMetadataElement : 定义bean定义来源于哪里,在Be <a href="https://www.cnblogs.com/leeSmall/p/10134307.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10099503.html
框架源码系列六:Spring源码学习之Spring IOC源码学习 - 小不点啊
Spring 源码学习过程: 一、搞明白IOC能做什么,是怎么做的 1. 搞明白IOC能做什么? IOC是用为用户创建、管理实例对象的。用户需要实例对象时只需要向IOC容器获取就行了,不用自己去创建,从而达到与具体类解耦。 2. IOC是怎么做到的,即它的实现步骤是怎么样的? 2.1 用户配置bea
2019-03-17T02:48:00Z
2019-03-17T02:48:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】Spring 源码学习过程: 一、搞明白IOC能做什么,是怎么做的 1. 搞明白IOC能做什么? IOC是用为用户创建、管理实例对象的。用户需要实例对象时只需要向IOC容器获取就行了,不用自己去创建,从而达到与具体类解耦。 2. IOC是怎么做到的,即它的实现步骤是怎么样的? 2.1 用户配置bea <a href="https://www.cnblogs.com/leeSmall/p/10099503.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10090817.html
框架源码系列五:学习源码的方法(学习源码的目的、 学习源码的方法、Eclipse里面查看源码的常用快捷键和方法) - 小不点啊
一. 学习源码的目的 1. 为了扩展和调优:掌握框架的工作流程和原理 2. 为了提升自己的编程技能:学习他人的设计思想、编程技巧 二. 学习源码的方法 方法一: 1)掌握研究的对象和研究对象的核心概念:搞明白框架都能做什么,是怎么做的。 比如我们要研究Spring的源码,那么研究的对象就是Sprin
2019-03-17T02:46:00Z
2019-03-17T02:46:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一. 学习源码的目的 1. 为了扩展和调优:掌握框架的工作流程和原理 2. 为了提升自己的编程技能:学习他人的设计思想、编程技巧 二. 学习源码的方法 方法一: 1)掌握研究的对象和研究对象的核心概念:搞明白框架都能做什么,是怎么做的。 比如我们要研究Spring的源码,那么研究的对象就是Sprin <a href="https://www.cnblogs.com/leeSmall/p/10090817.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leeSmall/p/10073931.html
框架源码系列四:手写Spring-配置(为什么要提供配置的方法、选择什么样的配置方式、配置方式的工作过程是怎样的、分步骤一个一个的去分析和设计) - 小不点啊
一、为什么要提供配置的方法 经过前面的手写Spring IOC、手写Spring DI、手写Spring AOP,我们知道要创建一个bean对象,需要用户先定义好bean,然后注册到bean工厂才能创建一个bean对象。代码如下: 那么如果我们上面的过程换成配置的方式会是什么样的呢? 经过上面的创建
2019-03-17T02:44:00Z
2019-03-17T02:44:00Z
小不点啊
https://www.cnblogs.com/leeSmall/
【摘要】一、为什么要提供配置的方法 经过前面的手写Spring IOC、手写Spring DI、手写Spring AOP,我们知道要创建一个bean对象,需要用户先定义好bean,然后注册到bean工厂才能创建一个bean对象。代码如下: 那么如果我们上面的过程换成配置的方式会是什么样的呢? 经过上面的创建 <a href="https://www.cnblogs.com/leeSmall/p/10073931.html" target="_blank">阅读全文</a>