﻿<?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-勇敢的心-文章分类-J2EE开发环境</title><link>http://www.blogjava.net/liyong/category/17273.html</link><description /><language>zh-cn</language><lastBuildDate>Tue, 27 Feb 2007 23:05:13 GMT</lastBuildDate><pubDate>Tue, 27 Feb 2007 23:05:13 GMT</pubDate><ttl>60</ttl><item><title>OASIS:SOA1.0参考模型出台</title><link>http://www.blogjava.net/liyong/articles/97934.html</link><dc:creator>Timothy</dc:creator><author>Timothy</author><pubDate>Mon, 05 Feb 2007 02:31:00 GMT</pubDate><guid>http://www.blogjava.net/liyong/articles/97934.html</guid><wfw:comment>http://www.blogjava.net/liyong/comments/97934.html</wfw:comment><comments>http://www.blogjava.net/liyong/articles/97934.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liyong/comments/commentRss/97934.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liyong/services/trackbacks/97934.html</trackback:ping><description><![CDATA[
		<p>面向服务架构(SOA)1.0参考模型通过OASIS的投票已经得以确定并将成为一项标准执行下去。本周一，该标准制定组织发言人证实了这一点，官方的公告也将随后在本周内发表。</p>
		<p>　　SOA参考模型(SOA-RM)将会为开发人员和架构师准确定义那些专业技术上的标准。这一参考模型的出台也将建立起评断SOA技术产品的严格标准并有望使那些单纯利用SOA概念宣传厂商最新产品的市场商人不再简单的运用先进的理念来迷惑用户。</p>
		<p>　　负责SOA参考模型工作的OASIS技术委员会成员这样描述道，该模型是一个用来理解这个先进技术理念的抽象框架，是在面向服务环境里的重要衔接方式，是标准逐步统一的重要发展进程，也是服务支持的详尽规范。它是基于统一SOA这一目的的，是架构师在开发过程中指导SOA，实践、研讨SOA的重要依据。</p>
		<p>　　SOA参考模型并不是“和其他相关的标准，技术或是任何其他已有的执行规范结合到一起即可的”，委员会这样解释，更准确的来说，它的出现是为了“用最一致的标准规范明确定义不同的执行”。</p>
		<p>　　但是，来自ZapThink的资深分析师Jason Bloomberg说道，开发者所在寻找实现SOA的关键可能还是会在别的方面入手。</p>
		<p>　　“OASIS的SOA参考模型提供了一个整体的抽象框架让使用者集合其分布式配置并有机的结合起来，”Jason Bloomberg这样说，“基本上，这个模型能够帮助企业的架构师有效的进行SOA的工作。可所面对的最大挑战则是，这个SOA参考模型实在太过抽象。它能够在企业的SOA整体计划中提供一个很具有全局性的整体框架加以指导，但是同样的在现实的SOA执行中却不能提供太多具体可行的意见。”</p>
		<p>　　来自美国Adobe Systems的资深策略分析师，在过去的16个月里工作在SOA参考模型技术委员会的Duane Nickull表示，尽管确有声音说到这个参考模型过于抽象化，但是它却是确确实实的已经开始在SOA的执行中得到使用。</p>
		<p>　　“在OASIS组织中通过成员同意并最终成为标准规范的其中之一个关键过程则是该项标准需要象一种产品一样在企业得到具体运用并能够通过检验。”他说，“而该参考模型是在更高要求下得到通过的。”</p>
		<p>　　即便仍旧会有一些反对的意见会出现在SOA的准确定义上，但是Nickull坚定的表示，SOA参考模型的出台会是在整个SOA发展过程中的积极一步。“人们之所以愿意表示出自己对SOA不同看法是因为当前的SOA架构理念还并不能完全的准确定义，人们可以说‘当我谈到SOA的时候我的意思是……’这样的话。正是这样的情况下，我们更需要一个能够用来描述这么一个架构体系的模型出现。”</p>
		<p>
		</p>
		<div id="Disclaimer">
				<p>CSDN声明：CSDN登载此文出于传递更多信息之目的，并不意味着赞同其观点或证实其描述</p>
		</div>
