我就是BestQiang

活着就是为了改变世界,难道还有其他原因吗?


  • 首页

  • 标签

  • 分类

  • 归档

  • 搜索

Java中数字转字符串方式哪家强?是它!

发表于 2020-10-31 | 更新于 2020-11-02 | 分类于 Java | 评论数: | 阅读次数:
本文字数: 18k | 阅读时长 ≈ 34 分钟

Java中数字转字符串方式哪家强?是它!

Java中数字转字符串搞过吧?四种常用的转换方式,究竟用哪种最优呢,本次对

  • Integer.toString(a)
  • String.valueOf(a)
  • a + “”
  • “” + a

四种数字转字符串的方式进行性能探究和分析,本文稍长,如有谬论和建议,欢迎指出。

阅读全文 »

一起来学习分布式协调服务器Zookeeper

发表于 2020-07-31 | 分类于 Zookeeper | 评论数: | 阅读次数:
本文字数: 88 | 阅读时长 ≈ 1 分钟

欢迎使用Apache ZooKeeper?

Apache ZooKeeper致力于开发和维护可实现高度可靠的分布式协调的开源服务器。

官网: Apache ZooKeeper™

阅读全文 »

一起来学高性能数据同步系统Canal

发表于 2020-07-29 | 更新于 2020-07-30 | 分类于 Canal | 评论数: | 阅读次数:
本文字数: 9.4k | 阅读时长 ≈ 17 分钟

Canal简介

canal [kə’næl],译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费

早期阿里巴巴因为杭州和美国双机房部署,存在跨机房同步的业务需求,实现方式主要是基于业务 trigger 获取增量变更。从 2010 年开始,业务逐步尝试数据库日志解析获取增量变更进行同步,由此衍生出了大量的数据库增量订阅和消费业务。

阅读全文 »

Guava Caches和Guava ListenableFuture学习

发表于 2020-07-27 | 更新于 2020-07-28 | 分类于 Guava | 评论数: | 阅读次数:
本文字数: 19k | 阅读时长 ≈ 34 分钟

1.Guava是什么?

Guava是Google的一组核心Java库,其中包括新的集合类型(例如多图和多集),不可变的集合,图形库以及用于并发,I / O,哈希,缓存,原语,字符串等的实用程序!它广泛用于Google的大多数Java项目中,也被许多其他公司广泛使用。

它的github地址为: https://github.com/google/guava

本次主要参照官方文档,对项目中用到的guava caches和guava listenableFuture进行了学习.

阅读全文 »

关于@Autowired注入空指针问题的解决

发表于 2019-09-19 | 更新于 2020-07-27 | 分类于 Spring | 评论数: | 阅读次数:
本文字数: 4.8k | 阅读时长 ≈ 9 分钟

如果对Spring的生命周期掌握的不熟,遇到此类问题那就难办啦!

阅读全文 »

HeaFirst设计模式-单件模式[单例模式](Singleton Pattern)

发表于 2019-06-20 | 更新于 2020-07-27 | 分类于 设计模式 | 评论数: | 阅读次数:
本文字数: 8.3k | 阅读时长 ≈ 15 分钟

深入分析单件模式

本次主要介绍的内容有

  • 单件模式
  • 单线程下的单件模式实现
  • 多线程下实现单件模式出现的问题分析
  • JMM内存模型
  • 多线程下的单件模式实现的三种方式

这些内容,可以从最根本理解单例模式的代码,不信你就来看看吧。

阅读全文 »

HeadFirst设计模式-工厂模式(基于汽车工厂和手机工厂)

发表于 2019-06-20 | 更新于 2020-07-27 | 分类于 设计模式 | 评论数: | 阅读次数:
本文字数: 11k | 阅读时长 ≈ 20 分钟

工厂模式

本次主要讲述三个内容:

  • 简单工厂模式
  • 工厂方法模式
  • 抽象工厂模式

依赖倒置原则

设计原则:要依赖抽象,不要依赖具体类。

不能让高层组件依赖底层组件,而且,不管高层或底层组件,“两者”都应该依赖于抽象。
这个原则告诉我们,应该重写代码以便于我们依赖抽象类,而不依赖具体类。

指导方针:

  • 变量不可以持有具体类的引用。(如果使用new,就会持有具体类的引用。你可以改用工厂类避开这样的做法。)
  • 不要让类派生自具体类。(如果派生自具体类,你就会依赖具体类。请派生自一个抽象(接口或抽象类))
  • 不要覆盖基类中已实现的方法。(如果覆盖基类已经实现的方法,那么你的基类将就不是一个真正适合被继承的抽象。基类中已实现的方法,应该由所有的子类共享)
阅读全文 »

J2EE基础知识总结

发表于 2019-06-19 | 更新于 2020-07-27 | 分类于 J2EE | 评论数: | 阅读次数:
本文字数: 10k | 阅读时长 ≈ 18 分钟
  • Servlet总结
  • 阐述Servlet和CGI的区别?
    • CGI的不足之处:
    • Servlet的优点:
  • Servlet接口中有哪些方法及Servlet生命周期探秘
  • get和post请求的区别
  • 什么情况下调用doGet()和doPost()
  • 转发(Forward)和重定向(Redirect)的区别
  • 自动刷新(Refresh)
  • Servlet与线程安全
  • JSP和Servlet是什么关系
  • JSP工作原理
  • JSP有哪些内置对象、作用分别是什么
  • Request对象的主要方法有哪些
  • request.getAttribute()和 request.getParameter()有何区别
  • include指令include的行为的区别
  • JSP九大内置对象,七大动作,三大指令
  • 讲解JSP中的四种作用域
  • 如何实现JSP或Servlet的单线程模式
  • 实现会话跟踪的技术有哪些
  • Cookie和Session的的区别
阅读全文 »

NIO源码分析之Selector

发表于 2019-06-08 | 更新于 2020-07-27 | 分类于 NIO | 评论数: | 阅读次数:
本文字数: 31k | 阅读时长 ≈ 57 分钟

NIO源码分析之Selector

NIO的Selector源码第一句话就是 A multiplexor of {@link SelectableChannel} objects.

即 SelectableChannel对象的多路复用器。这很清楚的说明了Selector的作用。

这篇文章主要从以下几个点对Selector进行分析:

  • 选择器(Selector)
  • 可选择通道(SelectableChannel)
  • 选择键(SelectionKey)
  • Selector完整实例
阅读全文 »

NIO源码分析之Buffer

发表于 2019-06-07 | 更新于 2020-07-27 | 分类于 NIO | 评论数: | 阅读次数:
本文字数: 3.8k | 阅读时长 ≈ 7 分钟

NIO源码分析之Buffer

NIO博大精深,探寻NIO的源码后收获很多,在此进行记录。这次主要分析Buffer的源码,主要有以下几个内容。

  • 绝对方法和相对方法(position,limit,capacity属性的含义)
  • Clearing,flipping,and rewinding 的作用
  • 线程不安全
  • 链式调用
  • 常用API源码分析
阅读全文 »
123
BestQiang

BestQiang

技术的进步来自于不懈的追求!
29 日志
20 分类
23 标签
RSS
GitHub CSDN
0%
© 2019 – 2020 BestQiang | 站点阅读时长 ≈ 9:33