zlj1217的博客

慢慢加油

java枚举拾遗

前言 java枚举是在开发过程中用的最多的类,这里对java之前的枚举常量类和枚举做了一个分析,并且对枚举相关知识拾遗。 枚举类 在出现枚举之前,通常是一个final类去表示"可枚举"这个概念,比如下面这个列举数字的枚举类 /** * 模拟枚举类 (枚举类:在enum出现之前...

2019-06-14 17:42:11

阅读数 9

评论数 0

redis命令拾遗(字符串操作)

前言 前一段时间一直在忙,拉下了一些知识的学习,现在努力追赶修补中。= = 当然也有一些新的知识的学习,但其实更多的是关于一些知识的拾遗。之前在工作当中发现对redis命令掌握的还不是很完善,所以想花比较少的碎片时间去写一下redis常用命令的拾遗。 redis命令 对这些命令的拾遗记录是在网站:...

2019-05-20 01:12:18

阅读数 8

评论数 0

dubbo基础(五)——dubbo接口的特性设置

dubbo的一些配置 之前的文章中写了dubbo的初步使用和dubbo和springboot的使用整合,这里来总结下dubbo框架暴露接口常用的配置项。 启动时检查 dubbo提供了在服务启动时的一些检查机制,这个机制包括consumer端对服务提供者的检查、dubbo对注册中心的检查。可以看下...

2019-04-01 00:56:03

阅读数 16

评论数 0

dubbo基础(四)——dubbo的配置加载

dubbo的配置 在之前的文章中配置了spring boot和dubbo框架的使用(传送门:springboot使用dubbo框架),看到了把dubbo相关的配置配置在了配置文件中。这里官方文档中也去讲解了对应的dubbo配置的加载。 dubbo的配置加载流程 首先要知道dubbo的配置是在应用...

2019-03-21 23:40:00

阅读数 45

评论数 0

dubbo基础(三)——springboot使用dubbo框架

dubbo集成spring boot spring boot肯定是现在用的做多的开发框架,而dubbo框架是最流行的rpc框架之一,整合springboot和dubbo的使用很有必要。本篇博客还是根据上一篇中的dubbo简单demo的简单示例来整合spring boot。(上一篇传送门:dubbo...

2019-03-20 22:52:01

阅读数 28

评论数 0

dubbo基础(二)——dubbo简单demo

get start 在上一篇中介绍了dubbo诞生的背景和框架的特性:dubbo概念和基本概念,这里就来一个dubbo的简单使用小体验。 dubbo注册中心安装 dubbo中的官方文档的快速启动使用的是multicast广播注册中心暴露服务地址,这里选择的是使用zk作为注册中心,因为zk是很多公司...

2019-03-18 23:56:46

阅读数 27

评论数 0

设计模式——装饰者模式

装饰者模式 装饰者模式是java IO流中使用的一个经典模式,本文会简单介绍装饰者模式的原理和解决的问题,并且以一个咖啡demo来演示装饰者模式。 装饰者模式的定义 装饰者模式遵守的设计原则:开闭原则(类应该支持扩展,而拒绝修改) 装饰者模式通过组合的方式扩展对象的特性,这种方式允许我们在任何时...

2019-03-16 19:29:20

阅读数 14

评论数 0

一次排查$jacocoData的过程

起因 最近在开发过程中,遇到了一个奇怪的现象,在测试环境去利用反射拿一个类的字段时,发现拿到的field数组中多了一个奇怪的变量:$jacocoData,是一个static的boolean数组: 很明显jacoco这种统计代码覆盖率不是我定义在一个业务含义的类中,这时考虑到可能是测试环境中对代...

2019-03-11 00:04:44

阅读数 236

评论数 0

dubbo基础(一)——dubbo的整体简介

入门 dubbo是公司选择rpc框架时首先会去选择的框架,好好了解dubbo框架是一个合格程序员的必经之路。这里作为dubbo的入门篇,把一些概念和官方文档搞清楚一定是最应该开始的步骤。 dubbo框架诞生的背景 dubbo框架满足的需求 dubbo框架的整体架构 ...

2019-03-06 23:36:59

阅读数 20

评论数 0

使用telnet测试dubbo接口初使用

背景 dubbo接口的测试不像controller的http接口那么容易测试,这里去了解了下使用telnet去测试参数没那么复杂的dubbo接口。 正题 首先看看一个dubbo接口的代码: public interface ShopAggregateRemoteService { /**...

2019-02-26 00:09:32

阅读数 101

评论数 0

《并发编程艺术》中的线程状态

线程的状态 线程的状态很早之前就理解过了,最近翻《并发编程艺术》的书时候,看到有个点之前理解的不太对。 书中的线程状态分类 new 初始状态,线程被构建,但是还没有调用start()方法 runnable 运行状态,java中将操作系统中的就绪和运行两种状态笼统称作”运行中“(这里没有网上常见的...

2019-02-24 14:54:20

阅读数 43

评论数 0

并发编程——Thread API

这篇主要介绍Thread API,也是并发编程中的基础 Thread一些常用API 守护线程 守护线程的概念和原理可以见:守护线程和非守护线程 守护线程的一个应用: 比如在做长连接的时候,需要一个心跳检查线程,这个线程就应该设置为后台线程,这样当整个连接关闭时,也会跟随连接线程消亡。 ...

2019-02-22 01:16:53

阅读数 38

评论数 0

并发编程——基础拾遗

并发编程基础拾遗 在看并发的书或者看并发相关的博客时,会发现一些知识点会遗漏或者之前没有看到,这里去总结一下。 创建线程相关 main线程 我们通常会通过写main方法去创建多个线程,main线程是非守护线程,代表方法的入口。这个时候如果用jconsole去看的话,会发现这时也会启用很多后台线程...

2019-02-12 01:44:39

阅读数 45

评论数 0

设计模式——模板方法的一个应用

模板方法 模板方法 很多情况下代码中的业务都可以抽象出一个模板去解决,这时候经常需要用到模板方法。大家经常接触到的是一些业务方法的抽象模板,比如在计算优惠券的流程当中总是有一定的步骤: (1)先计算该商品是否可以拥有优惠券信息 (2)再为该商品绑定优惠券信息 (3)最后回调或者通知向下的流程 今天...

2019-02-02 00:47:06

阅读数 28

评论数 0

设计模式——观察者模式

观察者模式 观察者模式也是我们经常会用到的设计模式之一,这里用一个气象站的一些数据变化通知气象板为例去记录一下观察者设计模式,值得一提的是java中提供了观察者模式的接口和类。 demo 一个气象站通知气象板的小demo,气象站提供温度、气压、湿度的数据给一些气象板提供数据,当气象站发生变化了之...

2018-12-31 02:25:27

阅读数 46

评论数 0

深拷贝和浅拷贝

深拷贝与浅拷贝 对对象的深拷贝和浅拷贝我们并不陌生。 (1)浅拷贝: 在浅拷贝中,如果原型对象的成员变量是值类型,将复制一份给克隆对象;如果原型对象的成员变量是引用类型,则将引用对象的地址复制一份给克隆对象,也就是说原型对象和克隆对象的成员变量指向相同的内存地址。简单来说,在浅拷贝中,当对象被复...

2018-12-24 20:37:34

阅读数 50

评论数 0

java集合类的一些总结——Arrays.asList和Guava操作集合

使用背景 总结一下最近项目中使用到集合的两个点,一个是Arrays.asList这个方法使用的坑,另一个是利用Guava的Sets工具类去求并交集。 使用总结 Arrays.asList的坑 先上结论: Arrays.asList这个方法不适用于基本类型:byte,short,int,long,...

2018-12-16 02:15:39

阅读数 440

评论数 0

ClassNotFoundException和NoClassDefFoundError

背景 极客时间上《Java核心技术36讲》第二讲中提到了一个问题:ClassNotFoundException和NoClassDefFoundError有什么区别?看到这个问题的时候,第一时间想到的就是一个是受检的异常,而另一个是一个Error,但是其实在真正的项目开发中这两个错误都遇到过,都是关...

2018-12-07 17:00:58

阅读数 678

评论数 0

Java36讲总结(一)——Java平台型的理解

背景 最近看了一点点极客时间上的《Java核心技术36讲》,打算把一些自己感兴趣或者不知道的点总结到博客中,方便对一些知识有一些整理和拾遗。 Java平台性的理解 java本身是一种面向对象的语言,有两个特征,一是“write once, run anywhere”,能够非常容易的获取跨平台的能力...

2018-12-02 23:41:26

阅读数 52

评论数 0

并发编程——并发基础:守护线程和非守护线程

前言 最近在复习的时候,发现一个运行线程池拒绝策略demo中的main方法在运行了之后,进程并没有关闭。看了jconsole线程池中的线程都处于waiting状态。这里是跟我设置线程池的线程工厂中的设置线程是否为后台线程有关。 后台线程和非后台线程 后台线程,也叫守护线程,指的是在程序运行的时候后...

2018-11-27 00:40:58

阅读数 336

评论数 0

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