Kafka 探险 - 源码环境搭建

Kafka 探险 - 源码环境搭建 这个 Kafka 的专题,我会从系统整体架构,设计到代码落地。和大家一起杠源码,学技巧,涨知识。希望大家持续关注一起见证成长!我相信:技术的道路,十年如一日!十年磨一剑! **** 前言在阅读源码之前,首先要做的就是搭建一套源码调试环境,这是最基本的一步,不要觉得麻烦或者简单就不去做,也许你会像我一样搭源码的过程中得到一些教训和经验。同时在后面阅读源码的过程中,很多看不懂的地方 debug 一下也许就明朗了。 记录了搭建 Kafka 源码环境的简单过程...

Read More

Mybatis 常用标签

trim这个标签的作用就是帮你给标签的内容的头部或者尾部 删除 或者 添加 特定字符。 举个例子: 我们的 where 下面经常会有各种条件,假如这些条件我们一个都不传那么我们就应该删除这个 where ,也或者说如果标签里面的内容不为空的话那么就给我们加上 where 123<trim prefix="WHERE" prefixOverrides="AND |OR "> ...</trim> 这段的意思就是: 如果 ...

Read More

Kafka 探险 - 架构简介

Kafka 探险 - 架构简介 这个 Kafka 的专题,我会从系统整体架构,设计到代码落地。和大家一起杠源码,学技巧,涨知识。希望大家持续关注一起见证成长!我相信:技术的道路,十年如一日!十年磨一剑! 简介Kafka 是一种分布式的,基于发布 / 订阅的消息系统。最初被 LinkedIn 开发,并在 2011 年初开源,2012 年 10 月从 Apache 孵化器破壳而出,成为 Apache 的顶级项目。 Kafka 最初被设计的目的是 LinkedIn 流量和运维数据分析。流量数据...

Read More

Kafka 探险 - 生产者源码分析:核心组件

Kafka 探险 - 生产者源码分析: 核心组件 这个 Kafka 的专题,我会从系统整体架构,设计到代码落地。和大家一起杠源码,学技巧,涨知识。希望大家持续关注一起见证成长!我相信:技术的道路,十年如一日!十年磨一剑! 往期文章Kafka 探险 - 架构简介Kafka 探险 - 源码环境搭建 前言我们说 Kafka 是一个消息队列,其实更加确切的说:是 Broker 这个核心部件。为何这么说?你会发现我们可以通过控制台、 Java 代码、 C++ 代码、甚至是 Socket 向 Br...

Read More

Git 骚操作

跳到之前的分支1git checkout - 查看历史12345678# 每个提交在一行内显示git log --oneline# 在所有提交日志中搜索包含「homepage」的提交git log --all --grep='homepage'# 获取某人的提交日志 git log --author="Maxence" 修正比方说想在提交 fed14a4c 加上一些内容。 git 提交分支 123456git add .git ...

Read More

MapStruct 简易教程

使用场景我们经常会遇到 DO 和 DTO 以及 DTO 和 VO 之间的转换,一般我们的做法是使用 BeanUtil.copy 然后对于一些特殊的字段进行 Set 。但是这样做有几个痛点: 其实这个过程很没有技术含量,基本都是 CV 操作 在业务代码中做这种类型转换的业务无关代码,让代码显得比较杂乱 如果是几万的 beanList 的拷贝会有性能问题 希望能抽出工具类但是好像也不太合适,每个都是一个工具类,而且对于复杂的转换垃圾代码太多 希望能够通过简单的注解或者 xml 配置完成这些操...

Read More

Logback 日志框架详解

配置 pattern 符号 功能 性能损耗 %c 打印全类名 大 %n 换行,一定要在 pattern 的最后加上不然展示的就是一行了 小 %ex 打印出异常: 1. %ex{full} 全部异常堆栈 2. %ex{short} 最上面一层堆栈 小 %d{MM-dd HH:mm:ss} 格式化时间 小 %level 打印日志级别 小 %m 打印方法名称 小 举个简单的例子: 12345678910<property name="CONSO...

Read More

JavaWeb 基础

Springbean 属性注入方式 通过 setter 方法,直接使用 property 标签;p 标签,1. 导入 p 空间 2. 使用 p:属性 = ‘xx’ 使用 property 是会进行自动 的类型转换,起作用的就是 PropertyExtend。 如果要对属性赋值为 null 的话,我们不能使用 name ,value ,必须将类型写在标签体里面 如果注入的是一个对象的话那么需要用 ref 引用 如果我们需要注入一个新对象,而不是 ioc 中原有的那么我们就在 p...

Read More

Spring 文档阅读笔记(一)

Spring 文档阅读笔记 一1.2 概览1.2.1 配置元数据元数据配置就是能够让你明白如何进行应用开发,容器的实例化,配置,以及应用中对象的组织 传统配置元数据的方式就是使用 xml,在我们大部分的章节中会介绍一些关键的概念和 Ioc 容器的特性 当然目前不仅仅支持 xml ,目前推荐的是 Java 代码的方式以及注解方式: 2.5 开始支持注解驱动 3.0 开始建议使用 JavaConfig 方式配置 具体可以看看 @Configuration, @Bean, @Import, ...

Read More

Spring 源码分析 - IOC (一)

Spring 源码分析 - IOC (一)一、IOC 启动概览整个调试过程基于注解驱动的 Spring Freamwork 5.x 源码 整个启动大致的流程可以分为设置 bean 工厂,注册 beanDefinitions ,启动容器 三部分。 123456789101112131415public AnnotationConfigApplicationContext(Class<?>... annotatedClasses) { /* 调用无参的构造方...

Read More


Powered by Hexo and Hexo-theme-hiker

Copyright © 2015 - 2021 昨夜凛雨 All Rights Reserved.

UV : | PV :