自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(162)
  • 收藏
  • 关注

原创 js this理解

http://www.jb51.net/article/16235.htm

2015-01-22 16:23:38 148

原创 Linux 的启动流程(转)

http://www.ruanyifeng.com/blog/2013/08/linux_boot_process.html

2014-12-05 09:58:28 124

原创 深入浅出Java并发包—锁机制(转)

前面我们看到了Lock和synchronized都能正常的保证数据的一致性(上文例子中执行的结果都是20000000),也看到了Lock的优势,那究竟他们是什么原理来保障的呢?今天我们就来探讨下Java中的锁机制!Synchronized是基于JVM来保证数据同步的,而Lock则是在硬件层面,依赖特殊的CPU指令实现数据同步的,那究竟是如何来实现的呢?我们一一看来!一、synchroni...

2014-07-30 13:11:32 171

原创 自旋锁、排队自旋锁、MCS锁、CLH锁(转)

自旋锁(Spin lock)自旋锁是指当一个线程尝试获取某个锁时,如果该锁已被其他线程占用,就一直循环检测锁是否被释放,而不是进入线程挂起或睡眠状态。自旋锁适用于锁保护的临界区很小的情况,临界区很小的话,锁占用的时间就很短。简单的实现import java.util.concurrent.atomic.AtomicReference;public class SpinLo...

2014-07-30 12:42:29 123

原创 java线程池

一 简介线程的使用在java中占有极其重要的地位,在jdk1.4极其之前的jdk版本中,关于线程池的使用是极其简陋的。在jdk1.5之后这一情况有了很大的改观。Jdk1.5之后加入了java.util.concurrent包,这个包中主要介绍java中线程以及线程池的使用。为我们在开发中处理线程的问题提供了非常大的帮助。二:线程池线程池的作用:线程池作用就是限制系统中执行线程的数...

2014-07-28 10:05:08 82

原创 java 书

The Art of Multiprocessor ProgrammingWhat every programmer should know about memory深入分析java web技术

2014-07-24 15:08:11 116

原创 多线程之false sharing问题(转)

在多核快速发展的现在,利用多线程技术提高CPU设备的利用率已经成为一种趋势。然而多核计算机体系架构和单核有了很大的变化,在多线程编程中会碰到一些意想不到的问题,比如多核中非常典型的false sharing问题。下文会非常详细的揭示false sharing产生的根源,以及何如避免来提高程序的性能。        先来了解一下典型的多核架构,每个CPU都有自己的Cache,如果一个内存中的变...

2014-07-22 14:17:53 145

原创 TCP协议三次握手过程分析 附四次握手

TCP(Transmission Control Protocol) 传输控制协议TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent...

2014-07-14 09:58:37 140

原创 svn merge

使用svn几年了,一直对分支和合并敬而远之,一来是因为分支的管理不该我操心,二来即使涉及到分支的管理,也不敢贸然使用合并功能,生怕合并出了问题对团队造成不良影响,最主要的原因是,自己对分支的目的和合并的方法不甚了解,这才是硬伤。 最近由于适配机型的需要(本人从事手机客户端的开发),需要经常接触分支和合并两项工作,突然发现这玩意整不明白很难开展工作,遂这两天着重研究了一下,有点收获,怕以后...

2014-06-19 10:02:19 86

原创 http协议:Web前端-HTTP Cache-control/浏览器缓存(转)

