努力奔跑中的coder

源代码的github地址:https://github.com/louyuting

[netty]--分隔符解码器DelimiterBasedFrameDecoder和定长解码器FixedLengthFrameDecoder

TCP以流的方式进行数据传输,上层应用协议为了对消息进行区分,往往采用如下4种方式。 (1)消息长度固定:累计读取到固定长度为LENGTH之后就认为读取到了一个完整的消息。然后将计数器复位,重新开始读下一个数据报文。(2)回车换行符作为消息结束符:在文本协议中应用比较广泛。(3)将特殊的分隔符作...

2017-01-31 17:51:07

阅读数:4444

评论数:1

基于netty的时间服务器demo

最近在在《netty权威指南》,这本书里面的netty的入门程序就是一个基于netty的时间服务器,下面我先给出这个时间服务器的实例,然后对逻辑做一定的说明,这个例子比较简单,只是后面的很多内容是基于这个案例来说明和加深的。服务端TimeServer 启动服务器类package netty.qua...

2017-01-31 12:43:44

阅读数:1757

评论数:1

netty中TCP的黏包/拆包解决之道

这篇博客的主要内容是: 1. TCP黏包/拆包的基础知识 2.没考虑TCP黏包/拆包 导致的异常案例 3.netty中解决TCP黏包/拆包的方法 1.TCP黏包/拆包的原理TCP 是一个“流”协议,所谓流就是没有界限的一串数据。TCP并不了解上层业务数据的具体定义,它只会根据TC...

2017-01-31 12:03:32

阅读数:4794

评论数:0

Java的回调函数

最近有用到guava包的并发类,发现里面大量的用到了回调函数,突然就发现好多地方都用到了回调函数用到的思想,顺便就整理了一下,搞明白了回调函数是个什么东西。 简单点说,回调就是:A类中调用B类中的某个方法c,然后B类中反过来调用A类中的方法d,d这个方法就叫回调方法。这样子说可能刚开始看...

2017-01-29 14:13:51

阅读数:436

评论数:3

J.U.C--locks--Condition

首先来解释一下Condition有什么作用:Condition的作用和Java原生的通过synchronized与wait()和nitofy()/notifyAll()方法相结合实现等待/通知模型的作用是一样的。Condition是一个多线程间协调通信的工具类。 我们都知道synchronized...

2017-01-29 12:15:03

阅读数:222

评论数:0

J.U.C--locks--ReentrantLock

在JDK5之前对共享变量的访问只有synchronized和volatile。在JDK5.0之后增加了显示锁ReentrantLock(可重入锁、独占锁)。需要注意的是,ReentrantLock并不是用来替代synchronized的,而是作为一种高级主题,在内置加锁机制synchronized...

2017-01-28 21:05:24

阅读数:210

评论数:0

J.U.C--locks--AQS分析

看一下AbstractQueuedSynchronizer(以下简称AQS)的子类就可以知道,J.U.C中宣传的封装良好的同步工具类Semaphore、CountDownLatch、ReentrantLock、ReentrantReadWriteLock、FutureTask等虽然各自都有不同特征...

2017-01-26 23:17:38

阅读数:581

评论数:0

J.U.C-包下的类分类

今天在网上发现了一个对J.U.C 包下的并发类进行了分类,主要分为了以下五部分: 并发工具类 显示锁 原子变量类 并发集合 Executor线程执行器 思维导图如下: 后面会根据这五部分对J.U.C做一个大致的原理分析。

2017-01-26 20:14:34

阅读数:687

评论数:0

Java多线程问题总结

这篇博客是在看了微信公众号给我推送的一篇博客之后,然后根据自己的理解做的一个总结,也可以说是在别的blog的一个再总结: 参考博客:http://www.cnblogs.com/xrq730/p/5060921.html 主要是关于Java多线程中的40个问题的总结: 多线程有什么用? 创建...

2017-01-24 16:34:05

阅读数:583

评论数:1

Spring的AOP使用实例

本文主要通过一些实例,一步步逐渐完善一个AOP的例子: 1.简单的AOP日志实现-某方法之前的前后记录日志; 2.简单的AOP日志实现-需要记录方法的运行时间; 3.简单的AOP日志实现-增加检查订单功能; 以上这些例子的AOP相关的配置均使用XML配置实现,bean的配置均使用...

