﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-realsmy-随笔分类-java理解笔记</title><link>http://www.blogjava.net/realsmy/category/14768.html</link><description>久城的学习室</description><language>zh-cn</language><lastBuildDate>Wed, 15 Aug 2007 01:07:45 GMT</lastBuildDate><pubDate>Wed, 15 Aug 2007 01:07:45 GMT</pubDate><ttl>60</ttl><item><title>JAVA加密解密---自定义类加载器应用</title><link>http://www.blogjava.net/realsmy/archive/2007/04/22/112575.html</link><dc:creator>久城</dc:creator><author>久城</author><pubDate>Sun, 22 Apr 2007 03:09:00 GMT</pubDate><guid>http://www.blogjava.net/realsmy/archive/2007/04/22/112575.html</guid><wfw:comment>http://www.blogjava.net/realsmy/comments/112575.html</wfw:comment><comments>http://www.blogjava.net/realsmy/archive/2007/04/22/112575.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/realsmy/comments/commentRss/112575.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/realsmy/services/trackbacks/112575.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 自定义的类加载器能够灵活的控制类的加载过程。从而可以实现一些我们所要的功能。<br><br>但是，即使是这样的加密技术，对于某些高手来说，依然是脆弱的。我们所需要做的就是，理解这其中的过程，掌握这样的技术，最终能够应用到我们自己的实际项目中来。&nbsp;&nbsp;<a href='http://www.blogjava.net/realsmy/archive/2007/04/22/112575.html'>阅读全文</a><img src ="http://www.blogjava.net/realsmy/aggbug/112575.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/realsmy/" target="_blank">久城</a> 2007-04-22 11:09 <a href="http://www.blogjava.net/realsmy/archive/2007/04/22/112575.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于java class loader的理解笔记</title><link>http://www.blogjava.net/realsmy/archive/2007/04/03/108053.html</link><dc:creator>久城</dc:creator><author>久城</author><pubDate>Tue, 03 Apr 2007 04:27:00 GMT</pubDate><guid>http://www.blogjava.net/realsmy/archive/2007/04/03/108053.html</guid><wfw:comment>http://www.blogjava.net/realsmy/comments/108053.html</wfw:comment><comments>http://www.blogjava.net/realsmy/archive/2007/04/03/108053.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/realsmy/comments/commentRss/108053.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/realsmy/services/trackbacks/108053.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: JAVA中的一切都是以类的形式存在的（除少数底层的东西，那些我就不清楚是怎么回事了）。我们运行的接口是一个类，运行中所涉及到的对象也都是类对象。下面，我们来研究下，我所理解的类的加载机制。<br><br>比如我们有一个Student类，也就是经过编译后，是一个Student.class文件。当我们的程序运行的过程中，第一次实例化一个student对象的时候，系统首先要做的就是加载Student这个类。也就是把Student.class以字节玛的形势加载到内存中（并通过defineClass()这个方法转变成Class对象，最终以Class对象的形式存储在内存中）。这个加载的过程就是由类加载器来完成的。<br>&nbsp;&nbsp;<a href='http://www.blogjava.net/realsmy/archive/2007/04/03/108053.html'>阅读全文</a><img src ="http://www.blogjava.net/realsmy/aggbug/108053.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/realsmy/" target="_blank">久城</a> 2007-04-03 12:27 <a href="http://www.blogjava.net/realsmy/archive/2007/04/03/108053.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java class loading技术研究</title><link>http://www.blogjava.net/realsmy/archive/2007/03/23/105823.html</link><dc:creator>久城</dc:creator><author>久城</author><pubDate>Fri, 23 Mar 2007 06:07:00 GMT</pubDate><guid>http://www.blogjava.net/realsmy/archive/2007/03/23/105823.html</guid><wfw:comment>http://www.blogjava.net/realsmy/comments/105823.html</wfw:comment><comments>http://www.blogjava.net/realsmy/archive/2007/03/23/105823.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/realsmy/comments/commentRss/105823.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/realsmy/services/trackbacks/105823.html</trackback:ping><description><![CDATA[
		<p>最近在忙毕业设计，被分到的课题是 ：java class loading技术研究<br /><br />第一次接触java虚拟机方面的问题，对我来说，还真有些困难。查了两天的资料，简单整理一下。<br /><br />一个类代表要执行的代码，而数据则表示其相关状态。状态时常改变，而代码则不会。当我们将一个特定的状态与一个类相对应起来，也就意味着将实例化一个对象。尽管相同的类对应的实例的状态千差万别，但其本质都对应着同一段代码。在JAVA中，一个类通常有着一个.class文件，但也有例外。<br /><br />我们所编译的代码，都是首先通过编译器编译成字节码文件。对于JAVA来说，就是生成一个一个的.class文件。当我们运行程序的时候，再由JAVA虚拟机将所需要的.class文件加载进内存。（这个时候的工作由每一个加载器来完成）。我的毕设所要研究的问题就在这里。如何自己定义一个classloader?自定义的classloader由什么意义呢?呵呵，才接触两天，具体的我还没理解透呢。<br /><br /><strong>关于classloader:</strong><br />classloader是一种tree-like的hierarchy的结构，这颗树的root是bootstrap classloader。当JVM启动后，系统往往会有三个或三个以上的Class Loader，也即：Bootstrap CL, Extension CL, System CL和User-defined CL。任何的CL都有一个parent CL（Bootstrap CL除外），从而所有的CL形成一颗自上而下的树，其中Bootstrap CL是这颗树的Root。<br />Bootstrap CL<br />└──Extension CL<br />└──System CL<br />└──User-defined CL.(classLoaderA)<br />└──User-defined CL.(classLoaderB)<br /><br />流程：</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">当执行“</span>
				<span lang="EN-US">java XXX.class</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.exe</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">首先找到</span>
				<span lang="EN-US">JRE</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 Runtime Environment</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">），接着找到位于</span>
				<span lang="EN-US">JRE</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">之中的</span>
				<span lang="EN-US">jvm.dll</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，最后载入</span>
				<span lang="EN-US">jvm.dll</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">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">虚拟机一启动，先做一些初始化动作，如获取系统参数等，然后产生</span>
				<span lang="EN-US">BL</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。</span>
				<span lang="EN-US">BL</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">JRE</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中的</span>
				<span lang="EN-US">lib</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">目录下，可由</span>
				<span lang="EN-US">System.getProperty(“sun.boot.class.path”)</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">列出。<br /></span>
				<br />jvm建立-&gt;初始化动作-&gt;产生第一个ClassLoader,即bootstrap loader-&gt;bootstrap loader在sum.misc.Launcher类里面的ExtClassLoader,并设定其Parent为null-&gt;bootstrap loader载入sun.misc.Launcher$AppClassLoader,并设定其parent为ExtClassLoader(但是AppClassLoader也是由bootstrap loader所载入的)-&gt;AppClassLoader载入各个xx.class,xx.class也有可能被ExtclassLoader或者bootstrap loader载入. <br /><br /><strong>Java类装载体系结构</strong></p>
		<p class="normal">装载类的过程非常简单：查找类所在位置，并将找到的Java类的字节码装入内存，生成对应的Class对象。Java的类装载器专门用来实现这样的过程，JVM并不止有一个类装载器，事实上，如果你愿意的话，你可以让JVM拥有无数个类装载器，当然这除了测试JVM外，我想不出还有其他的用途。你应该已经发现到了这样一个问题，类装载器自身也是一个类，它也需要被装载到内存中来，那么这些类装载器由谁来装载呢，总得有个根吧？没错，确实存在这样的根，它就是神龙见首不见尾的Bootstrap ClassLoader. 为什么说它神龙见首不见尾呢，因为你根本无法在Java代码中抓住哪怕是它的一点点的尾巴，尽管你能时时刻刻体会到它的存在，因为java的运行环境所需要的所有类库，都由它来装载，而它本身是C++写的程序，可以独立运行,可以说是JVM的运行起点,伟大吧。在Bootstrap完成它的任务后，会生成一个AppClassLoader(实际上之前系统还会使用扩展类装载器ExtClassLoader，它用于装载Java运行环境扩展包中的类),这个类装载器才是我们经常使用的，可以调用ClassLoader.getSystemClassLoader() 来获得，我们假定程序中没有使用类装载器相关操作设定或者自定义新的类装载器，那么我们编写的所有java类通通会由它来装载，值得尊敬吧。AppClassLoader查找类的区域就是耳熟能详的Classpath，也是初学者必须跨过的门槛，有没有灵光一闪的感觉，我们按照它的类查找范围给它取名为类路径类装载器。还是先前假定的情况，当Java中出现新的类，AppClassLoader首先在类传递给它的父类类装载器，也就是Extion ClassLoader，询问它是否能够装载该类，如果能，那AppClassLoader就不干这活了，同样Extion ClassLoader在装载时，也会先问问它的父类装载器。我们可以看出类装载器实际上是一个树状的结构图，每个类装载器有自己的父亲，类装载器在装载类时，总是先让自己的父类装载器装载(多么尊敬长辈),如果父类装载器无法装载该类时，自己就会动手装载，如果它也装载不了，那么对不起，它会大喊一声：Exception，class not found。有必要提一句，当由直接使用类路径装载器装载类失败抛出的是NoClassDefFoundException异常。如果使用自定义的类装载器loadClass方法或者ClassLoader的findSystemClass方法装载类，如果你不去刻意改变，那么抛出的是ClassNotFoundException。<br /><br /><strong>类加载器是什么？<br /></strong><br />Java和其他语言不同的是，Java是运行于Java虚拟机(JVM)。这就意味着编译后的代码是以<br />一种和平台无关的格式保存的，而不是某种特定的机器上运行的格式。这种格式和传统的可<br />执行代码格式有很多重要的区别。具体来说，不同于C或者Ｃ++程序，Java程序不是一个独<br />立的可执行文件，而是由很多分开的类文件组成，每个类文件对应一个Java类。 另外，这<br />些类文件并不是马上加载到内存，而是当程序需要的时候才加载。 类加载器就是Java虚拟<br />机中用来把类加载到内存的工具。而且，Java类加载器也是用Java实现的。这样你就不需要<br />对Java虚拟机有深入的理解就可以很容易创建自己的类加载器了。<br /><br /><strong>为什么要创建类加载器?<br /><br /></strong>既然Java虚拟金已经有了类加载器，我们还要自己创建其他的呢?问得好。默认的类加载器<br />只知道如何从本地系统加载类。当你的程序完全在本机编译的话，默认的类加载器一般都工<br />作的很好。但是Java中最激动人心的地方之一就是很容易的从网络上而不只是本地加载类。<br />举个例子，浏览器可以通过自定义的类加载器加载类。 还有<br />很多加载类的方式。除了简单的从本地或者网络外，你还可以通过自定义Java中最激动人心<br />的地方之一:<br />* 执行非信任代码前自动验证数字签名<br />* 根据用户提供的密码解密代码<br />* 根据用户的需要动态的创建类<br />你关心的任何东西都能方便的以字节码的形式集成到你的应用中<br /><br />-----------------------------------------------------------------------------------<br /><br />以上大都是别人的文字，我选取了一些保存下来。用于以后的继续学习。 <br /><br />如果哪位朋友研究过这方面的内容，很乐意向您请教学习。<br /></p>