<img src ="http://www.blogjava.net/liyong/aggbug/97934.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liyong/" target="_blank">Timothy</a> 2007-02-05 10:31 <a href="http://www.blogjava.net/liyong/articles/97934.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Ant 攻略</title><link>http://www.blogjava.net/liyong/articles/82582.html</link><dc:creator>Timothy</dc:creator><author>Timothy</author><pubDate>Tue, 21 Nov 2006 09:58:00 GMT</pubDate><guid>http://www.blogjava.net/liyong/articles/82582.html</guid><wfw:comment>http://www.blogjava.net/liyong/comments/82582.html</wfw:comment><comments>http://www.blogjava.net/liyong/articles/82582.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liyong/comments/commentRss/82582.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liyong/services/trackbacks/82582.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 1  Ant														是什么？																																										Ant				是一种基于				Java				和				XML				的				build				工具。																														2...&nbsp;&nbsp;<a href='http://www.blogjava.net/liyong/articles/82582.html'>阅读全文</a><img src ="http://www.blogjava.net/liyong/aggbug/82582.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liyong/" target="_blank">Timothy</a> 2006-11-21 17:58 <a href="http://www.blogjava.net/liyong/articles/82582.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>J2EE SDK 安装指南</title><link>http://www.blogjava.net/liyong/articles/82321.html</link><dc:creator>Timothy</dc:creator><author>Timothy</author><pubDate>Mon, 20 Nov 2006 08:47:00 GMT</pubDate><guid>http://www.blogjava.net/liyong/articles/82321.html</guid><wfw:comment>http://www.blogjava.net/liyong/comments/82321.html</wfw:comment><comments>http://www.blogjava.net/liyong/articles/82321.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liyong/comments/commentRss/82321.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liyong/services/trackbacks/82321.html</trackback:ping><description><![CDATA[
		<p>本教程讲述Sun J2EE 1.3 SDK的安装、配置和创建并部署第一个简单的EJB。</p>
		<p>我们的目标平台是Windows XP SP2，JDK 1.4.2和J2EE SDK 1.3.1的Windows版本。我们在下面的实践中主要使用命令行模式，便于深入J2EE的内部机制。</p>
		<p>首先，必须正确安装JDK1.4.2，如果你还没有安装JDK1.4.2，请参考<a href="http://www.crackj2ee.com/Article/ShowArticle.asp?ArticleID=59">Hello World的Java教程</a>。</p>
		<p>
				<font color="#ff0000">1．下载并安装j2sdkee-1.3.1</font>
		</p>
		<p>J2EE是一个规范而并非一个产品，任何厂家都可以实现这个规范，如BEA的WebLogic，IBM的WebSphere等等，SUN给出了一个最简单的J2EE完整实现，就是J2EE SDK，它是免费的，适用于学习J2EE而非运行实际的商用程序。我们使用的J2EE SDK版本是1.3.1，可以从SUN的站点下载j2sdkee-1_3_1-win.exe，地址如下：<br /><a href="http://java.sun.com/j2ee/sdk_1.3/">http://java.sun.com/j2ee/sdk_1.3/</a><br />然后运行安装程序，选择安装目录（默认是C:\j2sdkee1.3.1），根据向导完成安装。</p>
		<p>
				<font color="#ff0000">2．配置环境变量</font>
		</p>
		<p>必须首先正确配置JDK1.4的环境变量，包括JAVA_HOME，CLASSPATH和PATH，请参考<a href="http://www.crackj2ee.com/Article/ShowArticle.asp?ArticleID=59">Hello World的Java教程</a>。</p>
		<p>然后，配置J2EE 1.3.1，设置如下环境变量：<br />J2EE_HOME=&lt;j2sdkee1.3.1安装目录&gt;，我的目录是C:\j2sdkee1.3.1<br />PATH=&lt;原PATH&gt;;%J2EE_HOME%\bin</p>
		<p>将J2EE安装目录下的lib\j2ee.jar添加到CLASSPATH中，我的CLASSPATH设置如下：<br />CLASSPATH=.;C:\j2sdkee1.3.1\lib\j2ee.jar</p>
		<p>
				<font color="#ff0000">3．启动和停止J2EE服务器</font>
		</p>
		<p>打开命令行窗口，输入j2ee -verbose，屏幕显示一些信息，看到以下信息后，J2EE服务器启动成功。</p>
		<div align="center" twffan="done">
				<img onmousewheel="return bbimg(this)" style="ZOOM: 140%" height="184" src="http://www.crackj2ee.com/Article/UploadFiles/200505/20050527092507290.jpg" width="550" onload="resizepic(this)" border="0" twffan="done" />
		</div>
		<p>要停止J2EE服务器，请打开另一个命令行窗口，输入：j2ee -stop<br />屏幕输出<br /><font color="#808080"><font color="#6f917d">Shutting down the J2EE server.<br />Shutting down JMS service...</font><br /></font>服务器便关闭了。</p>
