<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[codepest的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/codepest</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; codepest]]></copyright><item><title><![CDATA[Moqui1.30 开发环境配置]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/10310857</link><guid>https://blog.youkuaiyun.com/codepest/article/details/10310857</guid><author>codepest</author><pubDate>Sun, 25 Aug 2013 23:05:43 +0800</pubDate><description><![CDATA[导入moqui源码至eclipse


命令行使用gradle编译项目(没有安装gradle的请自行google)


设置gradle编码格式 使其支持代码中出现中文
${moqui.home}/framework/MoquiInit.properties
tasks.withType(Compile) {
    options.compilerArgs << "-Xlint:]]></description><category></category></item><item><title><![CDATA[Moqui运行和部署]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/9315511</link><guid>https://blog.youkuaiyun.com/codepest/article/details/9315511</guid><author>codepest</author><pubDate>Fri, 12 Jul 2013 23:52:31 +0800</pubDate><description><![CDATA[原文：http://www.moqui.org/framework/docs/RunDeploy.html


快速入门运行目录和配置文件可执行WAR文件示例和公共文件从源码编译和运行目录结构




快速入门



安装JDK1.6下载moqui 二进制分发版本，解压到任意目录加载种子和演示数据 (默认将在derby中创建表结构)
$ java -jar moqui-.]]></description><category></category></item><item><title><![CDATA[ofbiz之entity实体写法]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/8566654</link><guid>https://blog.youkuaiyun.com/codepest/article/details/8566654</guid><author>codepest</author><pubDate>Sun, 03 Feb 2013 13:01:44 +0800</pubDate><description><![CDATA[实体定义文件 
实体定义文件一般存放位置是在对应模块的entity文件夹下面,以party为例,party的实体定义文件路径为
%ofbiz-home%\applications\party\entitydef\entitymodel.xml。 
通过对应模块的ofbiz-component.xml进行加载。 
 
 实体类型


普通实体]]></description><category></category></item><item><title><![CDATA[一致性哈希]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/8457269</link><guid>https://blog.youkuaiyun.com/codepest/article/details/8457269</guid><author>codepest</author><pubDate>Tue, 01 Jan 2013 16:49:34 +0800</pubDate><description><![CDATA[问题

　　假设你有 N 个 缓存服务器(后面简称 cache)，那么如何将一个对象 object 映射到 N 个 cache 上呢，你很可能会采用类似下面的通用方法计算 object 的 hash 值，然后均匀的映射到到 N 个 cache ；
　　hash(object) % N　　
　　一切都运行正常，再考虑如下的两种情况：

其中1个 cache 服务器 m down 掉了]]></description><category></category></item><item><title><![CDATA[Lucene倒排索引原理]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/8454980</link><guid>https://blog.youkuaiyun.com/codepest/article/details/8454980</guid><author>codepest</author><pubDate>Mon, 31 Dec 2012 14:49:24 +0800</pubDate><description><![CDATA[Lucene是一个高性能的java全文检索工具包，它使用的是倒排文件索引结构。
该结构及相应的生成算法如下：

假设有两篇文章，分别为文章1和文章2
文章1 的内容为：Tom lives in Guangzhou,I live in Guangzhou too.
文章2 的内容为：He once lived in Shanghai.

由于lucene是基于关键词索引和查询的，首先我]]></description><category></category></item><item><title><![CDATA[OFBiz中services调用机制]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/8454944</link><guid>https://blog.youkuaiyun.com/codepest/article/details/8454944</guid><author>codepest</author><pubDate>Mon, 31 Dec 2012 13:29:00 +0800</pubDate><description><![CDATA[OFBiz业务方法里面，当执行一个 service 的时候，通常采用如下的方式：
LocalDispatcher dispatcher = dctx.getDispatcher();
Map result = dispatcher.runSync(getServiceName(), getContext());
LocalDispatcher 是本地调度器，实现服务的同步异步调度和定时任务的调]]></description><category></category></item><item><title><![CDATA[分布式事务及其在OFBiz的实现]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/8453513</link><guid>https://blog.youkuaiyun.com/codepest/article/details/8453513</guid><author>codepest</author><pubDate>Sun, 30 Dec 2012 20:51:19 +0800</pubDate><description><![CDATA[1、分布式事务相关概念
　　分布式事务处理(Distributed Transaction Processing，DTP)是指一个事务可能涉及多个数据库操作，分布式事务处理的关键是必须有一种方法可以知道事务在任何地方所做的所有动作，提交或回滚事务的决定必须产生统一的结果（全部提交或全部回滚）。
X/Open 组织(即现在的 Open Group)定义了分布式事务处理模型。 X/Open DTP]]></description><category></category></item><item><title><![CDATA[OFBiz中JOB的运行机制]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/8452474</link><guid>https://blog.youkuaiyun.com/codepest/article/details/8452474</guid><author>codepest</author><pubDate>Sun, 30 Dec 2012 12:49:41 +0800</pubDate><description><![CDATA[OFBiz执行后台任务的类在org.ofbiz.service.job中。

JobPoller和JobInvoker是主要的两个类，一个负责查询可以执行的Job，另一个执行Job任务。


Job类图如下所示。


1.Job轮询

创建JobManager时，会创建JobPoller的一个实例。JobPoller实现了Runnable接口，以此创建线程后
通过JobMan]]></description><category></category></item><item><title><![CDATA[OFBiz的MVC框架]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/8452311</link><guid>https://blog.youkuaiyun.com/codepest/article/details/8452311</guid><author>codepest</author><pubDate>Sun, 30 Dec 2012 11:04:33 +0800</pubDate><description><![CDATA[ofbiz是一个非常强大的企业架构体系，这里只描述它MVC方面的内容，从MVC的角度去看，ofbiz采用的是Service
 to Worker模式，大名鼎鼎的Struts 1采用的也是这种架构。

Service to Worker模式的目标就是维护Action，View和Controller之间的分离。


Controller
ControlServlet是Front Cont]]></description><category></category></item><item><title><![CDATA[分布式事务处理]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/8440800</link><guid>https://blog.youkuaiyun.com/codepest/article/details/8440800</guid><author>codepest</author><pubDate>Wed, 26 Dec 2012 20:58:58 +0800</pubDate><description><![CDATA[XA规范

　　在谈到 XA 规范之前，必须首先了解分布式事务处理（ Distributed Transaction Processing ， DTP ）的概念。 Transaction ，即事务，又称之为交易，指一个程序或程序段，在一个或多个资源如数据库或文件上为完成某些功能的执行过程的集合。

　　分布式事务处理是指一个事务可能涉及多个数据库操作，分布式事务处理的关键是必须有一种方法可]]></description><category></category></item><item><title><![CDATA[Java事务与JTA]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/8437661</link><guid>https://blog.youkuaiyun.com/codepest/article/details/8437661</guid><author>codepest</author><pubDate>Wed, 26 Dec 2012 10:41:09 +0800</pubDate><description><![CDATA[一、什么是JAVA事务

　　通俗的理解，事务是一组原子操作单元，从数据库角度说，就是一组SQL指令，要么全部执行成功，若因为某个原因其中一条指令执行有错误，则撤销先前执行过的所有指令。更简答的说就是：要么全部执行成功，要么撤销不执行。


　　事务必须服从ISO/IEC所制定的ACID原则。

原子性（atomicity）一致性（consistency）隔离性（isolation）]]></description><category></category></item><item><title><![CDATA[How browsers work 浏览器是如何工作的]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/8426572</link><guid>https://blog.youkuaiyun.com/codepest/article/details/8426572</guid><author>codepest</author><pubDate>Mon, 24 Dec 2012 22:51:13 +0800</pubDate><description><![CDATA[原文：http://taligarsiel.com/Projects/howbrowserswork1.htm
http://blog.zhangguoqiang.name/index.php/category/javascript/
 
简介
　　浏览器可以被认为是使用最广泛的软件，本文将介绍浏览器的工作原理，我们将看到，从你在地址栏输入google.com到你看到google主页的过程]]></description><category></category></item><item><title><![CDATA[JVM内存管理：深入垃圾收集器与内存分配策略]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/8394076</link><guid>https://blog.youkuaiyun.com/codepest/article/details/8394076</guid><author>codepest</author><pubDate>Sun, 23 Dec 2012 19:47:30 +0800</pubDate><description><![CDATA[Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的高墙，墙外面的人想进去，墙里面的人却想出来。

概述：


　　说起垃圾收集（Garbage Collection，下文简称GC），大部分人都把这项技术当做Java语言的伴生产物。事实上GC的历史远远比Java来得久远，在1960年诞生于
 MIT的Lisp是第一门真正使用内存动态分配和垃圾收集技术的语言。当Lisp还在胚胎]]></description><category></category></item><item><title><![CDATA[深入理解JVM]]></title><link>https://blog.youkuaiyun.com/codepest/article/details/8372858</link><guid>https://blog.youkuaiyun.com/codepest/article/details/8372858</guid><author>codepest</author><pubDate>Sun, 23 Dec 2012 11:12:12 +0800</pubDate><description><![CDATA[1  
 Java技术与Java虚拟机
说起Java，人们首先想到的是Java编程语言，然而事实上Java是一种技术，它由四方面组成: 

Java编程语言Java类文件格式Java虚拟机Java应用程序接口(Java
 API)
它们的关系如下图所示：

图1  
 Java四个方面的关系


　　运行期环境代表着Java平台，开发人员编写Java代码(.java文件)，]]></description><category></category></item></channel></rss>