2017-01-24 14:53:23

阅读数:7638

评论数:0

Spring基于Java注解的配置

前面已经讲了自动扫包配置和基于XML的配置,这一节讲基于Java的配置(1)entity 厨师类,增加了唯一idpackage spring.ch2.topic8;import org.springframework.beans.factory.annotation.Value;/** * C...

2017-01-23 20:33:39

阅读数:878

评论数:0

Spring自动检测并装配bean

自动化装配beanSpring从两个角度来实现自动化装配: 1. 组件扫描(component scanning):spring会自动发现应用上下文中所创建的bean。 2. 自动装配(autowiring):spring自动满足bean之间的依赖。组件扫描和自动化装配组合在一起就能发挥出...

2017-01-23 16:43:40

阅读数:391

评论数:0

Spring注解中使用表达式@Value

blog主要包括两点内容: 1.注入普通值。 1.使用@Value注解注入普通值(1)entity 厨师类:package spring.ch2.topic6;import org.springframework.beans.factory.annotation.Value;/** * ...

2017-01-23 15:18:06

阅读数:1420

评论数:0

Spring-基于java的标准注解装配-@Inject和@Named与@autowired和@ Qualifier区别

本节主要包括以下内容: 1. @Inject注解通过属性域注入 2. @Inject注解通过set方法或则其他方法注入 3. @Inject注解通过构造器方法注入 4. @Named注解 我研究了一下,发现了@Inject注解和@autowired注解几乎是一样的,只...

2017-01-23 14:44:52

阅读数:2769

评论数:0

Spring的《注解装配》- @autowired

这篇博客主要介绍通过@autowired 注解来装配bean,包括以下内容: 1. 通过属性域注入 2. 通过set方法或则其他方法注入 3. 通过构造器方法注入 4. @autowired 的required属性 5. @autowired 的限定器@Qualifi...

2017-01-23 14:22:49

阅读数:273

评论数:0

使用UNIX环境下的bash脚本自动化提交仓库到github

我本人一直在写一些玩具代码的时候,有提交到github上备份的习惯,由于这个是我自己写的玩具代码,也不涉及到多个分支,所以每次都是机械的敲一串相同的命令,为了提高生产力,在Mac的UNIX环境下写一个bash脚本,自动化每次提交到github,我每次只需要执行这个脚本就行了,下面给出源码:#!/b...

2017-01-22 23:58:27

阅读数:428

评论数:0

线程安全的单例模式也可以很精彩

这篇博客以多种方式实现单例模式,包括非线程安全、线程安全的单例模式以及线程安全的优化。 饿汉式单例; 懒汉式单例(延迟初始化);(线程不安全) 线程安全的单例-synchronized方法 线程安全的单例-同步代码块 线程安全的单例-显式锁ReentrantLock进...

2017-01-22 22:59:55

阅读数:1497

评论数:1

Spring的《XML显式装配bean》- 默认自动装配

这一blog主要介绍如何在XML中配置默认的自动装配机制 前面两节讲自动装配都是在单独的bean中配置,默认自动装配则是设置在beans 标签里面,表示当前xml默认的自动装配原则:<?xml version="1.0" encoding="UTF-8"...

2017-01-22 20:03:24

阅读数:417

评论数:0

Spring的《XML显式装配bean》- XML自动装配

这一篇blog主要介绍通过xml配置自动装配,主要包括以下内容: 1. 自动装配的第一种方式-byName 2. 自动装配的第二种方式-byType 3. 自动装配的第三种方式-constructor 对于每种方式的介绍均以例子来说明:1.自动装配的第一种方式-byName(1)...

2017-01-22 19:43:53

阅读数:332

评论数:0

Spring的《XML显式装配bean》- 注入Map

这一篇blog主要是介绍向bean中注入map类型的属性 (1)entity 烤炉类:基本没有变化package spring.ch1.topic12;/** * Created by louyuting on 17/1/21 * 烤炉类 */ public class Oven { ...

2017-01-22 13:04:47

阅读数:2283

评论数:0

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