自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 资源 (3)
  • 收藏
  • 关注

原创 memcached的java客户端

http://code.google.com/p/memcached/wiki/Clients Client API's / librarieshttps://github.com/gwhalin/Memcached-Java-Client/downloads  Memcached-Java-Client   by   Greg Whalinhttp://blog.csdn.net/gtu...

2012-02-02 22:42:51 148

原创 memcached协议分析

http://www.gaobo.info/read.php/447.htm  Memcache 协议(中英对照)

2012-02-02 22:41:37 154

原创 memcached安装

Linux下Memcache服务器端的安装服务器端主要是安装memcache服务器端,目前最新版本是memcached-1.4.12.tar.gz。 官网:http://memcached.googlecode.com/另外,Memcache用到了libevent这个库用于Socket的处理,所以还需要安装libevent,较新的1.x版本是libevent-1.4.14b-stable....

2012-02-02 22:23:28 154

原创 线程池--jetty中QueuedThreadPool分析(一)

jetty版本:jetty-6.1.261.由于jetty中的许多组件都实现了LifeCycle接口,先了解下该接口的定义: package org.mortbay.component;import java.util.EventListener;public interface LifeCycle{ public void start() throw...

2012-02-02 11:09:33 647

原创 linux时间操作

一:直接调用系统变量 获得当前时间:date '+%Y-%m-%d %H:%M:%S' 获取今天时期:date +%Y%m%d 获取昨天时期:date -d yesterday +%Y%m%d 获取前天日期:date -d -2day +%Y%m%d 依次类推比如获取10天前的日期:date -d -10day +%Y%m%d二:获取当前系统时间戳 date +%s三:时间戳转为易...

2012-01-12 10:45:17 208

原创 java并发编程--ThreadLocal的用法和分析

ThreadLocal这个类,理解起来比较简单,但是使用时,还是需要一些技巧的,简单介绍如下: 例子1:threadLocal变量一般用法 package concurrent.thread;/** * 技巧: * 1.在当前线程里执行threadLocal.set(value) 相当于 currentThread.threadLocalMap.set(thr...

2012-01-11 22:55:24 79

原创 java并发编程--AbstractQueuedSynchronizer的tryLock()方法分析(六)

tryLock()仅尝试一次获取锁,不管成功与否,都将返回结果。 public boolean tryLock()仅在调用时锁未被另一个线程保持的情况下,才获取该锁。 如果该锁没有被另一个线程保持,并且立即返回 true 值,则将锁的保持计数设置为 1。即使已将此锁设置为使用公平排序策略,但是调用 tryLock() 仍将 立即获取锁(如果有可用的),而不管其他线程当前是否正在等待...

2012-01-05 14:40:38 102

原创 java并发编程--AbstractQueuedSynchronizer的lock()和lockInterruptibly()方法分析(五)

 lock 与 lockInterruptibly比较区别在于: lock 优先考虑获取锁,待获取锁成功后,才响应中断。 lockInterruptibly 优先考虑响应中断,而不是响应锁的普通获取或重入获取。 详细区别: ReentrantLock.lockInterruptibly允许在等待时由其它线程调用等待线程的Thread.interrupt方法来中断等待线程的等...

2011-12-31 11:19:40 257

原创 java并发编程--AbstractQueuedSynchronizer条件锁分析(四)

      前一篇J.U.C的锁的获取与释放的过程,这个过程主要通过在A.Q.S中维持一个等待队列来实现,其中我们也提到了,在A.Q.S中除了一个等待队列之外,还有多个Condition队列(Condition队列的多少取决于ConditionObject对象个数),在了解Condition队列之前,先来看一下Condition是怎么回事:The synchronizer fram...

2011-12-30 17:10:44 99

原创 java并发编程--AbstractQueuedSynchronizer公平锁和非公平锁分析(三)

juc包中,aqs实现的公平锁和非公平锁的最主要的区别是:非公平锁中,那些尝试获取锁且尚未进入等待队列的线程会和等待队列head结点的线程发生竞争。公平锁中,在获取锁时,增加了isFirst(current)判断,当且仅当,等待队列为空或当前线程是等待队列的头结点时,才可尝试获取锁。  1.1 NonfairSync.lock() final void lock() { if...

2011-12-30 14:40:19 199

原创 java并发编程--AbstractQueuedSynchronizer加锁和解锁分析(二)

  在java.util.concurrent.locks包中有很多Lock的实现类,常用的有ReentrantLock、ReadWriteLock(实现类ReentrantReadWriteLock),其实现都依赖java.util.concurrent.AbstractQueuedSynchronizer类,实现思路都大同小异,因此我们以ReentrantLock作为讲解切入点。1. ...

2011-12-29 22:07:14 292

原创 linux的sort命令

sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始!1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。[rocrocket@rocrocket programming]$ cat seq.txtbananaapplepearorange[r...

2011-12-22 13:56:24 145

原创 awk实例一:简单入门

Awk是一种处理结构数据并输出格式化结果的编程语言, Awk 是其作者 "Aho,Weinberger,Kernighan" 的简称。Awk通常被用来进行格式扫描和处理。通过扫描一个或多个文件中的行,查看是否匹配指定的正则表达式,并执行相关的操作。Awk的主要特性包含:1. Awk以记录和字段的方式来查看文本文件2. 和其他编程语言一样,Awk 包含变量、条件和循环3. ...

2011-12-21 14:38:56 154

原创 mysql replication driver 在jdk1.6下失效问题解决

mysql diver包里有relication driver,可以在jdbc层进行读写分离,主写从读 默认的配置方式是指定driver为ReplicationDriver,并改写jdbc url Java代码  jdbc.driverClassName=com.mysql.jdbc.ReplicationDriver  jdbc.url=jdbc:mysql://192...

2011-12-19 10:47:00 226

原创 JAXB--@XmlType注解标注xml生成顺序(四)

默认情况下,Jaxb编组出来的xml中的字段顺序是随机的,你可以使用@XmlType的propOrder属性来指定序列化的顺序。 第一步:定义java类时,使用@XmlType(propOrder = { "id", "name", "age","book"})指定输出顺序。package step2;import java.util.Set;import...

2011-11-03 17:01:59 365

原创 JAXB--@XmlElementWrapper注解和泛型一起使用(三)

当java对象的某个属性使用泛型时,普通对象都没问题,但是遇到HashSet这种集合类封装的元素时,就会出现元素内容序列化不出来的问题,详见如下: 一、示例: 第一步:定义java对象 package step3;import javax.xml.bind.annotation.XmlAccessType;import javax.xml.bind.annotati...

2011-11-03 16:46:23 918

原创 JAXB--@XmlElementWrapper注解(二)

在JAXB标准中,@XmlElementWrapper注解表示生成一个包装 XML 表示形式的包装器元素。 此元素主要用于生成一个包装集合的包装器 XML 元素。因此,该注释支持以下两种形式的序列化。   注:@XmlElementWrapper仅允许出现在集合属性上。 第一步:定义将要转化的Java对象 package step1.wrapper;import...

2011-11-03 15:49:57 813

原创 JAXB--简单应用(一)

 一、简介 1、概念是什么:(Java Architecture for XML Binding) 是一个业界的标准,即是一项可以根据XML Schema产生Java类的技术。该过程中,JAXB也提供了将XML实例文档反向生成Java对象树的方法,并能将Java对象树的内容重新写到XML实例文档。有多种实现。  2、JAXB中有什么:包含“xjc”工具和一个“schemagen”工...

2011-11-03 15:09:37 137

原创 java线程常见的几种死锁模式和解决方法

待续

2011-10-18 23:09:41 149

原创 利用object.wait()和实现生产者和消费者模式

  其实生产者和消费者模式概念很简单,就是生产者将生产出来的产品放在仓库里,然后消费者依次从仓库里取产品消费。归到程序里,这里的仓库就可以用数组,队列或栈来表示。 掌握以下两点后,该模式的实现将不成问题。 1. 首先要明白生产者和消费者之间的并发对象就是存放产品的队列,这样才能把并发方法提炼出来。 2. 其次要掌握object.wait()和object.notifyAll()...

2011-10-18 23:08:42 222

原创 java线程的同步互斥和通讯

 一、同步和锁定 1、锁的原理 Java中每个对象都有一个内置锁。 当程序运行到非静态的synchronized同步方法上时,自动获得与正在执行代码类的当前实例(this实例)有关的锁。获得一个对象的锁也称为获取锁、锁定对象、在对象上锁定或在对象上同步。 当程序运行到synchronized同步方法或代码块时才该对象锁才起作用。 ...

2011-10-18 23:01:02 80

原创 could not find a getter for ... in class ... 异常的解决方案

could not find a getter for cId in class xxx 异常的解决方案 这里提一下:get/set是不是不允许方法名中有连续两个大写字母 public String getODPType(){ return this.oDPType;}public void setODPType(String oDPType){ this.oDPType...

2011-10-11 10:23:26 279

原创 Jboss下jmx-console与web-console配置

JBoss安装成功后,一般可以通过http://localhost:port来访问.Jmx Console和Jboss Web Console 里面可以修改和删除应用的参数,如果不加强安全设置,将会带来严重安全后果。 默认登录jmx-console的账号信息是:admin/admin,因此我们应该修改这个账号信息。 一、JMX安全配置 1: 找到%JBOSS_HOME%/server/def...

2011-10-09 11:12:30 159

原创 不想被淘汰,就别做这八种人!

社会一定会淘汰不争气的人,不想被淘汰就别出现在这八种人之内。    1)八小时之外不再学 习 的人     胡适先生说:人与人的区别在于八小时之外如何运用。有时间的人不能成功 , 挤时间的人才能成功。八小时之内决定现在,八小时之外决定未 来 。什么样的想法什么样的生活。有学习才有选择权,没有知识,要有常识;没有常识,走进教室。不是社会发展太快,是我们思维反应太慢,为什么我们 思维太慢,是我们没有跟...

2011-09-26 17:15:36 91

原创 用shell查看文件中是否包含某字符

查看abc.txt文件中是否包含a字符方法一:grep a abc.txt >/dev/null && echo 'have' $?变量:若执行成功,返回0,失败,返回1。 方法二:if [ `grep -c a abc.txt` -eq 0 ];then echo 'not have'else echo 'have'fi ...

2011-08-30 14:25:42 3074

原创 E297 交换文件写入错误解决办法

    今天用vi打开文件时总是报错:E297 交换文件写入错误,打开其它文件也是如此。网上找了下,原来是磁盘空间满了,清理下空间后,一切ok。 参考文章:      http://vimcdoc.sourceforge.net/vim64/doc/message.html#error-messages  VIM参考手册...

2011-08-19 11:09:35 1494

原创 批量删除数据库表

mysql中批量删除以某个前缀开头的表,没有现成的sql,只能写存储过程,定义如下:delimiter $$create procedure drop_tables_like(pattern varchar(255), db varchar(255))beginselect @str_sql:=concat('drop table ', group_concat(tabl...

2011-07-26 13:34:25 103

原创 mysql查看数据库中存储过程信息

 查询数据库中的存储过程 方法一:         select `name` from mysql.proc where db = 'your_db_name' and `type` = 'PROCEDURE'      方法二:     show procedure status;  查看存储过程或函数的创建代码 show create procedu...

2011-07-26 13:29:31 475

原创 Spring: Document root element "beans", must match DOCTYPE root "null

Spring: Document root element "beans", must match DOCTYPE root "null       Spring的xml配置文件的声明部分:spring 1.x 使用DOCTYPE,而2.x是用schema。      项目中所有bean的均使用2.x方式配置,仔细查看/WEB-INF/lib目录下,居然有两个spring.jar,一个...

2011-07-22 15:09:55 83

原创 Unable to read TLD "META-INF/c.tld" from JAR file

Unable to read TLD "META-INF/c.tld" from JAR file   启动tomcat6时,未报错,执行jsp页面时报以上错误,经分析,网站/WEB-INF/lib目录下多余了javax.servlet.jar,javax.servlet.jsp.jar,servlet-api.jar,jsp-api.jar这几个jar文件,删除后一切ok。 ...

2011-07-22 15:06:43 155

原创 linux服务和启动流程

 1. linux服务(daemon):stand alone(服务可单独启动)和super daemon(通过xinetd统一管理的服务)。 1.1 stand alone daemon启动的脚本放置在/etc/init.d/这个目录中, 启动规则一:/etc/init.d/rsync {start|stop|status|restart|condrestart} 启动规则二...

2011-07-08 13:54:19 110

原创 条件测试的标准

 条件测试的标准Bash中允许测试两种类型的条件:命令成功或失败,表达式成功或失败任何一种测试中,都要有退出状态(返回值),退出状态为0表示命令成功或表达为真,非0则表示命令失败或表达式为假。状态变量$?中保存命令退出状态的值&& 当前面的命令执行正确时(仅有标准输出),就可以接着执行后面的命令,否则略过。|| 刚好相反,当前面的命令执行错误时(...

2011-07-07 17:20:09 161

原创 linux shell 动态生成 数组系列 seq使用技巧

 如果对linux shell 数组不是很熟悉的话,请看上一篇文章:linux shell 数组建立及使用技巧  ,这篇文章主要讲是动态生成数组系列。方法应该很多,我这里主要以一个求和计算的题目为例进行分析。 题目:请用linux shell 写一段脚本,实现从1..1000中所有偶数的和值。 方法一:通过while 循环得到需要的结果:start=...

2011-07-07 15:21:15 113

原创 linux shell 流程控制(条件if,循环【for,while】,选择【case】语句实例

linux shell有一套自己的流程控制语句,其中包括条件语句(if),循环语句(for,while),选择语句(case)。下面我将通过例子介绍下,各个语句使用方法。 一、shell条件语句(if用法)if语句结构[if/then/elif/else/fi] if 条件测试语句thenaction[elif 条件actionelseact...

2011-07-07 15:15:20 104

原创 linux shell 数组建立及使用技巧

 linux shell在编程方面比windows 批处理强大太多,无论是在循环、运算。已经数据类型方面都是不能比较的。 下面是个人在使用时候,对它在数组方面一些操作进行的总结。 1.数组定义 [chengmo@centos5 ~]$ a=(1 2 3 4 5)[chengmo@centos5 ~]$ echo $a1 一对括号表示是数组,数组元素用“空格”符号分割开。...

2011-07-07 15:13:32 93

原创 linux shell “(())” 双括号运算符使用

在刚开始学习inux shell脚本编程时候,对于它的 四则运算以及逻辑运算。估计很多朋友都感觉比较难以接受。特变逻辑运算符”[]”使用时候,必须保证运算符与算数 之间有空格。 四则运算也只能借助:let,expr等命令完成。 今天讲的双括号”(())”结构语句,就是对shell中算数及赋值运算的扩展。 使用方法:语法:((表达式1,表达式2…))特点:1、在双括号...

2011-07-07 14:47:45 112

原创 shell常用语法总结

1 变量小结1.1 变量显示(2种方式): echo $var echo ${var}1.2 变量赋值(等号两侧不能有空格,否则,会当成命令来解析): var="aaaa" 如:> var = "aaa"  -bash: var: command not found 常见用法: var=$(uname -r) #不容易出错 var=`uname -...

2011-07-06 16:30:44 115

原创 shell中的特殊变量

shell中的特殊变量: 变量名 含义$0 shell或shell脚本的名字$* 以一对双引号给出参数列表$@ 将各个参数分别加双引号返回$# 参数的个数$_ 代表上一个命令的最后一个参数$$ 代表所在命令的PID$! 代表最后执行的后台命令的PID$? 代表上一个命令执行后的退出状态 ...

2011-07-06 16:23:28 130

原创 shell script的追踪与调试

shell脚本的追踪和调试 sh [-nvx] scripts.sh参数: -n:不要执行script,仅检查语法的问题; -v:在执行script前,先将script的内容输出到屏幕上; -x:将使用到的script内容显示到屏幕上,非常使用,开发调试利器;使用 -x 是追踪脚本的好方法,它可以在执行前列出所有执行的程序段,如果是程序段落,则输出时,最前...

2011-07-06 13:53:28 130

原创 使用lsof命令查看哪个进程占用某端口

lsof简介 lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接 和硬件。所以如传输控制协议 (tcp) 和用户数据报协议 (udp) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交...

2011-06-30 14:15:27 1424

tcptrace网络socket分析工具

一个很好的监控socket的工具,该工具采用代理的思想实现

2012-07-05

SQLyog_Enterprise_v8.14(含注册码)

很好用的mysql客户端,内含注册码,可无限制使用

2012-05-24

SecureCRT和SecureFX(x86)6.5.3汉化绿色安装版

SecureCRT和SecureFX(x86)6.5.3汉化绿色安装版,仅需要导入一个注册表即可,很好用,找了好久才找到的,分享给大家!

2010-07-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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