<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Oracle Berkeley DB 中国研发团队的博客 &#187; taozhang</title>
	<atom:link href="http://www.bdbchina.com/author/taozhang/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bdbchina.com</link>
	<description>Oracle Berkeley DB 中国研发团队的博客</description>
	<lastBuildDate>Thu, 15 Dec 2011 10:35:52 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>BDB JE事务的提交方式概述</title>
		<link>http://www.bdbchina.com/2010/12/bdb-je%e4%ba%8b%e5%8a%a1%e7%9a%84%e6%8f%90%e4%ba%a4%e6%96%b9%e5%bc%8f%e6%a6%82%e8%bf%b0/</link>
		<comments>http://www.bdbchina.com/2010/12/bdb-je%e4%ba%8b%e5%8a%a1%e7%9a%84%e6%8f%90%e4%ba%a4%e6%96%b9%e5%bc%8f%e6%a6%82%e8%bf%b0/#comments</comments>
		<pubDate>Fri, 24 Dec 2010 05:33:29 +0000</pubDate>
		<dc:creator>taozhang</dc:creator>
				<category><![CDATA[Berkeley DB JE]]></category>

		<guid isPermaLink="false">http://www.bdbchina.com/?p=1516</guid>
		<description><![CDATA[简要介绍数据库的事务持久性和BDB JE的事务提交方式。]]></description>
			<content:encoded><![CDATA[<p>这段时间看到有些用户对BDB JE的事务持久性（Durability)，主要是JE各种事务提交方式比较感兴趣。以下这篇博客介绍了事务的持久性，并简要描述了JE事务所提供的提交方式。</p>
<p>大家知道，事务具有ACID特性，即：原子性，一致性，隔离性和持久性。事务的持久性意味着当系统或介质发生故障时，确保已提交事务的更新不能丢失，即一旦一个事务提交，数据库保证它对数据库中数据的改变是永久性的，能够承受任何系统故障，持久性通过数据库备份和恢复来保证。</p>
<p>事务的持久性与事务的提交方式有着密切联系，当JE的用户创建一个事务时，用户通过设置TransactionConfig来指定事务的提交方式，分别是：</p>
<ol>
<li>TransactionConfig.setNoSync(boolean)，即txnNoSync</li>
<li>TransactionConfig.setWriteNoSync(boolean)，即txnWriteNoSync</li>
<li>TransactionConfig.setSync(boolean)，即txnSync。</li>
</ol>
<p><span id="more-1516"></span></p>
<p>您可以参看下图了解这几种提交方式的区别：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/12/durability.jpg"><img class="aligncenter size-full wp-image-1523" title="durability" src="http://www.bdbchina.com/wp-content/uploads/2010/12/durability.jpg" alt="" width="527" height="525" /></a></p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/12/durability.bmp"></a>当选择txnNoSync方式时，在事务提交之前，JE会将数据写入JE自己的缓冲区，操作系统会选择适当的时机（缓冲区满，后续事务选择txnSync 提交方式或数据库做了一次checkpoint）将数据写到磁盘上，一旦应用程序或是JVM崩溃了，用户的数据就会丢失。</p>
<p>当选择txnWriteNoSync方式时，在事务提交之前，JE会将数据写入文件系统的缓冲区，操作系统会选择适当的时机（缓冲区满，后续事务选择 txnSync提交方式或数据库做了一次checkpoint）将数据写到磁盘上，这种方式可以避免因为应用程序或JVM崩溃而带来的数据丢失，但是无法避免操作系统崩溃带来的数据丢失，因此也无法保障数据的持久性。</p>
<p>当选择txnSync方式时，在事务提交之前，它会强制调用操作系统的fsync方法将数据写到磁盘上，这样一旦事务提交成功，即使操作系统崩溃也能保证数据的持久性，但是该方式不能保证介质故障的数据持久性，在这种情况下，需要采用数据库备份的方式来提供持久性。</p>
<p>这三种事务提交模式给性能带来的影响如下：</p>
<ol>
<li>txnNoSync，节省了JE与操作系统的交互和磁盘I/O，性能相对其它两种更好</li>
<li>txnWriteNoSync，节省了磁盘I/O，性能次之</li>
<li>txnSync，性能相对其它两种方式要差一些</li>
</ol>
<p>因此，用户需要根据他们的需要来选择不同事务提交方式。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bdbchina.com/2010/12/bdb-je%e4%ba%8b%e5%8a%a1%e7%9a%84%e6%8f%90%e4%ba%a4%e6%96%b9%e5%bc%8f%e6%a6%82%e8%bf%b0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在Windows平台运行JE-HA示例</title>
		<link>http://www.bdbchina.com/2010/03/%e5%9c%a8windows%e5%b9%b3%e5%8f%b0%e8%bf%90%e8%a1%8cje-ha%e7%a4%ba%e4%be%8b/</link>
		<comments>http://www.bdbchina.com/2010/03/%e5%9c%a8windows%e5%b9%b3%e5%8f%b0%e8%bf%90%e8%a1%8cje-ha%e7%a4%ba%e4%be%8b/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 08:40:54 +0000</pubDate>
		<dc:creator>taozhang</dc:creator>
				<category><![CDATA[Berkeley DB JE]]></category>
		<category><![CDATA[Tao Zhang]]></category>
		<category><![CDATA[example]]></category>
		<category><![CDATA[HA]]></category>

		<guid isPermaLink="false">http://www.bdbchina.com/?p=867</guid>
		<description><![CDATA[JE-HA是JE 4.0推出的一项新特性，本文介绍了JE-HA示例的基本功能和原理，并演示了如何在Windows平台上运行JE-HA的示例代码。]]></description>
			<content:encoded><![CDATA[<p>Oracle Berkeley DB Java Edition (简称JE)从4.0开始推出了高可用(又称集群、HA)功能，从而让用户能够更容易的编写高可靠的、7×24在线的应用程序。随版本一起还发布了很多HA的示例代码。本文的主要目的是示范如何在windows平台上运行这些示例，从而帮助用户更好的理解和使用HA。</p>
<h3>1.下载JE</h3>
<p>用户可以到官方网址<a href="http://www.oracle.com/technology/software/products/berkeley-db/je/index.html">http://www.oracle.com/technology/software/products/berkeley-db/je/index.html</a>下载最新的JE版本，本文使用的是JE 4.0.71. 同时，您也可以到<a href="http://www.oracle.com/technology/documentation/berkeley-db/je/examples/je/rep/quote/package-summary.html">http://www.oracle.com/technology/documentation/berkeley-db/je/examples/je/rep/quote/package-summary.html</a>参考示例的详细英文文档。</p>
<h3>2.编译示例</h3>
<p>请确认您在编译示例之前已经安装好JDK，如果您的机器上没有安装，请到<a href="http://java.sun.com">http://java.sun.com</a>下载JDK。</p>
<p>用户下载示例后，解压缩到当前目录，你会发现一个je-4.0.71的目录，进入该目录，您会在lib目录下发现JE的jar包，HA的示例代码存放在examples/je/rep/quote目录下。将lib下的je-4.0.71.jar拷贝到examples/je/rep/quote下，打开命令行，进入到当前目录，输入如下命令：javac -cp .;je-4.0.71.jar *.java，该目录下的所有java文件都会被编译成class文件。</p>
<h3>3.示例代码概述</h3>
<p>JE-HA的示例代码分为三种：</p>
<ul>
<li>StockQuotes：该示例代码是一个最基本的使用JE-HA应用程序的展示，其主要目的是让您对JE-HA的基本概念有一个了解，并演示了如何使用JE-HA的API创建一个ReplicatedEnvironment和处理读写事务。</li>
<li>RouterDrivenStockQuotes和HARouter：RouterDriverStockQuotes以StockQuotes为基础，展示了如何使用JE Monitor（HARouter）根据应用程序请求的类别（读或写）和结点的状态（Master或Replica），指引请求到正确的结点。该示例的目的是演示如何将负载平衡器与JE-HA结合起来，在该示例中，HARouter扮演负载平衡器的角色。</li>
<li>UpdateForwardingStockQuote和SimpleRouter：UpdateForwardingStockQuote以RouterDrivenStockQuotes为基础，与HARouter不同，SimpleRouter并不关心应用程序的请求类别和结点的状态，只是简单的将请求转发给它所知道的结点，而UpdateForwardingStockQuote使用了StateChangeListener来跟踪当前的Master结点，并将写请求转发给Master，自己处理读请求。这个示例的目的是演示如何将一个负载平衡器嵌入到JE-HA的框架中。</li>
</ul>
<p>本文主要演示如何运行前两个示例，第三个示例的运行方法与第二个基本类似，在这里就不做详细介绍了。<span id="more-867"></span></p>
<h3>4.创建运行环境</h3>
<p>为了演示的方便（截图的原因），我在同一台机器上运行三个HA结点。在开始运行示例代码之前，需要创建每个结点的environment home目录。这里，我在examples目录下创建三个目录，分别为：rep1，rep2，rep3。</p>
<p>因为JE-HA示例代码的包是je.rep.quote，所以命令行需要在examples目录下运行。</p>
<h3>5.运行StockQuotes示例</h3>
<p>(1).启动三个结点，如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-startup.jpg"><img class="aligncenter size-large wp-image-868" title="StockQuotes-startup" src="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-startup-1024x483.jpg" alt="" width="1024" height="483" /></a></p>
<p>(2).在Master上写数据，在Replica上读取数据，如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-writemaster-read-replica.jpg"><img class="aligncenter size-large wp-image-870" title="StockQuotes-writemaster-read-replica" src="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-writemaster-read-replica-1024x482.jpg" alt="" width="1024" height="482" /></a></p>
<p>（3). 如果在Replica上写数据。由于JE-HA只允许在Master上写数据，因此该操作是非法的，控制台会打印出提示信息，如下图红框内所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-writereplica.jpg"><img class="aligncenter size-large wp-image-871" title="StockQuotes-writereplica" src="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-writereplica-1024x484.jpg" alt="" width="1024" height="484" /></a></p>
<p>(4).将Master关闭，JE-HA会在当前集群中重新选举出一个新的Master，只有现存的Replica的数目符合选举策略，如下图红框内所示，node3被选举成为新的Master：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-changemaster.jpg"><img class="aligncenter size-large wp-image-872" title="StockQuotes-changemaster" src="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-changemaster-1024x483.jpg" alt="" width="1024" height="483" /></a></p>
<p>(5).将剩下的Replica也关掉，只剩下Master，这种情况下，应用程序还可以在Master上正常读取数据，如果进行写数据操作，写操作可以提交，但是会抛出InsufficientReplicasException异常。这是因为示例的默认事务提交策略是要得到超过半数的Replica的回应的，但是当前没有任何活跃的Replica，所以虽然写操作提交成功，但同时会抛出异常信息。如下两图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-printmaster-replicadown.jpg"><img class="aligncenter size-large wp-image-873" title="StockQuotes-printmaster-replicadown" src="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-printmaster-replicadown-1024x483.jpg" alt="" width="1024" height="483" /></a></p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-writemaster-insufficentreplica1.jpg"><img class="aligncenter size-large wp-image-874" title="StockQuotes-writemaster-insufficentreplica" src="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-writemaster-insufficentreplica1-1024x483.jpg" alt="" width="1024" height="483" /></a></p>
<h3>6.运行RouterDrivenStockQuotes和HARouter示例</h3>
<p>运行RouterDrivenStockQuotes和HARouter示例与运行StockQuotes示例基本类似，唯一的不同是需要在启动三个RouterDrivenStockQuotes之外再启动一个HARouter。</p>
<p>(1).启动整个HA组，如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-startup.jpg"><img class="aligncenter size-large wp-image-879" title="RouterDriven-startup" src="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-startup-1024x585.jpg" alt="" width="1024" height="585" /></a></p>
<p>(2).HARouter指引写请求到Master，如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-write.jpg"><img class="aligncenter size-large wp-image-880" title="RouterDriven-write" src="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-write-1024x584.jpg" alt="" width="1024" height="584" /></a></p>
<p>(3).HARouter将读请求指引到目前空闲的结点，如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-print.jpg"><img class="aligncenter size-large wp-image-877" title="RouterDriven-print" src="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-print-1024x584.jpg" alt="" width="1024" height="584" /></a></p>
<p>(4).关闭当前的Master，HARouter会自动找到新选出来的Master，如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-shutdown-master.jpg"><img class="aligncenter size-large wp-image-878" title="RouterDriven-shutdown-master" src="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-shutdown-master-1024x582.jpg" alt="" width="1024" height="582" /></a></p>
<p>(5).当所有Replica都关闭，只剩下Master还活跃的时候，HARouter会提示写请求是非法的（原因在StockQuotes演示第六步已经介绍了），如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-insufficentreplicas-write.jpg"><img class="aligncenter size-large wp-image-875" title="RouterDriven-insufficentreplicas-write" src="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-insufficentreplicas-write-1024x583.jpg" alt="" width="1024" height="583" /></a></p>
<h3>7.总结</h3>
<p>JE-HA是对JE功能的一个巨大提升。希望本文能够让你更好的了解并使用JE-HA。如果您对本文有什么意见或对JE-HA有什么建议，请您站内留言。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bdbchina.com/2010/03/%e5%9c%a8windows%e5%b9%b3%e5%8f%b0%e8%bf%90%e8%a1%8cje-ha%e7%a4%ba%e4%be%8b/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>在Windows下配置和编译Oracle Berkeley DB Java Edition</title>
		<link>http://www.bdbchina.com/2009/04/%e5%9c%a8windows%e4%b8%8b%e9%85%8d%e7%bd%ae%e5%92%8c%e7%bc%96%e8%af%91oracle-berkeley-db-java-edition/</link>
		<comments>http://www.bdbchina.com/2009/04/%e5%9c%a8windows%e4%b8%8b%e9%85%8d%e7%bd%ae%e5%92%8c%e7%bc%96%e8%af%91oracle-berkeley-db-java-edition/#comments</comments>
		<pubDate>Tue, 14 Apr 2009 12:29:28 +0000</pubDate>
		<dc:creator>taozhang</dc:creator>
				<category><![CDATA[Berkeley DB JE]]></category>
		<category><![CDATA[Tao Zhang]]></category>
		<category><![CDATA[bdb]]></category>

		<guid isPermaLink="false">http://www.bdbchina.com/?p=205</guid>
		<description><![CDATA[本文介绍了Oracle Berkeley DB Java Edition, 并描述了如何在Windows平台上配置和编译Oracle Berkeley DB Java Edition，并演示如何运行JE的一个示例。]]></description>
			<content:encoded><![CDATA[<h2>1. 前言</h2>
<p>Oracle Berkeley DB Java Edition（以下简称JE）是一套由纯Java语言实现的嵌入式数据库，具有移植性强，存储性能高等特点。</p>
<p>JE提供的事务存储引擎不仅显著的减少了对象持久化开销，而且支持大量的并发的事务存储，并保持了对象-关系映射（ORM）解决方案的灵活性，速度和扩展性。为了让用户更加方便的使用JE，JE还提供了直接持久层（DPL），旨在提供与EJB3相同的好处：对象持久化时，不需要将对象转换成关系表。使用DPL，可以让用户更加关注事务逻辑，而不需要关心对象的存储。<br />
除了Sun J2SE平台之外，JE还支持Android平台以及Oracle JRockit JVM，JE与JasperReport无缝集成更是大大的便利于商业智能及分析。同时为了方便项目管理，JE还提供了对Maven这一自动化编译及部署工具的支持。<br />
本文介绍了如何在Windows下配置和编译Oracle Berkeley DB Java Edition以及如何运行一个简单的示例程序。后续文章还将涵盖许多JE使用及提高的机制和技巧。</p>
<p><span id="more-205"></span></p>
<h2>2. 环境配置</h2>
<p>为了在Windows上编译JE，系统需要安装JDK，Ant（1.7及以上版本）以及JUnit（3.8及以上）。</p>
<p>您可以从以下地址下载这些工具的最新版本：</p>
<ol>
<li>http://java.sun.com/javase/downloads/index.jsp</li>
<li>http://ant.apache.org/bindownload.cgi</li>
<li>http://www.junit.org/</li>
</ol>
<p>下载完这些工具之后，下一步就是解压缩和安装。</p>
<p>1．将Ant解压缩到指定目录（如d:toolsant）。解压缩之后的目录文件如图1所示：</p>
<p><img class="alignnone size-full wp-image-265" title="11" src="http://www.bdbchina.com/wp-content/uploads/2009/04/11.jpg" alt="11" /></p>
<p>图<span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">1</span></p>
<p><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">2．将</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">JUnit</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">解压缩到指定目录（如</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">d:toolsjunit</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">）。解压后的目录结构如图</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">2</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">所示：</span></p>
<p><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'"><img class="alignnone size-full wp-image-266" title="21" src="http://www.bdbchina.com/wp-content/uploads/2009/04/21.jpg" alt="21" width="512" height="326" /></span></p>
<p><span style="font-size: small; font-family: 宋体;">图</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">2</span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US"><span lang="EN-US">3</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">．将</span><span lang="EN-US">Java</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">安装到指定目录（如</span><span lang="EN-US">d:toolsjava</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）。</span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">4</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">．在安装完指定工具之后，您需要设置环境变量，主要为：</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">classpath</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">和</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">path</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">两个设置。具体方法如下：右键点击“我的电脑”，选择“属性”，选择“高级”标签，进入环境变量设置，如图</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">3</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">所示：</span> </span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US"><img class="alignnone size-full wp-image-267" title="33" src="http://www.bdbchina.com/wp-content/uploads/2009/04/33.jpg" alt="33" width="417" height="496" /></span></p>
<p><span style="font-size: small; font-family: 宋体;">图</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">3</span></p>
<p>根据您安装Ant，JDK和JUnit的具体位置，将path相应设置为对应目录，如：d:toolsjavabin;d:toolsantbin，将classpath设置为：</p>
<p>.;d:toolsjavalibtools.jar;d:toolsantlibant.jar;d:toolsjunitjunit.jar.</p>
<p>在安装成功之后，您可以在命令行窗口输入：java -version和ant -version来查看是否已经安装成功，如图4。</p>
<p><img class="alignnone size-full wp-image-290" title="111" src="http://www.bdbchina.com/wp-content/uploads/2009/04/111.jpg" alt="111" width="469" height="315" /></p>
<p>图4</p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: center">
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><strong><span style="FONT-SIZE: 12pt" lang="EN-US"><span style="font-family: Times New Roman;">3.<span style="FONT: 7pt 'Times New Roman'"> </span></span></span></strong><strong><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下载</span></strong><strong><span style="FONT-SIZE: 12pt" lang="EN-US"><span style="font-family: Times New Roman;">Berkeley DB Java Edition</span></span></strong></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><strong><span style="FONT-SIZE: 12pt" lang="EN-US"><span style="font-family: Times New Roman;"><br />
</span></span></strong></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><span style="font-size: small;">安装必需的工具后，用户可以由地址：</span></span><span lang="EN-US"><a href="http://www.oracle.com/technology/software/products/berkeley-db/je/index.html"><span style="font-size: small; font-family: Times New Roman;">http://www.oracle.com/technology/software/products/berkeley-db/je/index.html</span></a></span><span style="font-size: small;"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下载</span><span lang="EN-US"><span style="font-family: Times New Roman;">JE</span></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">最新</span></span><span style="font-size: small;"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">本的</span><span lang="EN-US"><span style="font-family: Times New Roman;">zip</span></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">压缩包，如图</span><span lang="EN-US"><span style="font-family: Times New Roman;">5</span></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">：</span></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt"><span style="font-size: small;"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><img class="alignnone size-full wp-image-268" title="42" src="http://www.bdbchina.com/wp-content/uploads/2009/04/42.jpg" alt="42" width="459" height="246" /></span></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: center">
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-ALIGN: center">
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt"><span style="font-size: small;"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">图5</span></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-ALIGN: left">
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: left"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">JE</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">的最新发行版本是</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">3.3.75</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">，用户下载</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">zip</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">包到本地机器之后，将其解压缩到指定目录，如：</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">d:databaseje</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">，目录结构如图6</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">：</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: left"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'"><img class="alignnone size-full wp-image-269" title="51" src="http://www.bdbchina.com/wp-content/uploads/2009/04/51.jpg" alt="51" width="481" height="336" /></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-ALIGN: left"><span style="font-size: small; font-family: 宋体;">图6</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-ALIGN: left">
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><strong><span style="FONT-SIZE: 12pt" lang="EN-US">4.<span style="FONT: 7pt 'Times New Roman'"> </span></span></strong><strong><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">编译并运行示例</span></strong></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><strong></strong><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用户在解压缩之后的目录中，会看到名为</span><span lang="EN-US">build.xml</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span><span lang="EN-US">Ant</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">脚本，参看上图。它设置</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">了一系列任务，如编译，单元测试以及运行JE提供的示例，接下来我们运行</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">“</span><span lang="EN-US"><span style="font-family: Times New Roman;">testex-simple</span></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">”任务所表示的</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">示例。</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">该任务实际上是运行在目录</span><span lang="EN-US"><span style="font-family: Times New Roman;">d:databasejeexamplesje</span></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下名为</span><span lang="EN-US"><span style="font-family: Times New Roman;">SimpleExample</span></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的示例程序，如图7</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">：</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><img class="alignnone size-full wp-image-275" title="9" src="http://www.bdbchina.com/wp-content/uploads/2009/04/9.jpg" alt="9" /></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt">
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt">图7</p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt">
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">该任务演示了最基本的使用</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">JE</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">存取数据的过程，用户可以打开一个</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">Windows</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">的控制台，并进入到</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">JE</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">解压缩的目录：</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">d:databaseje</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">，然后输入命令：</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">ant testex-simple</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">，就会在控制台</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">的输出</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">中看到取出的数据，如图8</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'">：</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'"><img class="alignnone size-full wp-image-277" title="10" src="http://www.bdbchina.com/wp-content/uploads/2009/04/10.jpg" alt="10" width="488" height="363" /></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><span style="font-family: 宋体;">图8</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left" align="left"><strong></strong></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left" align="left"><strong><span style="FONT-SIZE: 12pt" lang="EN-US">5</span></strong><strong><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">．总结</span></strong><strong></strong></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left" align="left"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">从上述过程中可以发现，在</span><span lang="EN-US">Windows</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">平台上配置和编译</span><span lang="EN-US">Oracle Berkeley DB Java Edition</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是非常简单的。</span><span lang="EN-US">Linux</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用户会发现，在</span><span lang="EN-US">Linux</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">编译及运行</span><span lang="EN-US">JE</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">示例程序的配置流程和本文基本一致。如您有进一步的疑问，欢迎访问</span><span lang="EN-US">JE</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的官方论坛：</span><span lang="EN-US"><a href="http://forums.oracle.com/forums/forum.jspa?forumID=273">http://forums.oracle.com/forums/forum.jspa?forumID=273</a></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，或者给我留言。</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: left">
]]></content:encoded>
			<wfw:commentRss>http://www.bdbchina.com/2009/04/%e5%9c%a8windows%e4%b8%8b%e9%85%8d%e7%bd%ae%e5%92%8c%e7%bc%96%e8%af%91oracle-berkeley-db-java-edition/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>
Դ