HTTP协议分别在 1.0 / 1.1 两个时代推出了 Expires / Cache-control 两种cache策略,这里我们无需了解全部的细节,无需记住整个RFC内容,但是当我们需要使用HTTP cache策略时,我们需要注意以下细节:Expires 是HTTP 1.0 那个时代的东西了,目前来看,可以不使用了,因为HTTP 1.0 的user agent占有率在 0.1% 以下(我们主...

2014-05-16 23:45:26 162

原创 安装maven插件

 maven是一款优秀的构建工具,方便用户编译,测试,打包,发布等等,以前由于一些原因,没有使用maven工具,但是对这款工具向往已久,今天花了几个小时终于在eclipse上装上了这个插件。 由于在线安装 m2eclipse 不仅速度慢,而且经常出现错误,因此我用的离线安装的方式。我的环境: eclipse indigo 3.7maven 插件版本: 1.4安装这个插件必须...

2014-05-11 16:25:12 103

原创 安装Mondrian

Mondrian and OLAPMondrian is an OLAP engine written in Java. It executes queries written in the MDX language, reading data from a relational database (RDBMS), and presents the results in a multidi...

2014-04-11 10:48:10 218

原创 如何与你的老大沟通?(转)

如何与你的老大沟通?看了CSDN冯大侠的《老大,我想说两句》,深有感触,因为我也曾经遇到过类似的情况,深知这种情况下个人的郁闷感觉。 但现实毕竟是“老大”就是老大,你的前途、薪水都掌握在老大手里,抱怨和郁闷都不能解决问题,反而会使问题更加恶化;而且既然是老大,那么必然有过人之处(不管是技术、还是有关系、还是会说话,那都是老大的优势)。因此,我们要学会和老大沟通交流的技巧(当然这些技巧...

2014-03-13 17:21:12 171

原创 缓存算法

提到缓存,有两点是必须要考虑的:(1)缓存数据和目标数据的一致性问题。(2)缓存的过期策略(机制)。     其中,缓存的过期策略涉及淘汰算法。常用的淘汰算法有下面几种:(1)FIFO:First In First Out,先进先出(2)LRU:Least Recently Used,最近最少使用(3)LFU:Least Frequently Used,最不经常使用      注意LRU和LFU...

2014-03-13 17:11:53 172

原创 NoSql 笔记

看了一些关于NoSql的文章,记录下自己的理解,方便以后重温下。 一些链接:Cassandra - 一个分散的结构化存储系统8种Nosql数据库系统对比 NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关联式数据库的数据库管理系统的统称。这句话是维基百科上的解释。 现在大数据,云计算这些热门词汇屡见不鲜,但是归根结底,这些都是对海量数据的...

2014-02-18 17:39:35 109

原创 mysql explain用法

补充一点:  id 就是 sql 语句中 select 出现的顺序号, 表明查询的先后关系有可能是这样的顺序:1,3,2,4,5,7,6 先看一个例子:mysql> explain select * from t_order; +----+-------------+---------+------+---------------+------+---------...

2014-02-14 11:53:49 97

原创 线程状态

   图中“等待队列” 可替换成 “等待池状态”锁池:假设线程A已经拥有了某个对象(注意:不是类)的锁,而其它的线程想要调用这个对象的某个synchronized方法(或者synchronized块),由于这些线程在进入对象的synchronized方法之前必须先获得该对象的锁的拥有权,但是该对象的锁目前正被线程A拥有,所以这些线程就进入了该对象的锁池中。 等待池:假设...

2013-08-26 16:17:08 133

原创 (转)分布式设计与开发(二)------几种必须了解的分布式算法

分布式设计与开发中有些疑难问题必须借助一些算法才能解决,比如分布式环境一致性问题,感觉以下分布式算法是必须了解的(随着学习深入有待添加):Paxos算法一致性Hash算法Paxos算法1)问题描述分布式中有这么一个疑难问题,客户端向一个分布式集群的服务端发出一系列更新数据的消息,由于分布式集群中的各个服务端节点是互为同步数据的,所以运行完客户端这系列消息指令后各服务端节点...

2013-08-12 11:10:30 90

原创 (转)分布式设计与开发(一)------宏观概述

在IDF05(Intel Developer Forum 2005)上,Intel首席执行官Craig Barrett就取消4GHz芯片计划一事,半开玩笑当众单膝下跪致歉,给广大软件开发者一个明显的信号,单纯依靠垂直提升硬件性能来提高系统性能的时代已结束,分布式开发的时代实际上早已悄悄地成为了时代的主流,吵得很热的云计算实际上只是包装在分布式之外的商业概念,很多开发者(包括我)都想加入研究云计算...

2013-08-12 10:54:29 69

原创 部署到jboss服务器 中文乱码问题

最近项目中碰到一个问题: 问题场景:服务器A,服务器B在同一个CAS管理下,A向B发送一个包涵中文字符的链接,在B系统网页显示时中文显示乱码问题分析:A向B发送链接时,因为用户没有登录B系统,B系统会重定向到CAS验证中心,在重定向过程中会把参数用URLEncode重新编一次码:            "中文" urlencode 后转化成  %E4%B8%AD%E6%96%87...

2013-07-05 15:06:12 741

原创 使用 Jersey 和 Apache Tomcat 构建 RESTful Web 服务

RESTful Web 服务简介REST 在 2000 年由 Roy Fielding 在博士论文中提出,他是 HTTP 规范 1.0 和 1.1 版的首席作者之一。REST 中最重要的概念是资源(resources),使用全球 ID(通常使用 URI)标识。客户端应用程序使用 HTTP 方法(GET/ POST/ PUT/ DELETE)操作资源或资源集。RESTful Web 服务是...

2013-04-09 17:01:49 90

原创 UML(2)

详解UML中的6大关系(关联、依赖、聚合、组合、泛化、实现)类别:.Net + C# | 浏览(11212) | 2010-10-24 22:00:49更多9<iframe id="cproIframe3" src="http://cpro.baidu.com/cpro/ui/uijs.php?rs=0&tu=u712809&...

2013-04-08 11:01:18 104

原创 分布式缓存memcached

memcached服务器cacheperl算法last.fm 目录(?)[+] memcached的分布式正如第1次中介绍的那样, memcached虽然称为“分布式”缓存服务器,但服务器端并没有“分布式”功能。 服务器端仅包括 第2次、 第3次 前坂介绍的内存存储功能,其实现非常简单。 至于memcached的分布式,则是完全由客户端程序库实现的。 这种分...

2013-03-26 10:20:17 61

原创 wsimport java.lang.reflect.UndeclaredThrowableException 异常

异常信息:Exception in thread "main" java.lang.reflect.UndeclaredThrowableException        at $Proxy25.required(Unknown Source)        at com.sun.tools.xjc.generator.bean.field.AbstractField.annotate...

2013-03-19 17:20:17 526

原创 用 Java 技术创建 RESTful Web 服务

简介JAX-RS (JSR-311) 是为 Java EE 环境下的 RESTful 服务能力提供的一种规范。它能提供对传统的基于 SOAP 的 Web 服务的一种可行替代。在本文中,了解 JAX-RS 的主要组件。本文用一个例子展示了一个企业如何使用 JAX-RS 内的功能以一种 Restful 的方式公开员工的联系信息。 回页首背景多年来,开发人员使用各种工具在其 J...

2013-03-18 15:33:28 99

原创 在windows下安装apache+php+mysql

第一、安装并配置APACHE(安装到D:\phpapache\Apache2.2)      1、安装时默认安装,Network Domain, Server Name 我填写我的计算机名,Administrator's Email Address区域填你的邮件地址      2、安装完后在安装目录下有个conf文件夹,打开httpd.conf文件进行配置         ·找到 Docu...

2013-03-07 16:31:47 61

原创 web项目中Log4j不输出到文件问题

     log4j.properties文件放在classpath文件夹下(即web项目的WEB-INF/classes文件夹下, 这样可以保证log4j能够自动识别配置文件,而不用显式的配置)内容如下:[plain] view plaincopylog4j.rootLogger=warn, stdout,file ...

2013-03-06 17:50:36 506 1

原创 Yale CAS实现原理及其基础协议(转)

1 CAS 的基本原理 CAS(Central Authentication Service) 是 Yale 大学发起的一个开源项目,据统计,大概每 10 个采用开源构建 Web SSO 的 Java 项目,就有 8 个使用 CAS 。对这些统计,我虽然不以为然,但有一点可以肯定的是, CAS 是我认为最简单实效,而且足够安全的 SSO 选择。       本节主要分析 CAS 的安全...

2013-02-26 12:38:07 106

原创 SSL通信原理及Tomcat SSL双向配置

SSL 通信原理及Tomcat SSL 双向配置 目录1 参考资料 .................................................................................................................................. 12 SSL(Server Socket Layer)简介 ...

2013-02-26 12:09:05 60

原创 数据库范式概念解析(第一范式,第二范式,第三范式)

大部分数据库从业人员都知道关系数据库有三个基本的范式,即:第一范式,第二范式,第三范式。当然也有牛人知道BC范式,第四范式,第五范式,第六范式,甚至还有个DK范式。本人对数据库的范式概念也是一知半解的,想想有些可笑,搞数据库的竟然不了解关系数据库的基础——范式。这不最近查阅了不少资料,今天把这些东东总结一下。 范式:英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老祖...

2013-02-26 10:17:57 109

原创 ORACLE数据库基础知识

http://wenku.baidu.com/view/958e801aff00bed5b9f31d53.html?pn=51

2013-02-23 11:39:31 89

原创 Oracle 的性能优化概述

 Oracle 的性能优化概述一 个数据库系统的生命周期可以分成设计、开发和成品三个阶段。在设计阶段进行数据库性能优化的成本最低,收益最大。在成品阶段进行数据库性能优化的成本最 高,收益最小。数据库的优化可以通过对网络、硬件、操作系统、数据库参数和应用程序的优化来进行。最常见的优化手段就是对硬件的升级。据统计,对网络、硬 件、操作系统、数据库参数进行优化所获得的性能提升,全部加起来只占数...

2013-02-23 11:34:39 69

原创 mysql 索引

索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。索引不是万能的,索引可以加快数据检索操作,但会使数据修改操作变慢。每修改数据记录,索引就必须刷新一次。为了在某种程序上弥补这一缺陷,许多SQL命令都有一个DELAY_KEY_WRITE项。这个选项的作用是暂时制止MySQL在该命令每插入一条新记录和每修改一条现有之后立刻对索引进行刷新...

2013-02-23 11:33:53 85

原创 cannot find symbol [javac] symbol : constructor Service(java.net.URL,javax.xml.n

使用ant build 时 产生 异常:cannot find symbol [javac] symbol : constructor Service(java.net.URL,javax.xml.namespace.QName,javax.xml.ws.WebServiceFeature[])异常原因:你工程中使用 JAX-WS 2.2 API, 而jdk 1.6 默认使用的 JA...

2013-02-20 17:15:12 371

原创 如何中断线程

package cn.com.york.concurrency.demo;public class ResearchThreadInterrupt implements Runnable { /* * 中断线程的方法: 1.设置共享变量,当变量为false时,退出线程。(这种情况适用于当前线程没有被阻塞,可以访问到共享变量) * 2.利用Thread.interrupt()...

2013-01-03 14:13:26 70

原创 锁机制(三)(转)

不同的角度理解(^_^)在理解J.U.C原理以及锁机制之前,我们来介绍J.U.C框架最核心也是最复杂的一个基础类:java.util.concurrent.locks.AbstractQueuedSynchronizer。 AQSAbstractQueuedSynchronizer,简称AQS,是J.U.C最复杂的一个类,导致绝大多数讲解并发原理或者实战的时候都不会提到此类。但是虚...

2013-01-03 10:32:35 86

原创 锁机制(二)-lock(转)

前文(深入JVM锁机制-synchronized)分析了JVM中的synchronized实现,本文继续分析JVM中的另一种锁Lock的实现。与synchronized不同的是,Lock完全用Java写成,在java这个层面是无关JVM实现的。在java.util.concurrent.locks包中有很多Lock的实现类,常用的有ReentrantLock、ReadWriteLock(...

2013-01-03 10:27:48 82

原创 锁机制(一)-synchronized(转)

目前在Java中存在两种锁机制:synchronized和Lock,Lock接口及其实现类是JDK5增加的内容,其作者是大名鼎鼎的并发专家Doug Lea。本文并不比较synchronized与Lock孰优孰劣,只是介绍二者的实现原理。   数据同步需要依赖锁,那锁的同步又依赖谁?synchronized给出的答案是在软件层面依赖JVM,而Lock给出的方案是在硬件层面依赖特殊的CPU指令...

2013-01-03 10:25:41 66

原创 (转)google guice入门

1. 依赖注入1.1 类依赖注入所谓的绑定就是将一个接口绑定到具体的类中,这样客户端不用关心具体的实现,而只需要获取相应的接口完成其服务即可。HelloWorld.java1     public interface HelloWorld {2 3         String sayHello();4     }5 然后是具体的实现,HelloWorldImpl.ja...

2012-12-31 15:00:01 168

原创 AJAX提交Struts2表单(服务器端validation校验出错提示)

1.目标   在基于Struts2的应用中,利用AJAX方式提交表单实现一个登陆验证Action,将服务器端验证结果展现在页面上字段错误展示:action 错误提示2.技术实现   利用struts2-jquery插件和struts2-json插件实现3.实现步骤   3.1依赖jar包  除了struts2-core-2.2.3.jar包以外,还要下载两个j...

2012-12-27 17:00:54 148

空空如也

空空如也

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

TA关注的人

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