java 日志体系
摘要:在编程中,日志可以快速的帮我们进行定位到异常信息以及生产问题的分析,但是由于java 日志框架繁多并且不同系统中获取采用的是不同的日志框架,就导致了对于日志的管理以及分析是一个很繁重的事情,那么有没有一个框架用于解决这一个现象,来规范统一项目的日志处理,由此 SLF4J应用而生; SLF4J 提供了
阅读全文
posted @
2019-05-09 14:18
iscys
阅读(214)
推荐(0)
DUBBO 服务导出实现
摘要:在阅读此文章之前,我希望阅读者对Spring 扩展机制的有一定的了解,比如:自定义标签与Spring整合, InitializingBean 接口,ApplicationContextAware,BeanNameAware, BeanFactory 接口所起到的作用 ;从来没了解过的,请看我之前的关
阅读全文
posted @
2018-12-25 23:54
iscys
阅读(1434)
推荐(0)
ReentrantLock 实现
摘要:ReentrantLock 实现: 我们主要看一下非公平锁的实现: /** * Performs lock. Try immediate barge, backing up to normal * acquire on failure. */ final void lock() { //cas 原子
阅读全文
posted @
2018-12-20 22:33
iscys
阅读(127)
推荐(0)
JVM
摘要:java 虚拟机规范中,将其管理的内存划分为: 1.方法区:用于存储类型信息,常量,静态变量等信息,不等价于永久带,只是 HotSpot 虚拟机用永久带(元数据)来实现了方法区,其他虚拟机并没有永久带的概念; 2.堆:虚拟机管理的最大一块内存区域,几乎所有的对象实例都在这里分配,通过-Xmx -Xm
阅读全文
posted @
2018-12-04 23:09
iscys
阅读(153)
推荐(0)
jdk1.8 HashMap的实现
摘要:在了解HashMap之前,我们先进行位运算知识的补充 1.Java 位运算:(都是二进制的运算) << :相当于乘以2的倍数 >1<<4 =1*2*2*2*2 =16 >> :相当于处以2的倍数 > 8>>3 = 8/8 =1 >>> :空位都用0 来补位; 2的次幂-1 的二进制低位都是1; 1-
阅读全文
posted @
2018-11-24 15:03
iscys
阅读(174)
推荐(0)
LinkedList 源码实现
摘要:闲暇之余,准备将Java 一些常用的数据结构进行重新的剖析,并记录博客比如LinkedList ,HashMap ,HashTable ,以及并发包所引入的集合,在博客中会陆续更新 start 哈哈,引入一张图片,链子,我们生活中常见,我们可以看到每一个扣的前后都是扣,串了起来,我们把每一个扣当作成
阅读全文
posted @
2018-11-23 22:45
iscys
阅读(118)
推荐(0)
SpringBoot 初始化流程以及各种常见第三方配置的源码实现
摘要:带着这几个问题去分析SpringBoot 初始化以及扩展机制实现 1.容器何时被创建,并默认配置了什么? 2.Spring 容器依赖于哪个后置处理器进行bean 容器的装配? 3.Spring 如何进行第三方的扩展包括@import注解 DeferredImportSelector 接口 以及 Im
阅读全文
posted @
2018-11-14 23:46
iscys
阅读(540)
推荐(0)
Java 重要知识点,踩过的坑
摘要:(1),关于 LinkedHashMap TreeMap HashMap 之间的区别: HashMap 是无序的,LinkedHashMap 由于内部维护了一个记录的链表,数据操作的前后顺序都会在链表上下节点保存着; 而TreeMap 内部的数据是有序的 分析如下: 1.LinkedHashMap
阅读全文
值传递与引用传递
摘要:基本数据类型 (属于值传递) 整型:byte,short,int,long 浮点型:float,double 字符型:char 布尔型:boolean 引用数据类型 (引用传递) 数组 类 接口 基本数据类型 (属于值传递) 整型:byte,short,int,long 浮点型:float,doub
阅读全文
posted @
2018-10-13 16:21
iscys
阅读(181)
推荐(0)
java 基础之--java动态代理
摘要:所谓的Dynamic proxy 就是运行时生成的class,在生成它时,你必须给它提供一组interface 对象,那么该class就宣称他实现了该interface,生成它的实例你必须提供一个handler,由它接管实际的工作,让我们看看proxy 的源码: 通过源码的实例可以得出来,要实现Ja
阅读全文
posted @
2018-10-05 17:52
iscys
阅读(144)
推荐(0)
java 基础之--反射详解
摘要:java 反射绝大部分都位于 java.lang.reflect package 中;常用的类就是: Class 对象生成的三种方式: 使用反射进行方法的调用: This is Example 反射通过构造函数的方式进行创建对象的两种方式 this is Example Java 反射如何调用私有的
阅读全文
posted @
2018-10-04 18:57
iscys
阅读(180)
推荐(0)
java 基础之--nio 网络编程
摘要:在传统的Java 网络编程中,对于客户端的每次连接,对于服务器来说,都要创建一个新的线程与客户端进行通讯,这种频繁的线程的创建,对于服务器来说,是一种巨大的损耗,在Java 1.4 引入Java nio 引入了 selector channel buffer 对此操作进行重新的定义: 服务端: 客户
阅读全文
posted @
2018-10-04 16:48
iscys
阅读(177)
推荐(0)
java 基础之--传统网络编程
摘要:什么是socket ? 下面的基于Java 传统的tcp/ip 的代码编写,实现了服务器与客户端的通信 服务端代码: 客户端代码:
阅读全文
posted @
2018-09-30 22:42
iscys
阅读(170)
推荐(0)
java 基础之--类加载器的过程
摘要:先来段代码,大家瞧瞧运行pritln的结果是什么?(认真想一想哦😯) 开篇: 1.java virtual machine 与程序的生命周期 2.关于类的加载,连接与初始化 类加载器详解 .java program 对类的主动使用方式,会导致类的初始化,其他方式都不会进行类的初始化。 /** *
阅读全文
posted @
2018-09-29 00:07
iscys
阅读(139)
推荐(0)
XML 解析技术
摘要:xml 解析方式有两种: dom 解析和 sax 解析; 针对着两种解析方式,有三种解析器: dom 解析XML : jaxp 解析xml jaxp 解析器在 jdk的 javax.xml.parsers 包中; 针对dom 解析提供的类 : 获取上下文Document 对象: 查找元素:(与js
阅读全文
posted @
2018-09-28 20:00
iscys
阅读(190)
推荐(0)
基于java NIO 的服务端与客户端代码
摘要:在对java NIO selector 与 Buffer Channel 有一定的了解之后,我们进行编写java nio 实现的 客户端与服务端例子: 服务端: 客户端例子:
阅读全文
posted @
2018-09-22 14:08
iscys
阅读(377)
推荐(0)