<img src ="http://www.blogjava.net/realsmy/aggbug/105823.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/realsmy/" target="_blank">久城</a> 2007-03-23 14:07 <a href="http://www.blogjava.net/realsmy/archive/2007/03/23/105823.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java连接oracle数据库</title><link>http://www.blogjava.net/realsmy/archive/2006/11/10/80295.html</link><dc:creator>久城</dc:creator><author>久城</author><pubDate>Fri, 10 Nov 2006 01:01:00 GMT</pubDate><guid>http://www.blogjava.net/realsmy/archive/2006/11/10/80295.html</guid><wfw:comment>http://www.blogjava.net/realsmy/comments/80295.html</wfw:comment><comments>http://www.blogjava.net/realsmy/archive/2006/11/10/80295.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/realsmy/comments/commentRss/80295.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/realsmy/services/trackbacks/80295.html</trackback:ping><description><![CDATA[偶理解不深,没什么说的,用的时候COPY就可以了~~<br /><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080"> 1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">package</span><span style="COLOR: #000000"> jdbc;<br /></span><span style="COLOR: #008080"> 2</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /></span><span style="COLOR: #008080"> 3</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> java.sql.</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">;<br /></span><span style="COLOR: #008080"> 4</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /></span><span style="COLOR: #008080"> 5</span><span style="COLOR: #000000"><img id="Codehighlighter1_57_879_Open_Image" onclick="this.style.display='none'; Codehighlighter1_57_879_Open_Text.style.display='none'; Codehighlighter1_57_879_Closed_Image.style.display='inline'; Codehighlighter1_57_879_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_57_879_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_57_879_Closed_Text.style.display='none'; Codehighlighter1_57_879_Open_Image.style.display='inline'; Codehighlighter1_57_879_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> jdbcTest </span><span id="Codehighlighter1_57_879_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_57_879_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080"> 6</span><span style="COLOR: #000000"><img id="Codehighlighter1_78_785_Open_Image" onclick="this.style.display='none'; Codehighlighter1_78_785_Open_Text.style.display='none'; Codehighlighter1_78_785_Closed_Image.style.display='inline'; Codehighlighter1_78_785_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_78_785_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_78_785_Closed_Text.style.display='none'; Codehighlighter1_78_785_Open_Image.style.display='inline'; Codehighlighter1_78_785_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> test()</span><span id="Codehighlighter1_78_785_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_78_785_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080"> 7</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        Connection conn </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">;<br /></span><span style="COLOR: #008080"> 8</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        Statement sta </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">;<br /></span><span style="COLOR: #008080"> 9</span><span style="COLOR: #000000"><img id="Codehighlighter1_135_582_Open_Image" onclick="this.style.display='none'; Codehighlighter1_135_582_Open_Text.style.display='none'; Codehighlighter1_135_582_Closed_Image.style.display='inline'; Codehighlighter1_135_582_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_135_582_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_135_582_Closed_Text.style.display='none'; Codehighlighter1_135_582_Open_Image.style.display='inline'; Codehighlighter1_135_582_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">try</span><span id="Codehighlighter1_135_582_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_135_582_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">10</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            Class.forName(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">oracle.jdbc.driver.OracleDriver</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /></span><span style="COLOR: #008080">11</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">加载驱动</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">12</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">            conn </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> DriverManager.getConnection(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">jdbc:oracle:thin:@192.168.88.220:1521:oracle9</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">scott</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">tiger</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /></span><span style="COLOR: #008080">13</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">192.168.88.220为你所访问的数据库的地址<br /></span><span style="COLOR: #008080">14</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">1521为oracle的端口号<br /></span><span style="COLOR: #008080">15</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">oracle9为数据库名<br /></span><span style="COLOR: #008080">16</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">scott,tiger为oracle默认的用户名和密码</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">17</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">            sta </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> conn.createStatement();<br /></span><span style="COLOR: #008080">18</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            ResultSet rs </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> sta.executeQuery(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">select ename from emp</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /></span><span style="COLOR: #008080">19</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">(rs.next())<br /></span><span style="COLOR: #008080">20</span><span style="COLOR: #000000"><img id="Codehighlighter1_525_577_Open_Image" onclick="this.style.display='none'; Codehighlighter1_525_577_Open_Text.style.display='none'; Codehighlighter1_525_577_Closed_Image.style.display='inline'; Codehighlighter1_525_577_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_525_577_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_525_577_Closed_Text.style.display='none'; Codehighlighter1_525_577_Open_Image.style.display='inline'; Codehighlighter1_525_577_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span><span id="Codehighlighter1_525_577_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_525_577_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">21</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                System.out.println(rs.getString(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">ename</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">));<br /></span><span style="COLOR: #008080">22</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span></span><span style="COLOR: #000000"> <br /></span><span style="COLOR: #008080">23</span><span style="COLOR: #000000"><img id="Codehighlighter1_601_622_Open_Image" onclick="this.style.display='none'; Codehighlighter1_601_622_Open_Text.style.display='none'; Codehighlighter1_601_622_Closed_Image.style.display='inline'; Codehighlighter1_601_622_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_601_622_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_601_622_Closed_Text.style.display='none'; Codehighlighter1_601_622_Open_Image.style.display='inline'; Codehighlighter1_601_622_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        }</span></span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000">(Exception e)</span><span id="Codehighlighter1_601_622_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_601_622_Open_Text"><span style="COLOR: #000000">{e.printStackTrace();}</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">24</span><span style="COLOR: #000000"><img id="Codehighlighter1_633_782_Open_Image" onclick="this.style.display='none'; Codehighlighter1_633_782_Open_Text.style.display='none'; Codehighlighter1_633_782_Closed_Image.style.display='inline'; Codehighlighter1_633_782_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_633_782_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_633_782_Closed_Text.style.display='none'; Codehighlighter1_633_782_Open_Image.style.display='inline'; Codehighlighter1_633_782_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">finally</span><span id="Codehighlighter1_633_782_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_633_782_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">25</span><span style="COLOR: #000000"><img id="Codehighlighter1_641_738_Open_Image" onclick="this.style.display='none'; Codehighlighter1_641_738_Open_Text.style.display='none'; Codehighlighter1_641_738_Closed_Image.style.display='inline'; Codehighlighter1_641_738_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_641_738_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_641_738_Closed_Text.style.display='none'; Codehighlighter1_641_738_Open_Image.style.display='inline'; Codehighlighter1_641_738_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span><span style="COLOR: #0000ff">try</span><span id="Codehighlighter1_641_738_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_641_738_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">26</span><span style="COLOR: #000000"><img id="Codehighlighter1_662_686_Open_Image" onclick="this.style.display='none'; Codehighlighter1_662_686_Open_Text.style.display='none'; Codehighlighter1_662_686_Closed_Image.style.display='inline'; Codehighlighter1_662_686_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_662_686_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_662_686_Closed_Text.style.display='none'; Codehighlighter1_662_686_Open_Image.style.display='inline'; Codehighlighter1_662_686_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />                </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(sta </span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">)</span><span id="Codehighlighter1_662_686_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_662_686_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">27</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                    sta.close();<br /></span><span style="COLOR: #008080">28</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />                }</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">29</span><span style="COLOR: #000000"><img id="Codehighlighter1_708_733_Open_Image" onclick="this.style.display='none'; Codehighlighter1_708_733_Open_Text.style.display='none'; Codehighlighter1_708_733_Closed_Image.style.display='inline'; Codehighlighter1_708_733_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_708_733_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_708_733_Closed_Text.style.display='none'; Codehighlighter1_708_733_Open_Image.style.display='inline'; Codehighlighter1_708_733_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />                </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(conn </span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">)</span><span id="Codehighlighter1_708_733_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_708_733_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">30</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                    conn.close();<br /></span><span style="COLOR: #008080">31</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />                }</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">32</span><span style="COLOR: #000000"><img id="Codehighlighter1_757_778_Open_Image" onclick="this.style.display='none'; Codehighlighter1_757_778_Open_Text.style.display='none'; Codehighlighter1_757_778_Closed_Image.style.display='inline'; Codehighlighter1_757_778_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_757_778_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_757_778_Closed_Text.style.display='none'; Codehighlighter1_757_778_Open_Image.style.display='inline'; Codehighlighter1_757_778_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            }</span></span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000">(Exception e)</span><span id="Codehighlighter1_757_778_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_757_778_Open_Text"><span style="COLOR: #000000">{e.printStackTrace();}</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">33</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">34</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">35</span><span style="COLOR: #000000"><img id="Codehighlighter1_827_877_Open_Image" onclick="this.style.display='none'; Codehighlighter1_827_877_Open_Text.style.display='none'; Codehighlighter1_827_877_Closed_Image.style.display='inline'; Codehighlighter1_827_877_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_827_877_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_827_877_Closed_Text.style.display='none'; Codehighlighter1_827_877_Open_Image.style.display='inline'; Codehighlighter1_827_877_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> main(String[] args) </span><span id="Codehighlighter1_827_877_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_827_877_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">36</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        jdbcTest jt </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> jdbcTest();<br /></span><span style="COLOR: #008080">37</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        jt.test();        <br /></span><span style="COLOR: #008080">38</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">39</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span></div><img src ="http://www.blogjava.net/realsmy/aggbug/80295.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/realsmy/" target="_blank">久城</a> 2006-11-10 09:01 <a href="http://www.blogjava.net/realsmy/archive/2006/11/10/80295.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用JAVA创建,读取XML文件</title><link>http://www.blogjava.net/realsmy/archive/2006/11/10/80291.html</link><dc:creator>久城</dc:creator><author>久城</author><pubDate>Fri, 10 Nov 2006 00:53:00 GMT</pubDate><guid>http://www.blogjava.net/realsmy/archive/2006/11/10/80291.html</guid><wfw:comment>http://www.blogjava.net/realsmy/comments/80291.html</wfw:comment><comments>http://www.blogjava.net/realsmy/archive/2006/11/10/80291.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/realsmy/comments/commentRss/80291.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/realsmy/services/trackbacks/80291.html</trackback:ping><description><![CDATA[首先导入dom4j.jar包,这个包里面有我们创建XML文件需要用到的类,比如常用的有:<br /><br />Document:<br />import org.dom4j.Document;<br />Import org.dom4j.DocumentHelper;<br />DocumentHelper.createDocument(); 获得文档对象<br />addElement方法增加根节点<br />getRootElement方法获得根节点<br />asXML方法将文档对象包含的内容转换为字符<br />addComment方法在增加注释<br />getPath方法获得路径,根节点为/<br /><br />Element:<br />import org.dom4j.Elemet;<br />addElement方法增加子节点<br />addAttribute方法增加属性<br />getName方法获得节点名称<br />asXML方法将文档对象包含的内容转换为字符<br />addComment方法在增加注释<br />getPath方法获得路径<br />addText方法增加节点值<br />setText方法设置节点值<br />addNamespace方法增加命名空间<br />attributeCount方法获得属性个数<br />attributeValue方法获得属性值<br />elementText方法指定元素的值<br /><br />Attribute:<br />Import org.dom4j.Attribute;<br />getName方法获得属性名称<br />getValue方法获得属性值<br />setValue方法设置属性值<br /><br />Node:<br />import org.dom4j.Node;<br />Document和Element中selectSingleNode方法获得对象<br />setName方法设置节点名称<br />getText方法获得节点值<br />setText方法设置节点值<br /><br />List,Iterator:<br />import java.util.List;<br />Document和Element中selectNodes方法获得对象<br />import java.util.Iterator;<br />List中iterator方法,Iterator中hasNext方法和next方法来获得节点或属性<br /><br />XMLWriter:<br />import org.dom4j.io.XMLWriter;<br />Writer方法与OutputStream(FileOutputStream),Writer(FileWriter)<br />write方法写对象<br />close方法关闭写对象<br /><br />OutputFormat:<br />import org.dom4j.io.OutputFormat;<br />setEncoding方法设置字符集<br />createCompactFormat方法为紧凑格式,默认<br />createPrettyFormat方法为缩进格式<br /><br />SAXReader:<br />import org.dom4j.io.SAXReader ;<br />read方法与File<br /><br />下面,我们用这些类来实现一下创建XML文件的简单过程:<br /><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080"> 1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">package</span><span style="COLOR: #000000"> Test;<br /></span><span style="COLOR: #008080"> 2</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /></span><span style="COLOR: #008080"> 3</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> java.io.</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">;<br /></span><span style="COLOR: #008080"> 4</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.dom4j.</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">;<br /></span><span style="COLOR: #008080"> 5</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.dom4j.io.</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">;<br /></span><span style="COLOR: #008080"> 6</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /></span><span style="COLOR: #008080"> 7</span><span style="COLOR: #000000"><img id="Codehighlighter1_98_1408_Open_Image" onclick="this.style.display='none'; Codehighlighter1_98_1408_Open_Text.style.display='none'; Codehighlighter1_98_1408_Closed_Image.style.display='inline'; Codehighlighter1_98_1408_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_98_1408_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_98_1408_Closed_Text.style.display='none'; Codehighlighter1_98_1408_Open_Image.style.display='inline'; Codehighlighter1_98_1408_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> xmlTest </span><span id="Codehighlighter1_98_1408_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_98_1408_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080"> 8</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    <br /></span><span style="COLOR: #008080"> 9</span><span style="COLOR: #000000"><img id="Codehighlighter1_125_964_Open_Image" onclick="this.style.display='none'; Codehighlighter1_125_964_Open_Text.style.display='none'; Codehighlighter1_125_964_Closed_Image.style.display='inline'; Codehighlighter1_125_964_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_125_964_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_125_964_Closed_Text.style.display='none'; Codehighlighter1_125_964_Open_Image.style.display='inline'; Codehighlighter1_125_964_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> writeXML()</span><span id="Codehighlighter1_125_964_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_125_964_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">10</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        Document doc </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> org.dom4j.DocumentHelper.createDocument();<br /></span><span style="COLOR: #008080">11</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">创建节点操作对象</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">12</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        Element rootElement </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> doc.addElement(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">student</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /></span><span style="COLOR: #008080">13</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">创建根节点对象rootElement,标签名为student</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">14</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        <br /></span><span style="COLOR: #008080">15</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        rootElement.setText(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">hello</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /></span><span style="COLOR: #008080">16</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">对节点设置内容,后面读取XML文件的时候可以把他取出来</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">17</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        rootElement.addAttribute(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">id</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">030511111</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /></span><span style="COLOR: #008080">18</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">设置节点属性</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">19</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        Element name </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> rootElement.addElement(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">name</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /></span><span style="COLOR: #008080">20</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">添加子节点</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">21</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        name.setText(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">xiaozhang</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /></span><span style="COLOR: #008080">22</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">设置子节点内容</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">23</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        Element age </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> rootElement.addElement(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">age</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /></span><span style="COLOR: #008080">24</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        age.setText(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">23</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /></span><span style="COLOR: #008080">25</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        <br /></span><span style="COLOR: #008080">26</span><span style="COLOR: #000000"><img id="Codehighlighter1_587_907_Open_Image" onclick="this.style.display='none'; Codehighlighter1_587_907_Open_Text.style.display='none'; Codehighlighter1_587_907_Closed_Image.style.display='inline'; Codehighlighter1_587_907_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_587_907_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_587_907_Closed_Text.style.display='none'; Codehighlighter1_587_907_Open_Image.style.display='inline'; Codehighlighter1_587_907_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">try</span><span style="COLOR: #000000"> </span><span id="Codehighlighter1_587_907_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_587_907_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">27</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            OutputFormat fmt </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> OutputFormat();<br /></span><span style="COLOR: #008080">28</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">创建输出格式对象</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">29</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">            fmt.setEncoding(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">gb2312</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /></span><span style="COLOR: #008080">30</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            XMLWriter writer </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> XMLWriter(fmt);<br /></span><span style="COLOR: #008080">31</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">以输出格式为参数,创建XML文件输出对象</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">32</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">            OutputStream out </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> FileOutputStream(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">d:\\test.xml</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /></span><span style="COLOR: #008080">33</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">创建输出流..</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">34</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">            writer.setOutputStream(out);<br /></span><span style="COLOR: #008080">35</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">设置输出流</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">36</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">            writer.write(doc);<br /></span><span style="COLOR: #008080">37</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">输出doc对象,即形成XML文件</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">38</span><span style="COLOR: #008000"><img id="Codehighlighter1_929_958_Open_Image" onclick="this.style.display='none'; Codehighlighter1_929_958_Open_Text.style.display='none'; Codehighlighter1_929_958_Closed_Image.style.display='inline'; Codehighlighter1_929_958_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_929_958_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_929_958_Closed_Text.style.display='none'; Codehighlighter1_929_958_Open_Image.style.display='inline'; Codehighlighter1_929_958_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /></span><span style="COLOR: #000000">        }</span></span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000"> (Exception e) </span><span id="Codehighlighter1_929_958_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_929_958_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">39</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /></span><span style="COLOR: #008080">40</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            e.printStackTrace();<br /></span><span style="COLOR: #008080">41</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">42</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        <br /></span><span style="COLOR: #008080">43</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">44</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    <br /></span><span style="COLOR: #008080">45</span><span style="COLOR: #000000"><img id="Codehighlighter1_990_1299_Open_Image" onclick="this.style.display='none'; Codehighlighter1_990_1299_Open_Text.style.display='none'; Codehighlighter1_990_1299_Closed_Image.style.display='inline'; Codehighlighter1_990_1299_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_990_1299_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_990_1299_Closed_Text.style.display='none'; Codehighlighter1_990_1299_Open_Image.style.display='inline'; Codehighlighter1_990_1299_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> readXML()</span><span id="Codehighlighter1_990_1299_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_990_1299_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">46</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        SAXReader reader </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> SAXReader();<br /></span><span style="COLOR: #008080">47</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">创建读取对象</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">48</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        Document doc;<br /></span><span style="COLOR: #008080">49</span><span style="COLOR: #000000"><img id="Codehighlighter1_1063_1246_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1063_1246_Open_Text.style.display='none'; Codehighlighter1_1063_1246_Closed_Image.style.display='inline'; Codehighlighter1_1063_1246_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1063_1246_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1063_1246_Closed_Text.style.display='none'; Codehighlighter1_1063_1246_Open_Image.style.display='inline'; Codehighlighter1_1063_1246_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">try</span><span style="COLOR: #000000"> </span><span id="Codehighlighter1_1063_1246_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_1063_1246_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">50</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            doc </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> reader.read(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> File(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">d:\\test.xml</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">));<br /></span><span style="COLOR: #008080">51</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">从test.xml文件中取得节点操作对象</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">52</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">            Element name </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> doc.getRootElement();<br /></span><span style="COLOR: #008080">53</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">取得节点对象</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">54</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">            System.out.println(name.getText());<br /></span><span style="COLOR: #008080">55</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">输出节点内容</span><span style="COLOR: #008000"><br /></span><span style="COLOR: #008080">56</span><span style="COLOR: #008000"><img id="Codehighlighter1_1268_1296_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1268_1296_Open_Text.style.display='none'; Codehighlighter1_1268_1296_Closed_Image.style.display='inline'; Codehighlighter1_1268_1296_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1268_1296_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1268_1296_Closed_Text.style.display='none'; Codehighlighter1_1268_1296_Open_Image.style.display='inline'; Codehighlighter1_1268_1296_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /></span><span style="COLOR: #000000">        }</span></span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000"> (Exception e) </span><span id="Codehighlighter1_1268_1296_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_1268_1296_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">57</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            e.printStackTrace();<br /></span><span style="COLOR: #008080">58</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">59</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">60</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    <br /></span><span style="COLOR: #008080">61</span><span style="COLOR: #000000"><img id="Codehighlighter1_1342_1406_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1342_1406_Open_Text.style.display='none'; Codehighlighter1_1342_1406_Closed_Image.style.display='inline'; Codehighlighter1_1342_1406_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1342_1406_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1342_1406_Closed_Text.style.display='none'; Codehighlighter1_1342_1406_Open_Image.style.display='inline'; Codehighlighter1_1342_1406_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> main(String[] args)</span><span id="Codehighlighter1_1342_1406_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_1342_1406_Open_Text"><span style="COLOR: #000000">{<br /></span><span style="COLOR: #008080">62</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        xmlTest s </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> xmlTest();<br /></span><span style="COLOR: #008080">63</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        s.writeXML();<br /></span><span style="COLOR: #008080">64</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        s.readXML();    <br /></span><span style="COLOR: #008080">65</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">66</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">67</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span></div><img src ="http://www.blogjava.net/realsmy/aggbug/80291.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/realsmy/" target="_blank">久城</a> 2006-11-10 08:53 <a href="http://www.blogjava.net/realsmy/archive/2006/11/10/80291.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>初识session</title><link>http://www.blogjava.net/realsmy/archive/2006/09/18/70230.html</link><dc:creator>久城</dc:creator><author>久城</author><pubDate>Mon, 18 Sep 2006 02:31:00 GMT</pubDate><guid>http://www.blogjava.net/realsmy/archive/2006/09/18/70230.html</guid><wfw:comment>http://www.blogjava.net/realsmy/comments/70230.html</wfw:comment><comments>http://www.blogjava.net/realsmy/archive/2006/09/18/70230.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/realsmy/comments/commentRss/70230.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/realsmy/services/trackbacks/70230.html</trackback:ping><description><![CDATA[
		<p>新建立一个Web Project...用来测试session的功能。<br /><br />session就象一个大容器，关键在于它的生命周期，它存活在父窗口的整个生命周期中。比如在一个index.htm页面中创建了一个session,那么在这个index.htm的页面没有被关闭的过程中，index的所有子连接，子连接的子连接等等，session都是同一个容器。但是，当我重新启动index.htm的时候，原来的session消失，新的session产生。<br /><br />就象以前学习的那个数据库的实践一样，可以实现不同的客户端每次访问服务器，服务器都会分配给客户端不同的一个session用以区别不同的用户。<br /><br />主要用法<br />//session test<br /><br />import javax.servlet.http.HttpSession;  //需要的包<br /><br />HttpSession session = request.getSession();   //定义session对象<br /><br />session.setAttribute("name",name);   //设置session属性<br /><br />String sessionname = (String)session.getAttribute("name");   //取session属性的值</p>
