小径分叉的花园

Khotyn 的网志,记录生活,记录想法

14 Sep 2013

Spring 事务的传播特性

最近工作中涉及到了一个分布式事务的产品,这个产品是在 Spring 的事务上做的,我对其中涉及到的 Spring 的事务的传播特性不是很了解,所以今天花了一个下午的时间认真了解了一下,写了一堆的测试代码。 进入正题,Spring 的事务的传播特性分为以下的七种: …
03 Aug 2013

从 JVM 中 dump class 的几种方法

前几天在 HotCode 的用户群里面,有同学问起“如何将 JVM 中的 class dump 出来”,当时我下意识的回答就是“可以在 JVM 启动的时候挂一个 agent 上去,然后通过 Instrumentation API 在 class 加载的时候做拦截,把类 dump …
30 Jul 2013

「Sed & Awk」阅读笔记之 Sed 高级命令

上一篇文章中,我介绍了一下 sed 的基础,包括执行方式、地址选择器以及基本命令,在这一篇文章中,我们继续来了解一下 sed 的高级命令,之所以称它们为高级命令,是因为这些命令会改变 sed 的执行流,废话不说,我们来看看这些命令吧: 高级命令 N (Next) 这里要介绍的第一 …
28 Jul 2013

「Sed & awk」阅读笔记之 sed 基础

之前写的一篇文章有提到采用 sed 来匹配不包含连续字符串的行,平时在做日志分析的时候也经常要用到 sed,但是仅仅用了 sed 的字符串替换的功能,没有系统地去学习过 sed 用法,这次找到一本叫「sed & awk」的书,便花时间对 sed 做了系统的学习。 sed 的执行方 …
24 Jul 2013

再论如何匹配不包含连续字符串的行

在前一篇文章中,我讨论过如何使用使用零宽断言来匹配不包含连续字符串的行,这个方法采用了零宽断言这种不怎么常见的正则表达式用法,虽然行之有效,但是总归是个麻烦的方法,而且,零宽断言很多的正则表达式解释器都不支持,用 grep 的话,得加上 -P 参数,让 grep 采用 Perl …
24 Jul 2013

使用零宽断言来匹配不包含连续字符串的行

最近在工作中遇到一个问题,有 N 个字符串,需要用正则表达式去过滤掉不包含某一个特定连续字符串(比如abc)的字符串。 在网上搜罗了一大把,找到了在 Perl 5 的正则表达式中有零宽断言这个东西,非常强大,先来了解下零宽断言倒是是什么? 简单的说,零宽断言是查找在某些内容之前或 …
18 Jul 2013

cURL 使用简介

cURL 这个神器相信很多人都已经用过,简单地说,cURL 就是一个和服务器端通信的工具,至于用什么协议,cURL 支持各种各样的协议,包括 HTTP,FTP,SMTP 等等协议,可以说是应有尽有。 cURL 的可用的参数非常非常多,你能想到的基本上都有,不过一般使用的就那么几个 …
12 Jul 2013

Java 并发编程之 ConcurrentHashMap

此篇文章是作者两年前发布在黄金档的文章。 ConcurrentHashMap 是一个线程安全的 Hash Table,它的主要功能是提供了一组和 HashTable 功能相同但是线程安全的方法。ConcurrentHashMap 可以做到读取数据不加锁,并且其内部的结构可以让其在 …
12 Jul 2013

Java 并发编程 J.U.C 之 Condition

此篇文章是作者两年前发布在黄金档的文章。 在上一篇中,我们了解了下 J.U.C 的锁的获取与释放的过程,这个过程主要通过在 A.Q.S 中维持一个等待队列来实现,其中我们也提到了,在 A.Q.S 中除了一个等待队列之外,还有一个 Condition 队列, …
10 Jul 2013

Java 并发编程 J.U.C 之锁的获取与释放

此篇文章是作者两年前发表在黄金档的文章。 上一篇文章中,我们对 J.U.C 的一些大概的情况做了了解,在这一篇文章我们将来以 ReentrantLock 为例,来分析一下锁的获取和释放的过程,让大家能够对锁的获取和释放的整体过程有一个了解。 一、 …