<img src ="http://www.blogjava.net/liyong/aggbug/82321.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liyong/" target="_blank">Timothy</a> 2006-11-20 16:47 <a href="http://www.blogjava.net/liyong/articles/82321.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>WEB事务:回滚(callback)和补偿(compensation)两个概念的区别</title><link>http://www.blogjava.net/liyong/articles/81792.html</link><dc:creator>Timothy</dc:creator><author>Timothy</author><pubDate>Fri, 17 Nov 2006 09:00:00 GMT</pubDate><guid>http://www.blogjava.net/liyong/articles/81792.html</guid><wfw:comment>http://www.blogjava.net/liyong/comments/81792.html</wfw:comment><comments>http://www.blogjava.net/liyong/articles/81792.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liyong/comments/commentRss/81792.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liyong/services/trackbacks/81792.html</trackback:ping><description><![CDATA[
		<br />补偿与回滚不同，因为它是一种当工作流中发生违反规则的情况时，取消已成功完成和提交的事务所产生的影响的有效方法。在两个帐户间进行资金划转的事务是一个典型的回滚示例。第一个调用将资金从一个帐户中取出，第二个调用将相同数额的资金划转至另一个帐户。只要数据库支持两阶段提交模型，如果在事务中引发异常，回滚可恢复一致的状态。<br /><br />　　设想一下一个订单处理工作流，其中一个事务被用于通过信用卡进行支付。第一步，首先从信用卡中提取资金来支付货款。然后，在交易成功完成后，该货物不能再被销售。如果违反了业务规则，需要按照合适的规定对交易结果进行补偿 — 一般是将资金划入签帐卡。<br /><br />  <strong><font color="#ff0000">补偿就是一次真正的操作，只是上一次操作的反操作。<br />      <br />   而回滚是一个取消动作，即取消上一次还没有完成的操作 ;要能作回滚，就必须锁定资源啦</font></strong><img src ="http://www.blogjava.net/liyong/aggbug/81792.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liyong/" target="_blank">Timothy</a> 2006-11-17 17:00 <a href="http://www.blogjava.net/liyong/articles/81792.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSP::Java文件操作大全</title><link>http://www.blogjava.net/liyong/articles/81386.html</link><dc:creator>Timothy</dc:creator><author>Timothy</author><pubDate>Wed, 15 Nov 2006 13:50:00 GMT</pubDate><guid>http://www.blogjava.net/liyong/articles/81386.html</guid><wfw:comment>http://www.blogjava.net/liyong/comments/81386.html</wfw:comment><comments>http://www.blogjava.net/liyong/articles/81386.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liyong/comments/commentRss/81386.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liyong/services/trackbacks/81386.html</trackback:ping><description><![CDATA[文件的建立/检查与删除 <br /><br />&lt;%@ page contentType="text/html;charset=gb2312"%&gt;<br />&lt;%@ page import="java.io.*"%&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;文件的建立、检查与删除&lt;/title&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;%<br />String path=request.getRealPath("");<br />//out.println(path);<br />File f=new File(path,"File.txt");<br />//out.println(f);<br />//out.println(f.exists());<br /><br />if(f.exists()){//检查File.txt是否存在<br />f.delete();//删除File.txt文件<br />out.println(path + "\File.txt 存在，已删除。");<br />}else{<br />f.createNewFile();//在当前目录下建立一个名为File.txt的文件<br />out.println(path + "\File.txt 不存在，已建立。");//输出目前所在的目录路径<br />}<br />%&gt;<br /><br /><br /><br />目录的建立/检查与删除 <br /><br />&lt;%@ page contentType="text/html;charset=gb2312"%&gt;<br />&lt;%@ page import="java.io.*"%&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;目录的建立/检查与删除&lt;/title&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;%<br />String path=request.getRealPath("");<br />path=path + "\Sub";//将要建立的目录路径<br />File d=new File(path);//建立代表Sub目录的File对象，并得到它的一个引用<br />if(d.exists()){//检查Sub目录是否存在<br />d.delete();<br />out.println("Sub目录存在，已删除");<br />}else{<br />d.mkdir();//建立Sub目录<br />out.println("Sub目录不存在，已建立");<br />}<br />%&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br /><br /><br /><br />如何在JSP中处理虚拟目录 <br /><br />&lt;%@ page contentType="text/html;charset=gb2312"%&gt;<br />&lt;%@ page import="java.io.*"%&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;JSP中如何处理虚拟目录&lt;/title&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />取得虚拟目录对应的磁盘路径&lt;br&gt;<br />Web站点主目录的位置为&lt;font color=#ff0000&gt;&lt;%=request.getRealPath("/")%&gt;&lt;/font&gt;&lt;br&gt;<br />JSP网页所在的目录位置&lt;font color=#ff0000&gt;&lt;%=request.getRealPath("./")%&gt;&lt;/font&gt;&lt;br&gt;<br />JSP网页所在目录上一层目录的位置&lt;font color=#ff0000&gt;&lt;%=request.getRealPath("../")%&gt;&lt;/font&gt;&lt;br&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br /><br /><br /><br />文件属性的取得 <br /><br />&lt;%@ page contentType="text/html;charset=gb2312"%&gt;<br />&lt;%@ page import="java.util.Date,java.io.*"%&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;文件属性的取得&lt;/title&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;%<br />String path=request.getRealPath("/");<br />File f=new File(path,"ReadData.txt");<br />if(f.exists()){<br />%&gt;<br />&lt;%=f.getName()%&gt;的属性如下：&lt;br&gt;&lt;br&gt;<br />文件长度为：&lt;%=f.length()%&gt;<br />&lt;%=f.isFile()?"是文件":"不是文件"%&gt;&lt;br&gt;<br />&lt;%=f.isDirectory()?"是目录":"不是目录"%&gt;&lt;br&gt;<br />&lt;%=f.canRead()?"可读取":"不可读取"%&gt;&lt;br&gt;<br />&lt;%=f.canWrite()?"可写入":"不可写入"%&gt;&lt;br&gt;<br />&lt;%=f.isHidden()?"是隐藏文件":"不是隐藏文件"%&gt;&lt;br&gt;<br />文件的最后修改日期为：&lt;%=new Date(f.lastModified())%&gt;&lt;br&gt;<br />&lt;%<br />}else{<br />f.createNewFile();//在当前目录下建立一个名为ReaData.txt的文件<br />%&gt; <br />&lt;%=f.getName()%&gt;的属性如下：&lt;br&gt;&lt;br&gt;<br />文件长度为：&lt;%=f.length()%&gt;<br />&lt;%=f.isFile()?"是文件":"不是文件"%&gt;&lt;br&gt;<br />&lt;%=f.isDirectory()?"是目录":"不是目录"%&gt;&lt;br&gt;<br />&lt;%=f.canRead()?"可读取":"不可读取"%&gt;&lt;br&gt;<br />&lt;%=f.canWrite()?"可写入":"不可写入"%&gt;&lt;br&gt;<br />&lt;%=f.isHidden()?"是隐藏文件":"不是隐藏文件"%&gt;&lt;br&gt;<br />文件的最后修改日期为：&lt;%=new Date(f.lastModified())%&gt;&lt;br&gt;<br />&lt;%<br />}<br />%&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br /><br />取出目录中文件的方法 <br /><br />&lt;%@ page contentType="text/html;charset=gb2312"%&gt;<br />&lt;%@ page import="java.io.*"%&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;取出目录中文件的方法--列出目录中的文件&lt;/title&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;%<br />String path=request.getRealPath("/");<br />File d=new File(path);//建立当前目录中文件的File对象<br />File list[]=d.listFiles();//取得代表目录中所有文件的File对象数组<br />out.println("&lt;font color=#ff0000&gt;" + path + "目录下的文件：&lt;/font&gt;&lt;br&gt;");<br />for(int i=0;i&lt;list.length;i++){<br />if(list&lt;I&gt;.isFile()){<br />out.println(list&lt;I&gt;.getName() + "&lt;br&gt;");<br />}<br />}<br />out.println("&lt;br&gt;&lt;font color=#ff0000&gt;" + path + "目录下的目录：&lt;/font&gt;&lt;br&gt;");<br />for(int i=0;i&lt;list.length;i++){<br />if(list&lt;I&gt;.isDirectory()){<br />out.println(list&lt;I&gt;.getName() + "&lt;br&gt;");<br />}<br />}<br />%&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br /><br /><br /><br />判断是否为空白文件 <br /><br />&lt;%@ page contentType="text/html;charset=gb2312"%&gt;<br />&lt;%@ page import="java.io.*"%&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;判断是否为空白文件&lt;/title&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;%<br />String path=request.getRealPath("/");<br />out.println(path);<br />FileReader fr=new FileReader(path + "\AtEnd.txt");//建立FileReader对象，并实例化为fr<br />//对FileReader类生成的对象使用read()方法，可以从字符流中读取下一个字符。<br />if(fr.read()==-1)//判断是否已读到文件的结尾<br />{<br />out.print("AtEnd.txt文件中没有数据&lt;br&gt;");<br />}else{<br />out.println("AtEnd.txt文件中有数据");<br />}<br />fr.close();<br />%&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br />    &lt;B&gt;读取所有的文件数据&lt;/B&gt;<br />&lt;ccid_nobr&gt;<br />&lt;table width="400" border="1" cellspacing="0" cellpadding="2" <br />bordercolorlight = "black" bordercolordark = "#FFFFFF" align="center"&gt;<br />&lt;tr&gt;<br />&lt;td bgcolor="e6e6e6" class="code" style="font-size:9pt"&gt;<br />&lt;pre&gt;&lt;ccid_code&gt; &lt;%@ page contentType="text/html;charset=gb2312"%&gt;<br />&lt;%@ page import="java.io.*,java.lang.*"%&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;读取所有的文件数据&lt;/title&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;%<br />String path=request.getRealPath(".");<br />FileReader fr=new FileReader(path + "\ReadData.txt");<br />//关键在于读取过程中，要判断所读取的字符是否已经到了文件的末尾，<br />并且这个字符是不是文件中的断行符，即判断该字符值是否为13。<br />int c=fr.read();//从文件中读取一个字符<br />//判断是否已读到文件结尾<br />while(c!=-1){<br />out.print((char)c);//输出读到的数据<br />c=fr.read();//从文件中继续读取数据<br />if(c==13){//判断是否为断行字符<br />out.print("&lt;br&gt;");//输出分行标签<br />fr.skip(1);//略过一个字符<br />//c=fr.read();//读取一个字符<br />}<br />}<br />fr.close();<br />%&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br /><br />一行一行读取数据 <br /><br />&lt;%@ page contentType="text/html;charset=gb2312"%&gt;<br />&lt;%@ page import="java.io.*"%&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;文件读取&lt;/title&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;%<br />String path=request.getRealPath("");//取得当前目录的路径<br />FileReader fr=new FileReader(path + "\file\inc\t.txt");//建立FileReader对象，并实例化为fr<br />BufferedReader br=new BufferedReader(fr);//建立BufferedReader对象，并实例化为br<br />String Line=br.readLine();//从文件读取一行字符串<br />//判断读取到的字符串是否不为空<br />while(Line!=null){<br />out.println(Line + "&lt;br&gt;");//输出从文件中读取的数据<br />Line=br.readLine();//从文件中继续读取一行数据<br />}<br />br.close();//关闭BufferedReader对象<br />fr.close();//关闭文件<br />%&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br /><br /><br /><br />略过文件中的字符不读取 <br /><br />&lt;%@ page contentType="text/html;charset=gb2312"%&gt;<br />&lt;%@ page import="java.io.*"%&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;略过字节不读取&lt;/title&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;%<br />String path=request.getRealPath(".");<br />FileReader fr=new FileReader(path + "\ReadData.txt");<br />fr.skip(2);//跳过2个字节<br />int c=fr.read();//读取一个字节<br />while(c!=-1){<br />out.print((char)c);<br />c=fr.read();<br />}<br />fr.close();<br />%&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br /><br /><br /><br />将数据写入文件 <br /><br />&lt;%@ page contentType="text/html;charset=gb2312"%&gt;<br />&lt;%@ page import="java.io.*"%&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;将数据写入文件&lt;/title&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;%<br />String path=request.getRealPath(".");<br />FileWriter fw=new FileWriter(path + "\WriteData.txt");//建立FileWriter对象，并实例化fw<br />//将字符串写入文件<br />fw.write("大家好！");<br />fw.write("本书是《JSP编程技巧》");<br />fw.write("请多多指教！");<br />fw.write("email:stride@sina.com");<br />fw.close();<br /><br />FileReader fr=new FileReader(path + "\WriteData.txt");<br />BufferedReader br=new BufferedReader(fr);//建立BufferedReader对象，并实例化为br<br />String Line=br.readLine();<br />//读取一行数据<br />out.println(Line + "&lt;br&gt;");<br />br.close();//关闭BufferedReader对象<br />fr.close();<br />%&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br /><br /><br /><br />将写入文件的数据分行 <br /><br />&lt;%@ page contentType="text/html;charset=gb2312"%&gt;<br />&lt;%@ page import="java.io.*"%&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;将写入文件的数据分行&lt;/title&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;%<br />String path=request.getRealPath(".");<br />FileWriter fw=new FileWriter(path + "\WriteData.txt");<br />BufferedWriter bw=new BufferedWriter(fw);<br />bw.write("大家好！");<br />bw.write("本书是《JSP编程技巧》。");<br />bw.newLine();//断行<br />bw.write("请多多指教！");<br />bw.newLine();//断行<br />bw.write("email: stride@sina.com");<br />bw.flush();//将数据更新至文件<br />fw.close();//关闭文件流<br />out.println("写入文件内容为：&lt;br&gt;");<br />FileReader fr=new FileReader(path + "\WriteData.txt");<br />BufferedReader br=new BufferedReader(fr);<br />String Line=br.readLine();//读取一行数据<br />while(Line!=null){<br />out.println(Line + "&lt;br&gt;");<br />Line=br.readLine();<br />}<br />fr.close();<br />%&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br /><br /><br /><br />如何将数据追加写入到文件 <br /><br />&lt;%@ page contentType="text/html;charset=gb2312"%&gt;<br />&lt;%@ page import="java.io.*"%&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;将写入文件的数据分行&lt;/title&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;%<br />String path=request.getRealPath(".");<br />RandomAccessFile rf=new RandomAccessFile(path + "\WriteData.txt","rw");<br />//定义一个类RandomAccessFile的对象，并实例化<br />rf.seek(rf.length());//将指针移动到文件末尾<br />rf.writeBytes(" Append a line to the file!");<br />rf.close();//关闭文件流<br />out.println("写入文件内容为：&lt;br&gt;");<br />FileReader fr=new FileReader(path + "\WriteData.txt");<br />BufferedReader br=new BufferedReader(fr);//读取文件的BufferedRead对象<br />String Line=br.readLine();<br />while(Line!=null){<br />out.println(Line + "&lt;br&gt;");<br />Line=br.readLine();<br />}<br />fr.close();//关闭文件<br />%&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;<img src ="http://www.blogjava.net/liyong/aggbug/81386.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liyong/" target="_blank">Timothy</a> 2006-11-15 21:50 <a href="http://www.blogjava.net/liyong/articles/81386.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Struts框架 </title><link>http://www.blogjava.net/liyong/articles/81353.html</link><dc:creator>Timothy</dc:creator><author>Timothy</author><pubDate>Wed, 15 Nov 2006 11:42:00 GMT</pubDate><guid>http://www.blogjava.net/liyong/articles/81353.html</guid><wfw:comment>http://www.blogjava.net/liyong/comments/81353.html</wfw:comment><comments>http://www.blogjava.net/liyong/articles/81353.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liyong/comments/commentRss/81353.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liyong/services/trackbacks/81353.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 目录																		 																		序																		…………………………………………………………………………………………………1																		目录																		…………………………………………...&nbsp;&nbsp;<a href='http://www.blogjava.net/liyong/articles/81353.html'>阅读全文</a><img src ="http://www.blogjava.net/liyong/aggbug/81353.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liyong/" target="_blank">Timothy</a> 2006-11-15 19:42 <a href="http://www.blogjava.net/liyong/articles/81353.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>