<img src ="http://www.blogjava.net/realsmy/aggbug/70230.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/realsmy/" target="_blank">久城</a> 2006-09-18 10:31 <a href="http://www.blogjava.net/realsmy/archive/2006/09/18/70230.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>配置让我头疼的MyEclipse...</title><link>http://www.blogjava.net/realsmy/archive/2006/09/14/69765.html</link><dc:creator>久城</dc:creator><author>久城</author><pubDate>Thu, 14 Sep 2006 14:51:00 GMT</pubDate><guid>http://www.blogjava.net/realsmy/archive/2006/09/14/69765.html</guid><wfw:comment>http://www.blogjava.net/realsmy/comments/69765.html</wfw:comment><comments>http://www.blogjava.net/realsmy/archive/2006/09/14/69765.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/realsmy/comments/commentRss/69765.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/realsmy/services/trackbacks/69765.html</trackback:ping><description><![CDATA[这几天一直在迷迷糊糊的学习，大多数时间都花在配置上，看了好多网上的文章，自己总结下，以防忘了。哈哈.<br /><br />最近老师讲的都是关于Web Programming的知识，能涉及到的方面有JAVA便宜环境JDK，WEB服务器tomcat,还有就是老师说以后会经常用的Eclipse。<br /><br />刚刚接触Eclipse，还没怎么弄熟悉呢~就开始弄到MyEclipse..MyEclipse是我接触的Eclipse的第一个插件。<br /><br />所以，一点一点的，第一步从JDK开始，这个简单...设置环境变量：<br />JAVA_HOME：F:\jdk1.5.0_06；<br />CLASSPATH：.;%JAVA_HOME%\lib;<br />然后在PATH里加入：%JAVA_HOME%\bin;（其实只需要把JDK的bin目录加到PATH里就可以，至于JAVA_HOME和CLASSPATH以后还会用到，估计这也是一种规范，所以就这样写了..）<br /><br />然后，安装tomcat...设置环境变量：<br />CATALINA_HOME：F:\Tomcat 5.0；<br />再在系统变量CLASSPATH的值的后面加入：%CATALINA_HOME%\common\lib; <br />再在系统变量Path的值中"%JAVA_HOME%\bin;"的后面加入：%CATALINA_HOME%\bin; <br /><br />然后安装Eclipse,把下载的ZIP包直接解压就可以用。<br /><br />最后就是MyEclipse，折磨了我好半天，其实很简单，下载MyEclipse的安装包之后执行（MyEclipseEnterpriseWorkbenchInstaller_5.0.1GA_E3.2.exe），会有两个路径需要修改，把这两个路径都设置成Eclipse的安装路径，比如我的Eclipse装到F：\下，就是F:\eclipse。<strong>然后把其中一个安装出来的文件夹（eclipse）中的features和plugins这2个目录覆盖原有的文件</strong>..我就是因为这个弄来半天没弄好，郁闷啊！<br /><br />然后运行eclipse.exe（首次运行要求指定Workspace），依次点击Window ——Preferences ——MyEclipse——Subscription ——Enter Subscription，输入注册名以及注册机生成的注册码。 <br /><br />这个MyEclipse这个插件就可以用了~哈哈~用来干啥还不了解呢！慢慢学习！<img src ="http://www.blogjava.net/realsmy/aggbug/69765.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/realsmy/" target="_blank">久城</a> 2006-09-14 22:51 <a href="http://www.blogjava.net/realsmy/archive/2006/09/14/69765.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于CLASSPATH</title><link>http://www.blogjava.net/realsmy/archive/2006/09/12/69191.html</link><dc:creator>久城</dc:creator><author>久城</author><pubDate>Tue, 12 Sep 2006 08:45:00 GMT</pubDate><guid>http://www.blogjava.net/realsmy/archive/2006/09/12/69191.html</guid><wfw:comment>http://www.blogjava.net/realsmy/comments/69191.html</wfw:comment><comments>http://www.blogjava.net/realsmy/archive/2006/09/12/69191.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/realsmy/comments/commentRss/69191.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/realsmy/services/trackbacks/69191.html</trackback:ping><description><![CDATA[
		<p>今天看翁恺的教程，讲JAVA基础，提到CLASSPATH...so bad...惭愧啊..只知道是环境变量..却不知道是做什么用的，以前只知道要set classpath=什么什么，至于为什么这么设，是作什么用的却还不知道，今天试了试..才有原来如此的感觉..<br /><br />我的理解，CLASSPATH是针对.class文件的，它是一个路径，能够让系统自动的去某个目录下去寻找你所要运行的.class文件..<br /><br />设置CLASSPATH，可以在系统下电脑属性里的环境变量里直接添加，也可以自己创建一个.bat文件，输入set classpath=d:\javatest;.;这里可以设置多个路径，‘.’代表当前目录.然后在DOC下执行这个.bat文件就OK了。这样我把.class文件放在d:\javatest下，无论我在哪JAVA这个.class文件，它都能够被正常执行.<br /><br />再有，关于package，如果一个a.java文件定义了一个package javatest；(当然a.java在javatest这个目录里)</p>
		<p>编译的时候需要在javatest的目录下执行JAVAC指令。此时会在当前目录生成一个a.class文件(假设只有一个a类)，但是此时这个文件的名字不再是A，而是多了一个姓，姓javatest，也就是说，我直接在当前目录下执行java a系统会提示找不到目标文件。所以在运行这个a.class的时候需要这样执行java javatest.a..<br /><br />这个时候需要注意的是，系统同样会在CLASSPATH的目录下寻找javatest这个目录.如果CLASSPATH此时被设置为set classpath=d:\javatest;.;那么在当前目录下（d:\javatest）下执行java javatest.a，系统会报错，因为在当前目录（d:\javatest）和d:\javatest目录下找不到目标文件，正确的做法是在d:\下执行java javatest.a..<br /><br />呵呵，原来接触的时候很乱，现在终于有了那么一点思路，还有待慢慢学习...</p>
<img src ="http://www.blogjava.net/realsmy/aggbug/69191.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/realsmy/" target="_blank">久城</a> 2006-09-12 16:45 <a href="http://www.blogjava.net/realsmy/archive/2006/09/12/69191.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>