自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

JavaMan_chen的专栏

不积跬步无以至千里,将知识持久化存储起来

  • 博客(82)
  • 资源 (8)
  • 收藏
  • 关注

原创 淘宝TFS使用

TFS作为一个开源的分布式文件系统,在处理小文件的性能上还是比较高效的。功能部署有点类似与HDFS,而且增加了nameserver HA的功能。作为开源项目来讲,其文档资源还有规范性较比Apache的子项目还是有一定差距的。在安装过程中也遇到了很多困难,走了很多弯路。最开始的时候是在ubuntu环境下进行的,首先需要降级安装gcc,然后安装TFS的依赖库,无奈最后编译TFS的时候还是出了异常。

2012-08-03 09:44:28 10576 4

原创 BerkeleyDB简介

与常用的关系数据库相比,BerkeleyDB更像是一种内存数据库,可嵌入到系统应用程序,手机甚至是路由器中。由于大部分操作在缓存中进行,因此访问速度非常高效。BerkeleyDB JE是由纯Java语言编写的,数据主要缓存在JVM当中。BerkeleyDB JE对开发人员提供了两套API操作:分别是DPL API和Base API,通常在Schema结构不经常变动的情况下,推荐使用DPL AP

2012-06-25 17:23:41 2808

原创 simple-spring-memcached简介

memcached是一款非常优秀的分布式缓存工具,有效提升了按主键检索数据的性能问题。而simple-spring-memcached组件通过与spring框架整合,让memcached的调用变得更加简单。simple-spring-memcached本质上是采用了AOP的方式来实现缓存的调用和管理,其核心组件声明了一些Advice,当遇到相应的切入点时,会执行这些Advice来对memc

2012-06-21 11:11:20 22167 17

原创 Jackrabbit之DataStore

在Jackrabbit存储体系中,PersistenceManager主要用来存储节点的基本属性信息,而二进制数据信息(更确切的说是属性类型为jcr:data的数据,以下称之为文件数据)是通过DataStore来存储的每个文件数据的ID为它的数字签名,这样便确保了同一个的文件在DataStore中只存在一份拷贝,而在PersistenceManager中,相应的JCR节点只是存储了文件数据的引

2012-03-01 11:41:17 5095

原创 HDFS之SequenceFile和MapFile

Hadoop的HDFS和MapReduce子框架主要是针对大数据文件来设计的,在小文件的处理上不但效率低下,而且十分消耗内存资源(每一个小文件占用一个Block,每一个block的元数据都存储在namenode的内存里)。解决办法通常是选择一个容器,将这些小文件组织起来统一存储。HDFS提供了两种类型的容器,分别是SequenceFile和MapFile。一、SequenceFileSeq

2012-02-08 08:56:06 24480 1

原创 HBase之Java API

1.Configuration在使用Java API时,Client端需要知道HBase的配置环境,如存储地址,zookeeper等信息。这些信息通过Configuration对象来封装,可通过如下代码构建该对象        Configuration config=HBaseConfiguration.create();在调用HBaseConfiguration.create(

2012-01-30 17:15:39 20705 2

原创 HBase之功能细节

1.Region定位在Google的BigTable体系中,tablet的存储地址通过3层目录结构来定位的,如图所示:注:tablet等同与HBase中的Region图释说明:(1)METADATATableMETADATATable是系统预定义的Table,当用户自定义表格被拆分成多个tablet之后,METADATA Table用来存储这些tablet的地址

2012-01-14 11:49:44 5407 2

原创 HBase之体系结构(Architecture)

HBase在分布式部署上采用master/slave的方式,主要包含3大功能组件,分别是:RegionServer、MasterServer和ClientLibrary在分布式存储上使用的是Hadoop的HDFS子框架分布式计算功能基于Hadoop的MapReduce实现1.RegionRegion作为HBase的分布式存储单元包含了一组Row,这些Row的key值在索引排序上是连

2012-01-13 09:02:20 4042

原创 HBase之数据模型(DataModel)

HBase基于Google的BigTable构建,是一种column-orientednosql数据库1.模型视图1.1概念视图从概念模型上看,HBase的存储逻辑同关系数据库类似,是基于Table的存储,存储视图如图所示:图中列出了表格的一条记录,com.cnn.www是该记录的主键,contents:、anchor:cnnsi.com和anchor:my.look.ca

2012-01-12 16:23:08 4787 1

原创 HBase集群搭建

一、安装环境:至少两台linux主机,假设两台机器的登录用户名都为hbase,并且IP分配如下:192.168.7.85         master机器192.168.7.72         slave机器集群的每台机器需要安装如下软件:1.ubuntu linux2. jdk6.0或以上版本       $ apt-get install openjdk-6-jd

2012-01-10 17:41:45 10114

原创 常用NoSQL比较

公司最近正在做NoSQL选型,通过一周的时间对几种常用的NoSQL做了以下粗略的分析和比较名词解释:分布式存储单元:在分布式存储中,通常要把比较大的数据文件切割成不同的块,以便放到不同的机器上分开存储,每一个分割块称之为一个存储单元。一、CouchDBCouchDB是一种面向文档(document-oriented)的nosql数据库,文档的存储格式通过JSON进行描述,在结构

2012-01-09 09:04:13 5157 1

原创 Nutch加Hadoop集群搭建

1、Apache Nutch   Apache Nutch是一个用于网络搜索的开源框架,它提供了我们运行自己的搜索引擎所需的全部工具,包括全文搜索和Web爬虫。1.1、Nutch的组件结构WebDB:存储网页数据和连接信息Fetch lists:将WebDB所存储的连接分成多个组,来用于分布式检索Fetchers:检索Fetch list中的内容并下载到本地,共有两项输出:

2012-01-06 09:18:15 6606 2

原创 XPath和JCR-SQL2性能比较

最近,对jackrabbit中Xpath和JCR-SQL2的查询性能做了一下比较,虽然JCR从2.0版本开始不再推荐使用XPath,但从查询性能上来讲,XPath似乎远高于JCR-SQL2以下是查询比较结果测试环境:    Jackrabbit 2.2.7    操作系统   Windows 2003    内存       4G    处理器     AMD Athlon

2012-01-05 16:32:56 4370 13

原创 jackrabbit OCM(三)——映射应用1

针对不同的Jackrabbit存储结构,OCM有不同的映射处理方式,假设Jackrabbit存储结构如下:Book节点拥有一个Author子节点表示作者,和多个Category子节点表示类别基于这种存储结构,Book实体和Author及Category实体之间是聚合引

2011-08-05 11:09:01 2691 1

原创 Jackrabbit OCM(二)——ObjectContentManager对象

上一篇文档中已提到过ObjectContentManager对象是OCM框架对外提供的非常重要的API,通过它可以完成如下功能:一、Jackrabbit CURD操作:在Hinbernate框架中,数据库的CURD操作主要通过Session对象来完成,ObjectCont

2011-08-05 10:39:09 2265

原创 jackrabbit OCM(一)

OCM是Object Content Mapping的缩写,同Hibenrate的ORM功能类似,Jackrabbit提供了OCM的功能,只不过所映射的对象不是数据库表格,而是jcr节点,可以让我们以操作对象的方式来更新Jackrabbit存储结构。Jackrabbit的

2011-08-05 09:21:12 2737

原创 jackrabbit security

jackrabbit security主要用来验证登录用户的合法性,并针对相关内容节点来对用户进行维权操作security信息配置在repository.xml文件当中,通过标签来进行指定由DTD描述可以看出,security的配置主要包含了3方面的信息内容,分别是:Se

2011-08-03 00:03:43 4830 2

原创 使用GMF开发可视化界面编辑器(五)——模型的约束校验

<br />    大千世界,约束无处不在,拿人来讲,活在社会当中,享受权利和义务的同时,也必须要遵守相应的法律约束。而这里我们所说的模型约束校验,就相当于为流程设计人员事先声明的法律,一旦不遵守规定,流程就会提示出错。<br />    GMF所提供的约束校验功能其实是使用了E

2011-05-27 14:22:00 2389

原创 使用GMF开发可视化界面编辑器(四)——Compartment

<br />GMF视图定义含有这样的功能,可以将视图组件切割成多个Compartment,每个Compartment用于显示不同方面的信息内容,就好像是将一个屋子分割成多个隔断,每个隔断用于存放不同的物品。该功能普遍应用与一种情况,模型实体之间的类引用关系是组合关系,比如Task

2011-05-26 16:13:00 2366

原创 使用GMF开发可视化界面编辑器(三)——连接线的绘制

<br />截至到目前为止,所有的视图节点都已添加到编辑器中去,还需要有连接线的绘制将这些节点关联起来。<br />连接线的类型大致包含这样几种,实线、虚线、点线;而箭头的修饰主要为折线修饰或多变行修饰,这里我们所创建的连接线是比较常用的实线模式,并且箭头修饰使用折线修饰。<br

2011-05-26 15:06:00 3118

原创 使用GMF开发可视化界面编辑器(二)——自定义Figure

<br />除了以XML的方式配置Figure组件之外,GMF还允许用户直接编写Figure的实现类。<br />同GEF一样,GMF在视图展现上依然使用Java的draw2d技术框架,而我们所创建的Figure组件一般继承org.eclipse.draw2d.Figure<br

2011-05-26 14:32:00 3712 2

原创 使用GMF开发可视化界面编辑器(一)

<br />    早期的图形化界面应用程序主要使用GEF框架来开发,如:JBPM流程定义工具,采用GEF+javaBean的组合模式,这种方式不好的一点就是在模型层的处理上过于繁琐,需要开发人员人为实现模型通知机制,而且也不利于后期的扩展维护,一旦有新需求出现,修改模型结构非常

2011-05-26 11:33:00 5557 2

原创 EMF学习笔记6——模型验证

<br />EMF模型的验证主要通过ModeValidationService类的调用来完成<br /><br />由类图可以看到,ModelValidationService其实是一个单例模式,声明了getInstance()方法用于获取类的实例;<br />同时,该类还声明了

2010-12-05 22:47:00 2319

原创 EMF学习笔记5——模型变动通知

当我们使用TableViewer或TreeViewer时,每当其input值发生改变,通常要调用视图的refresh方法来执行刷新操作,而使用EMF模型作为视图组件的文本提供器和标签提供器,却可以省略refresh操作。当构建AdapterFactoryContentProvid

2010-11-30 17:19:00 2106

原创 我错了!

<br />今天办了件让所有人鄙视的事情,我错了,错的无地自容!一整天的心情都很压抑,难于摆脱心灵的自责。我发誓这种事情一定不会再发生在自己身上,否则就让自己去死!上天为证!<br />人活一口气,但有时要克制住自己的怒气,毕竟 人间自有真情在。

2010-11-29 17:07:00 1035

原创 EMF学习笔记4——Query查询

<br />EMF查询框架主要由 org.eclipse.emf.query 这个plugin提供,创建并执行一个EMF查询,大概分为如下几步:<br />1,创建查询数据源;<br />2,构造EObjectCondition查询条件;<br />3,使用EMF查询框架提供的S

2010-11-18 21:44:00 2061

原创 Eclipse OCL 开发

<br />OCL解析器提供了两个类用于解析ocl表达式,分别是OCLHelper和OCL:<br />OCLHelper接口的设计直接用于解析表达式,而OCL则作为解析的切入点。<br />OCL的解析首先要为其创建一个环境,如:是基于UML模型的还是基于ECore模型的。<br />可通过在构造函数中指定相应的EnvironmentFactory来实现,如:<br />OCL<?, EClassifier, ?, ?, ?, ?, ?, ?, ?, Constraint, EClass, EObject

2010-11-18 10:55:00 4856 3

原创 EMF学习笔记3——EMF命令

在EMF中可以通过EditingDomain接口来编辑模型。AdapterFactoryEditingDomain实现了EditingDomain接口,和AdaperFactoryContentProvider一样,将操作逻辑通过适配器工厂转接给适配器类进行处理。通过Adapte

2010-11-08 21:28:00 2431 2

原创 EMF学习笔记2——模型适配器类

<br />适配器类是通过EMF.Edit这个框架生成的,通过它生成的适配器类为EMF模型起到了编辑器的作用,包括:<br />1为Jface组件(如TableViewer、TreeViewer等)提供ContentProvider和LabelProvider<br />2提供常

2010-11-04 20:09:00 2125

原创 EMF学习笔记1——模型实体类

<br />EMF是基于两种元模型来构建的,分别是Ecore和Genmodel。<br /> <br /> <br /><br />Ecore:主要用于定义模型结构的相关信息,并对外提供了一个根对象(犹如XML文件的根节点)用来代表要显示的模型,该对象的子节点为package(包

2010-11-02 20:15:00 4375

原创 java加密解密——MD5算法

<br />MD5算法普遍用于数字签名技术<br />数字签名技术:可以检测文件或其他应用的完整性,判断有无修改;<br /><br />简单应用如下:<br />假设通信的两端,一端为文件的发送者,而另一端为文件的接受者。<br />发送端:发送者对所发送的文件调用相关的函数来生成该文件的摘要信息,然后将该摘要信息用其本人的私钥进行加密处理,将摘要信息的密码模式与该文件一起发送给接受者;<br />接受端:这时接受者共得到两样东西,一个是所需要的文件,另一个是已加密摘要信息,接受端处理如下,<br />首

2010-10-13 22:47:00 16488 3

原创 java加密解密应用——DES算法

应用领域:IC卡,POS机,ATM机,加油站,高速公路收费站。应用场景:信用卡持卡人的PIN的加密传输,IC卡与 POS机之间的双向认证。算法入口参数:KEY,Data,Modekey:DES算法的工作密钥Mode:DES算法的工作模式(加密|解密)Data:需要加密或解密的数据工作方式:如果Mode为加密模式,则用key对数据data进行加密处理,生成data的密码模式如果Mode为解密模式,则用key对数据data进行解密处理,还原data的明码模式这样,在通信网络的两端,双方约定好一致的key,源端用

2010-10-12 21:29:00 5792 1

原创 为SWT应用程序创建系统托盘

<br />package rcp.test;import org.eclipse.swt.SWT;import org.eclipse.swt.events.ShellAdapter;import org.eclipse.swt.events.ShellEvent;import org.eclipse.swt.graphics.Image;import org.eclipse.swt.graphics.Point;import org.eclipse.swt.widgets.E

2010-06-10 10:17:00 1170 1

原创 OSGI学习笔记一

应公司要求最近正在学习OSGI技术,以下是初学之后的一点总结在接触OSGI之前,经常在网上接触到有关SOA的定义,出于时间有限在加上自己比较懒散,对这个名词的理解也只是停留在基本层面上,学习以后对SOA的实际应用上多少还是有了一定的了解。 OSGI是一种基于java平台的面向服务架构思想,在OSGI平台上部署应用,可在无需启动服务器的情况下动态改变系统的功能,类似于硬件的热插拔功能。

2010-04-21 23:34:00 2122

原创 Android中的Menu

OptionMenu--点击menu按钮式显现onCreateOptionMenu(Menu menu)--当菜单第一次被打开时调用onPrepareOptionsMenu(Menu menu)--菜单每次打开都会触发该方法两种方法都是传入Menu对象,我们可以通过配置该对象来构建合适的OptionMenuonOptionsItemSelected(MenuItem item)--

2010-04-11 21:23:00 4349

原创 Android中的布局

编写android视图有两种方式可以实现1,通过配置xml来实现2,通过动态编码来实现通过第一种方式可以将视图和业务逻辑很好的分离开来,也是使用比较多的第二种情况一般在需要动态改变页面布局的情况下使用android的View的设计主要使用了java的组合模式组合模式:将对象以树形结构组织起来,以达成“部分-整体” 的层次结构,使得客户端对单个对象和组合对象的使用具有一致性.

2010-04-05 10:07:00 3769 1

原创 android工程中的R.java文件

注:本人也是初学android,以下只是学习过程中的一些猜测与总结,至于浏览的人希望不是误人子弟 R.java资源文件android工程所有资源信息(组件、图片、字符等等)都是由HashMap来存储的key值就是R.java中的静态变量值value就是相对应的各种对象信息(组件、图片、字符等等)当工程被载入时,所有资源都被加载到HashMap中去(类似Spring将所有Be

2010-03-21 14:17:00 8042 2

原创 sql练习

今天去参加了一个笔试,考到sql的时候懵了,发现长时间的使用hibernate框架让我对sql语句真是越来越陌生了,针对笔试题目回家温习了一下。首先记忆最清楚的是分页的sql语句,比如查询第10条到第20条数据记录,不同数据库的实现方法也是不一样的mysql:select * from test limit 10,20--主要使用了limit关键字oracle:select * fro

2010-03-15 10:23:00 1465

原创 struts2处理机制探索

初学Struts2,对其工作机制的一点猜测与总结:首先在不使用struts的情况下,一般采用jsp+servlet+javabean的模式来进行开发这种开发也可以形成MVC模式,但当servlet的数量比较多的时候,web.xml的配置就会非常的复杂需要为每一个servlet进行配置操作。struts的使用简化了servlet的配置操作,只需要在web.xml中加入一个过滤器对用户所输入的路径进行

2010-03-13 10:07:00 2185 1

原创 Struts2.0通配符问题

       最近两天刚接触Struts2.0,没有什么现成的教科书,只是根据官网的一些说明文档来学习。过程中遇到了许多莫名其妙的问题,解决的方法也更是莫名其妙。首先是通配符的问题:最开始的Struts配置文件如下: struts>        package name="org.emarket.begin" namespace="/begin" extends="struts-defa

2008-04-02 13:48:00 2924 2

saxon的jar包

saxon框架可用来作为xquery的javaAPI,附件主要包含了的saxon-9.x.jar;saxon-dom-9.x.jar;saxon-xpath-9.x.jar;saxon-xqj-9.x.jar

2013-03-04

ECF发布和获取服务bundle

使用ECF发布和获取服务的bundle,便于Virgo整合ECF

2012-12-11

ford-fulkerson算法求网络最大流(java实现)

采用ford-fulkerson算法计算网络最大流,java语言实现

2012-12-10

匈牙利算法java实现

用java实现的匈牙利算法,

2012-12-06

ActiveMQ In Action

ActiveMQ In Action英文版

2012-11-01

淘宝数据库架构

淘宝数据库架构演进历史

2012-09-04

TFS JavaAPI源码(附带JUinit测试用例)

在使用TFS时,淘宝所提供的javaAPI部分代码集成了tair的功能,如果不想使用tair可通过修改代码,将其功能注释掉,附件提供了注释之后的源码和TFS调用的单元测试用例

2012-08-03

Hibernate原理解析

仿Hibernate编写的持久层框架,能够完成Hibernate的部分功能,对Hibernate的工作机制及原理的初步解析。

2008-11-11

空空如也

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

TA关注的人

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