﻿<?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-砖头-文章分类-java</title><link>http://www.blogjava.net/yaozhuan/category/12351.html</link><description /><language>zh-cn</language><lastBuildDate>Tue, 20 Mar 2007 02:38:09 GMT</lastBuildDate><pubDate>Tue, 20 Mar 2007 02:38:09 GMT</pubDate><ttl>60</ttl><item><title>DisplayTag应用(转)</title><link>http://www.blogjava.net/yaozhuan/articles/104845.html</link><dc:creator>砖头</dc:creator><author>砖头</author><pubDate>Mon, 19 Mar 2007 15:28:00 GMT</pubDate><guid>http://www.blogjava.net/yaozhuan/articles/104845.html</guid><description><![CDATA[
		<div class="postTitle">
				<font size="2"> </font>
				<font size="2">  DisplayTag是一个非常好用的表格显示标签，适合MVC模式，其主页在</font>
				<a href="http://displaytag.sourceforge.net/">
						<font size="2">http://displaytag.sourceforge.net</font>
				</a>
				<font size="2">  <br /></font>
				<font size="2">
						<strong>一、最简单的情况，未使用&lt;display:column/&gt;标签<br /></strong>  &lt;%request.setAttribute( "test", new ReportList(6) );%&gt;<br />  &lt;display:table name="test" /&gt;<br />  标签遍历List里的每一个对象，并将对象里的所有属性显示出来。一般用于开发的时候检查对象数据的完整性。<br />  <br /><strong>二、使用&lt;display:column/&gt;标签的情况</strong><br />&lt;display:table name="test"&gt;<br />  &lt;display:column property="id" title="ID" /&gt;<br />  &lt;display:column property="name" /&gt;<br />  &lt;display:column property="email" /&gt;<br />  &lt;display:column property="status" /&gt;<br />  &lt;display:column property="description" title="Comments"/&gt;<br />&lt;/display:table&gt;<br />   property对应List里对象的属性（用getXXX()方法取得），title则对应表格表头里的列名。定义列有两种方式：<br />   A、&lt;display:column property="email" /&gt; <br />      使用&lt;display:column/&gt;标签里的property属性来定义<br />   B、&lt;display:column title="email"&gt;email@it.com&lt;/display:column&gt; <br />      在&lt;display:column/&gt;标签体里增加内容，可以是常量，也可以用其他标签等等<br />   两种方式比较，用property属性来定义更加快速和利于排序。<br />   <br /></font>
				<font size="2">
						<strong>三、表格显示样式的定义<br /></strong>  A、在&lt;display:table/&gt;和&lt;display:column/&gt;标签里指定标准的html属性，烦琐<br />  B、修改样式表<br />&lt;display:table name="test" class="mars"&gt;<br />  &lt;display:column property="id" title="ID" class="idcol"/&gt;<br />  &lt;display:column property="name" /&gt;<br />  &lt;display:column property="email" /&gt;<br />  &lt;display:column property="status" class="tableCellError" /&gt;<br />  &lt;display:column property="description" title="Comments"/&gt;<br />&lt;/display:table&gt;<br />   通过class属性来指定所要应用的样式。可以在其默认样式表里（./css/screen.css）直接修改<br />   <br /></font>
				<font size="2">
						<strong>四、标签取得数据的数据源<br /></strong>  有四种范围<br />   pageScope <br />   requestScope (默认)  &lt;display:table name="test2" &gt;<br />   sessionScope  &lt;display:table name="sessionScope.holder.list" &gt; 注意，这里要指定范围，非默认<br />   applicationScope <br />   <br /></font>
				<font size="2">
						<strong>五、通过增加id属性创建隐含的对象<br /></strong>&lt;display:table name="test" id="testit"&gt;<br />    &lt;display:column property="id" title="ID" /&gt;<br />    &lt;display:column property="name" /&gt;<br />    &lt;display:column title="static value"&gt;static&lt;/display:column&gt;<br />    &lt;display:column title="row number (testit_rowNum)"&gt;&lt;%=pageContext.getAttribute("testit_rowNum")%&gt;&lt;/display:column&gt;<br />    &lt;display:column title="((ListObject)testit).getMoney()"&gt;&lt;%=((ListObject)pageContext.getAttribute("testit")).getMoney()%&gt;&lt;/display:column&gt;<br />&lt;/display:table&gt;<br />   注意到在&lt;display:table/&gt;里增加了id属性，这时就在page context里创建了一个隐含对象，指向List里的当前对象，<br />   可以通过(ListObject)pageContext.getAttribute("id")来捕获这个对象。同时还创建了一个id_rowNum对象，同样，可<br />   通过pageContext.getAttribute("testit_rowNum")来捕获，它仅仅代表当前行的行数。<br />   有了这两个隐含对象，就可以通过其他标签来访问，例如Jstl:<br />  &lt;display:table id="row" name="mylist"&gt;<br />    &lt;display:column title="row number" &gt;<br />      &lt;c:out value="${row_rowNum}"/&gt;<br />    &lt;/display:column&gt;<br />    &lt;display:column title="name" &gt;<br />      &lt;c:out value="${row.first_name}"/&gt;<br />      &lt;c:out value="${row.last_name}"/&gt;<br />    &lt;/display:column&gt;<br />  &lt;/display:table&gt;<br />  <br /><strong>六、显示部分数据</strong><br />   显示开始五条数据：通过设定length属性<br />&lt;display:table name="test" length="5"&gt;<br />  &lt;display:column property="id" title="ID" /&gt;<br />  &lt;display:column property="email" /&gt;<br />  &lt;display:column property="status" /&gt;<br />&lt;/display:table&gt;<br />   显示第三到第八条数据：通过设定offset和length属性<br />&lt;display:table name="test" offset="3" length="5"&gt;<br />  &lt;display:column property="id" title="ID" /&gt;<br />  &lt;display:column property="email" /&gt;<br />  &lt;display:column property="status" /&gt;<br />&lt;/display:table&gt;  </font>
		</div>
		<p>
				<font size="2">
						<strong>七、对email和url地址的直接连接</strong>
						<br /> &lt;display:table name="test" &gt;<br />  &lt;display:column property="id" title="ID" /&gt;<br />  &lt;display:column property="email" autolink="true" /&gt;<br />  &lt;display:column property="url" autolink="true" /&gt;<br /> &lt;/display:table&gt;<br /> 如果要显示的对象里包含email和url地址，则可以在display:column里直接设定autolink="true"来直接连接<br /> <br /><strong>八、使用装饰模式转换数据显示（写自己的 decorator ）</strong><br />  A、对整个表格应用decorator<br />  &lt;display:table name="test" decorator="org.displaytag.sample.Wrapper" &gt;<br />      &lt;display:column property="id" title="ID" /&gt;<br />      &lt;display:column property="email" /&gt;<br />      &lt;display:column property="status" /&gt;<br />      &lt;display:column property="date" /&gt;<br />      &lt;display:column property="money" /&gt;<br />  &lt;/display:table&gt;<br />    org.displaytag.sample.Wrapper即自己写的decorator，它要继承TableDecorator类，看看它的一个方法：<br />        public String getMoney()<br />    {<br />        return this.moneyFormat.format(((ListObject) this.getCurrentRowObject()).getMoney());<br />    }<br />    很明显，它通过父类的getCurrentRowObject()方法获得当前对象，然后对其getMoney()方法进行‘油漆’<br />  B、对单独的column应用decorator<br />  &lt;display:table name="test"&gt;<br />     &lt;display:column property="id" title="ID" /&gt;<br />     &lt;display:column property="email" /&gt;<br />     &lt;display:column property="status" /&gt;<br />     &lt;display:column property="date" decorator="org.displaytag.sample.LongDateWrapper" /&gt;<br />  &lt;/display:table&gt;<br />    org.displaytag.sample.LongDateWrapper要实现ColumnDecorator接口，它的方法：<br />        public final String decorate(Object columnValue)<br />    {<br />        Date date = (Date) columnValue;<br />        return this.dateFormat.format(date);<br />    }<br />    显然，它获得不了当前对象（因为它实现的是接口），仅仅是获得该对象的columnValue，然后‘油漆’<br />    <br /></font>
				<font size="2">
						<strong>九、创建动态连接<br /></strong>   有两种方法创建动态连接：<br />   A、在&lt;display:column/&gt;里通过增加href、paramId、paramName、paramScope、paramProperty属性<br />      href             基本的URL 地址<br />      paramId          加在URL 地址后的参数名称<br />      paramName        数据bean的名称，一般为null（即使用当前List里的对象）<br />      paramScope       数据bean的范围，一般为null<br />      paramProperty    数据bean的属性名称，用来填充URL 地址后的参数值<br />&lt;display:table name="sessionScope.details"&gt;<br />  &lt;display:column property="id" title="ID" href="details.jsp" paramId="id" /&gt;<br />  &lt;display:column property="email" href="details.jsp" paramId="action" paramName="testparam" paramScope="request" /&gt;<br />  &lt;display:column property="status" href="details.jsp" paramId="id" paramProperty="id" /&gt;<br />&lt;/display:table&gt;  <br />    这种方法简便直接，但缺点是无法产生类似details.jsp?id=xx&amp;action=xx的复合URL<br />   B、应用decorator 创建动态连接：<br />&lt;display:table name="sessionScope.details" decorator="org.displaytag.sample.Wrapper" &gt;<br />  &lt;display:column property="link1" title="ID" /&gt;<br />  &lt;display:column property="email" /&gt;<br />  &lt;display:column property="link2" title="Actions" /&gt;<br />&lt;/display:table&gt;<br />   org.displaytag.sample.Wrapper里的方法：<br /> public String getLink1()<br /> {<br />  ListObject lObject= (ListObject)getCurrentRowObject();<br />  int lIndex= getListIndex();<br />  return "&lt;a href=\"details.jsp?index=" + lIndex + "\"&gt;" + lObject.getId() + "&lt;/a&gt;";<br /> }</font>
		</p>
		<p>
				<br />
				<font size="2"> public String getLink2()<br /> {<br />  ListObject lObject= (ListObject)getCurrentRowObject();<br />  int lId= lObject.getId();</font>
		</p>
		<p>
				<font size="2">  return "&lt;a href=\"details.jsp?id=" + lId<br />   + "&amp;action=view\"&gt;View&lt;/a&gt; | "<br />   + "&lt;a href=\"details.jsp?id=" + lId<br />   + "&amp;action=edit\"&gt;Edit&lt;/a&gt; | "<br />   + "&lt;a href=\"details.jsp?id=" + lId<br />   + "&amp;action=delete\"&gt;Delete&lt;/a&gt;";<br /> }</font>
		</p>
		<p>
				<font size="2">
						<strong>十、分页<br /></strong>   实现分页非常的简单，增加一个pagesize属性指定一次想显示的行数即可<br />&lt;display:table name="sessionScope.test" pagesize="10"&gt;<br /> &lt;display:column property="id" title="ID" /&gt;<br /> &lt;display:column property="name" /&gt;<br /> &lt;display:column property="email" /&gt;<br /> &lt;display:column property="status" /&gt;<br />&lt;/display:table&gt;</font>
		</p>
		<p>
				<font size="2">
						<strong>十一、排序<br /></strong>   排序实现也是很简单，在需要排序的column里增加sortable="true"属性，headerClass="sortable"仅仅是<br />   指定显示的样式。column里的属性对象要实现Comparable接口，如果没有的话可以应用decorator<br />   defaultsort="1"              默认第一个column排序<br />   defaultorder="descending"    默认递减排序<br />&lt;display:table name="sessionScope.stest" defaultsort="1" defaultorder="descending"&gt;<br />  &lt;display:column property="id" title="ID" sortable="true" headerClass="sortable" /&gt;<br />  &lt;display:column property="name" sortable="true" headerClass="sortable"/&gt;<br />  &lt;display:column property="email" /&gt;<br />  &lt;display:column property="status" sortable="true" headerClass="sortable"/&gt;<br />&lt;/display:table&gt;<br />  注意的是，当同时存在分页时排序仅仅针对的是当前页面，而不是整个List都进行排序<br />  <br /></font>
				<font size="2">
						<strong>十二、column 分组<br /></strong>   分组只是需要在column里增加group属性<br />&lt;display:table name="test" class="simple"&gt;<br />  &lt;display:column property="city" title="CITY" group="1"/&gt;<br />  &lt;display:column property="project" title="PROJECT" group="2"/&gt;<br />  &lt;display:column property="amount" title="HOURS"/&gt;<br />  &lt;display:column property="task" title="TASK"/&gt;<br />&lt;/display:table&gt;</font>
		</p>
		<p>
				<font size="2">
						<strong>十三、导出数据到其他格式（页面溢出filter??）</strong>
						<br />   在&lt;display:table/&gt;里设定export="true"<br />   在&lt;display:column/&gt;里设定media="csv excel xml pdf" 决定该字段在导出到其他格式时被包不包含，不设定则都包含<br />   &lt;display:setProperty name="export.csv" value="false" /&gt;<br />   决定该种格式能不能在页面中导出<br />&lt;display:table name="test" export="true" id="currentRowObject"&gt;<br />  &lt;display:column property="id" title="ID"/&gt;<br />  &lt;display:column property="email" /&gt;<br />  &lt;display:column property="status" /&gt;<br />  &lt;display:column property="longDescription" media="csv excel xml pdf" title="Not On HTML"/&gt;<br />  &lt;display:column media="csv excel" title="URL" property="url"/&gt;<br />  &lt;display:setProperty name="export.pdf" value="true" /&gt;<br />  &lt;display:setProperty name="export.csv" value="false" /&gt;<br />&lt;/display:table&gt;</font>
		</p>
		<p>
				<font size="2">
						<strong>十四、配置属性，覆盖默认<br /></strong>  两种方法：<br />  A、在程序classpath下新建displaytag.properties文件<br />  B、对于单个表格，应用&lt;display:setProperty&gt;标签<br />  具体可配置的属性：</font>
				<a href="http://displaytag.sourceforge.net/configuration.html">
						<font size="2">http://displaytag.sourceforge.net/configuration.html</font>
				</a>
				<br />
				<font size="2">  <br /><strong>十五、一个完整的例子</strong><br />&lt;display:table name="test" export="true" sort="list" pagesize="8"&gt;<br />  &lt;display:column property="city" title="CITY" group="1" sortable="true"    headerClass="sortable"/&gt;<br />  &lt;display:column property="project" title="PROJECT" group="2" sortable="true" headerClass="sortable"/&gt;<br />  &lt;display:column property="amount" title="HOURS"/&gt;<br />  &lt;display:column property="task" title="TASK"/&gt;<br />&lt;/display:table&gt; <br />   sort="list" 对整个list进行排序<br />   导出数据到其他格式时，group无效</font>
		</p>
<img src ="http://www.blogjava.net/yaozhuan/aggbug/104845.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yaozhuan/" target="_blank">砖头</a> 2007-03-19 23:28 <a href="http://www.blogjava.net/yaozhuan/articles/104845.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>网站登陆搜索引擎的方法(转) </title><link>http://www.blogjava.net/yaozhuan/articles/53915.html</link><dc:creator>砖头</dc:creator><author>砖头</author><pubDate>Tue, 20 Jun 2006 02:29:00 GMT</pubDate><guid>http://www.blogjava.net/yaozhuan/articles/53915.html</guid><wfw:comment>http://www.blogjava.net/yaozhuan/comments/53915.html</wfw:comment><comments>http://www.blogjava.net/yaozhuan/articles/53915.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yaozhuan/comments/commentRss/53915.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yaozhuan/services/trackbacks/53915.html</trackback:ping><description><![CDATA[
		<div class="postbody">
				<p>
						<font size="1">网站推广的一般方法就是让各大搜索引擎都能搜索到你的网站，下面介绍一般搜索引擎的登录方法。</font>
				</p>
				<p>
						<font size="1">1、google<br />    如果你的网站是新发布的，或是访问量较低的网站在内容更新时，很有必要主动提交到Google，这样会使网站资料迅速更新倒Google搜索资料库，让用户能及时搜索到你的最新资料。<br />    登录地址：</font>
						<a class="bb-url" href="http://www.google.com/add_url.html" target="_blank" rel="nofollow">
								<font color="#1d58d1" size="1">http://www.google.com/add_url.html</font>
						</a>
				</p>
				<p>
						<font size="1">2、baidu<br />    baidu基本跟google差不多<br />    登录地址：</font>
						<a class="bb-url" href="http://www.baidu.com/search/url_submit.html" target="_blank" rel="nofollow">
								<font color="#1d58d1" size="1">http://www.baidu.com/search/url_submit.html</font>
						</a>
				</p>
				<p>
						<font size="1">3、ODP(开放式目录)<br />　Open Directory Project (ODP) 是仅次于Yahoo的人工操作目录索引类搜索引擎。与Yahoo不同的是，Open Directory Project (ODP)的编辑人员均为志愿者，而非其雇员。目前其志愿编辑人数已达数万人。<br />简体中文登录地址：</font>
						<a class="bb-url" href="http://www.dmoz.com/World/Chinese_Simplified/" target="_blank" rel="nofollow">
								<font color="#1d58d1" size="1">http://www.dmoz.com/World/Chinese_Simplified/</font>
						</a>
				</p>
				<p>
						<font size="1">4、yahoo中国<br />　在雅虎主站登录网站是要收费的，不过目前在雅虎中国登录网站是免费的，要登录的话得赶紧。<br />登录步骤：<br />　　1、 进入雅虎中国，</font>
						<a class="bb-url" href="http://www.yahoo.com.cn/" target="_blank" rel="nofollow">
								<font color="#1d58d1" size="1">http://www.yahoo.com.cn/</font>
						</a>
						<br />
						<font size="1">　　2、 在其左下角的"网站分类"模块中选择适合你网站的目录。<br />　　3、 点击"登录网站"，按照提示填写信息即可。</font>
				</p>
				<p>
						<font size="1">5、sohu<br />    搜狐只对非商业型网站，如政府机构，慈善机构，学校等，提供免费网站登录服务。如果你的网站属于非商业型网站，那么赶快到搜狐免费登录。商业网站（如：商场、公司、电子商务等）就要花钱来登录了。<br />    登录地址：</font>
						<a class="bb-url" href="http://db.sohu.com/regurl/regform.asp?Step=REGFORM" target="_blank" rel="nofollow">
								<font color="#1d58d1" size="1">http://db.sohu.com/regurl/regform.asp?Step=REGFORM</font>
						</a>
				</p>
				<p>
						<font size="1">6、yisou<br />    一搜是雅虎新推出的挑战google的搜索服务。<br />    登录地址：</font>
						<a class="bb-url" href="http://www.yisou.com/search_submit.html" target="_blank" rel="nofollow">
								<font color="#1d58d1" size="1">http://www.yisou.com/search_submit.html</font>
						</a>
				</p>
				<p>
						<font size="1">7、天网搜索<br />    北大的搜索引擎，高校学生用得比较多。<br />    登录地址：</font>
						<a class="bb-url" href="http://www.infomall.cn/url_submit.html" target="_blank" rel="nofollow">
								<font color="#1d58d1" size="1">http://www.infomall.cn/url_submit.html</font>
						</a>
				</p>
				<p>
						<font size="1">8、孙悟空搜索<br />    用得很少。<br />    地址：</font>
						<a class="bb-url" href="http://www.sunwukong.cn/add.php" target="_blank" rel="nofollow">
								<font color="#1d58d1" size="1">http://www.sunwukong.cn/add.php</font>
						</a>
				</p>
				<p>
						<font size="1">9、搜狗<br />    臭名昭著的搜索引擎<br />    地址：</font>
						<a class="bb-url" href="http://www.soogou.com/add.htm" target="_blank" rel="nofollow">
								<font color="#1d58d1" size="1">http://www.soogou.com/add.htm</font>
						</a>
				</p>
				<p>
						<font size="1">10、易搜<br />    没用过，不知道怎么样，看名字跟yahoo的yisou很相近。<br />    地址：</font>
						<a class="bb-url" href="http://www.ysou.com/site/reg.asp" target="_blank" rel="nofollow">
								<font color="#1d58d1" size="1">http://www.ysou.com/site/reg.asp</font>
						</a>
				</p>
				<p>
						<font size="1">    申请免费统计alexa头像：<br />    </font>
						<a href="http://www.alexa.com/site/site_stats/signup">
								<font color="#1d58d1" size="1">http://www.alexa.com/site/site_stats/signup</font>
						</a>
				</p>
				<p>
						<font size="1">    更新ALEXA的缩略图：<br />    </font>
						<a href="http://thumbnails.alexa.com/update_thumbnail">
								<font color="#1d58d1" size="1">http://thumbnails.alexa.com/update_thumbnail</font>
						</a>
				</p>
				<p>
						<font size="1">    ALEXA的统计：<br />    流量排名<br />    </font>
						<a href="http://www.alexa.com/site/site_stats/signup">
								<font color="#1d58d1" size="1">http://www.alexa.com/site/site_stats/signup</font>
						</a>
						<font size="1">
						</font>
				</p>
				<p>
						<font size="1">    站点统计<br />    </font>
						<a href="http://www.alexa.com/site/site_stats/signup?mode=stats">
								<font color="#1d58d1" size="1">http://www.alexa.com/site/site_stats/signup?mode=stats</font>
						</a>
						<font size="1">
						</font>
				</p>
				<p>
						<font size="1">    流量历史图片<br />    </font>
						<a href="http://www.alexa.com/site/site_stats/signup?mode=graph">
								<font color="#1d58d1" size="1">http://www.alexa.com/site/site_stats/signup?mode=graph</font>
						</a>
				</p>
		</div>
<img src ="http://www.blogjava.net/yaozhuan/aggbug/53915.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yaozhuan/" target="_blank">砖头</a> 2006-06-20 10:29 <a href="http://www.blogjava.net/yaozhuan/articles/53915.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>XML卷之实战锦囊（2）：动态查询 </title><link>http://www.blogjava.net/yaozhuan/articles/53914.html</link><dc:creator>砖头</dc:creator><author>砖头</author><pubDate>Tue, 20 Jun 2006 02:25:00 GMT</pubDate><guid>http://www.blogjava.net/yaozhuan/articles/53914.html</guid><wfw:comment>http://www.blogjava.net/yaozhuan/comments/53914.html</wfw:comment><comments>http://www.blogjava.net/yaozhuan/articles/53914.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yaozhuan/comments/commentRss/53914.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yaozhuan/services/trackbacks/53914.html</trackback:ping><description><![CDATA[
		<table cellspacing="0" cellpadding="0" width="100%" border="0">
				<tbody>
						<tr>
								<td>
										<dl>
												<dt disabled="">
														<font size="1">动机： </font>
												</dt>
												<dd>
														<font size="1">排序功能让我们页面上的数据显的更人性化，是我们在网站上见过的很普遍的一个功能效果了。以往的自动排序都是用大量的脚本代码来完成的，对一般的爱好者来说这是件困难的事情。然而用XML来处理的话就简单多了。让自己的页面更加绚丽，哈哈，您是不是也心动了呢！ </font>
												</dd>
												<dt disabled="">
														<font size="1">材料： </font>
												</dt>
												<dd>
														<font size="1">XML卷之动态排序<br />有2个文件：paixu.xml 和 paixu.xsl </font>
												</dd>
												<dt disabled="">
														<font size="1">作用： </font>
												</dt>
												<dd>
														<font size="1">在不刷新页面的情况下更据用户自己的需要对数据重新进行排序显示，有效的提高数据互动功能，让自己的页面更加绚丽多彩。 </font>
												</dd>
										</dl>
								</td>
						</tr>
						<tr>
								<td>
										<dl>
												<dt disabled="">
														<font size="1">效果： </font>
												</dt>
												<dd>
														<font disabled="" color="#1d58d1" size="1">
																<a href="http://www.wy1997.com/sailflying/learn/paixu.xml">浏览这里</a>
														</font>
														<font size="1"> (已失效)</font>
												</dd>
										</dl>
								</td>
						</tr>
						<tr>
								<td>
										<dl>
												<dt disabled="">
														<font size="1">代码： </font>
												</dt>
												<dd>
														<table class="tablelogo" cellspacing="0" cellpadding="0" width="370" border="0">
																<tbody>
																		<tr>
																				<td height="20">
																						<b>
																								<font size="1">paixu.xml</font>
																						</b>
																				</td>
																		</tr>
																		<tr>
																				<td>
																						<font size="1">&lt;?xml version="1.0" encoding="gb2312" ?&gt;<br />&lt;?xml-stylesheet type="text/xsl" href="paixu.xsl" ?&gt;<br />&lt;BlueIdea&gt;<br />  &lt;team&gt;<br />    &lt;blue_ID&gt;1&lt;/blue_ID&gt;<br />    &lt;blue_name&gt;Sailflying&lt;/blue_name&gt;<br />    &lt;blue_text&gt;一个简单的排序&lt;/blue_text&gt;<br />    &lt;blue_time&gt;2002-1-11 17:35:33&lt;/blue_time&gt;<br />    &lt;blue_class&gt;XML专题&lt;/blue_class&gt;<br />  &lt;/team&gt;<br />  &lt;team&gt;<br />    &lt;blue_ID&gt;2&lt;/blue_ID&gt;<br />    &lt;blue_name&gt;flyingbird&lt;/blue_name&gt;<br />    &lt;blue_text&gt;嫁给你，是要你疼的&lt;/blue_text&gt;<br />    &lt;blue_time&gt;2001-09-06 12:45:51&lt;/blue_time&gt;<br />    &lt;blue_class&gt;灌水精华&lt;/blue_class&gt;<br />  &lt;/team&gt;<br />  &lt;team&gt;<br />    &lt;blue_ID&gt;3&lt;/blue_ID&gt;<br />    &lt;blue_name&gt;苛子&lt;/blue_name&gt;<br />    &lt;blue_text&gt;正则表达式在ＵＢＢ论坛中的应用&lt;/blue_text&gt;<br />    &lt;blue_time&gt;2001-11-23 21:02:16&lt;/blue_time&gt;<br />    &lt;blue_class&gt;Web 编程精华&lt;/blue_class&gt;<br />  &lt;/team&gt;<br />  &lt;team&gt;<br />    &lt;blue_ID&gt;4&lt;/blue_ID&gt;<br />    &lt;blue_name&gt;太乙郎&lt;/blue_name&gt;<br />    &lt;blue_text&gt;年末经典分舵聚会完全手册 v0.1&lt;/blue_text&gt;<br />    &lt;blue_time&gt;2000-12-08 10:22:48&lt;/blue_time&gt;<br />    &lt;blue_class&gt;论坛灌水区&lt;/blue_class&gt;<br />  &lt;/team&gt;<br />  &lt;team&gt;<br />    &lt;blue_ID&gt;5&lt;/blue_ID&gt;<br />    &lt;blue_name&gt;mmkk&lt;/blue_name&gt;<br />    &lt;blue_text&gt;Asp错误信息总汇&lt;/blue_text&gt;<br />    &lt;blue_time&gt;2001-10-13 16:39:05&lt;/blue_time&gt;<br />    &lt;blue_class&gt;javascript脚本&lt;/blue_class&gt;<br />  &lt;/team&gt;<br />&lt;/BlueIdea&gt; <br /></font>
																				</td>
																		</tr>
																</tbody>
														</table>
														<br />
														<table class="tablelogo" cellspacing="0" cellpadding="0" border="0">
																<tbody>
																		<tr>
																				<td height="20">
																						<b>
																								<font size="1">paixu.xsl</font>
																						</b>
																				</td>
																		</tr>
																		<tr>
																				<td>
																						<font size="1">&lt;?xml version="1.0" encoding="gb2312" ?&gt;<br />&lt;xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"&gt;<br />&lt;xsl:template match="/"&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt; XML卷之实战锦囊（1）：动态排序&lt;/title&gt;<br />&lt;style&gt;body,BlueIdea,team,blue_ID,blue_name,blue_text,blue_time,<br />blue_class{ font: 12px "宋体", "Arial", "Times New Roman"; } <br />table { font-size: 12px; border: 0px double; border-color: #99CC99 #99CC99 #CCCCCC #CCCCCC; cellpadding:3;cellspacing:3; bgcolor:#eeeeee; text-decoration: blink} <br />span { font-size: 12px; color: red; }<br />&lt;/style&gt;<br />&lt;script&gt;<br />function taxis(x) <br />{ <br />stylesheet=document.XSLDocument; <br />source=document.XMLDocument; <br />sortField=document.XSLDocument.selectSingleNode("//@order-by");<br />sortField.value=x; <br />Layer1.innerHTML=source.documentElement.transformNode(stylesheet); <br />}<br />&lt;/script&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;p align="center"&gt;&lt;span&gt;XML卷之实战锦囊（1）：动态排序&lt;/span&gt;&lt;/p&gt;<br />&lt;div id="Layer1" name="Layer1"&gt;<br />&lt;xsl:apply-templates select="BlueIdea" /&gt;<br />&lt;/div&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="BlueIdea"&gt;<br />&lt;table width="500" border="1" align="center" cellpadding="1" cellspacing="1" bordercolordark="#ffffff" bordercolorlight="#ADAAAD"&gt;<br />&lt;tr bgcolor="#FFCC99" align="center"&gt;<br />&lt;td style="cursor:s-resize" onClick="taxis('blue_ID')"&gt;编号&lt;/td&gt;<br />&lt;td style="cursor:s-resize" onClick="taxis('blue_name')"&gt;姓名&lt;/td&gt;<br />&lt;td style="cursor:s-resize" onClick="taxis('blue_text')"&gt;主题&lt;/td&gt;<br />&lt;td style="cursor:s-resize" onClick="taxis('blue_time')"&gt;发表时间&lt;/td&gt;<br />&lt;td style="cursor:s-resize" onClick="taxis('blue_class')"&gt;归类&lt;/td&gt;<br />&lt;/tr&gt;<br />&lt;xsl:apply-templates select="team" order-by="blue_ID"/&gt;<br />&lt;/table&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="team"&gt;<br />&lt;tr align="center"&gt;<br />&lt;xsl:apply-templates select="blue_ID" /&gt;<br />&lt;xsl:apply-templates select="blue_name" /&gt;<br />&lt;xsl:apply-templates select="blue_text" /&gt;<br />&lt;xsl:apply-templates select="blue_time" /&gt;<br />&lt;xsl:apply-templates select="blue_class" /&gt;<br />&lt;/tr&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="blue_ID"&gt;<br />&lt;td bgcolor="#eeeeee"&gt;<br />&lt;xsl:value-of /&gt;<br />&lt;/td&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="blue_name"&gt;<br />&lt;td&gt;<br />&lt;xsl:value-of /&gt;<br />&lt;/td&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="blue_text"&gt;<br />&lt;td&gt;<br />&lt;xsl:value-of /&gt;<br />&lt;/td&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="blue_time"&gt;<br />&lt;td&gt;<br />&lt;xsl:value-of /&gt;<br />&lt;/td&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="blue_class"&gt;<br />&lt;td&gt;<br />&lt;xsl:value-of /&gt;<br />&lt;/td&gt;<br />&lt;/xsl:template&gt;<br />&lt;/xsl:stylesheet&gt;<br /></font>
																				</td>
																		</tr>
																</tbody>
														</table>
														<br />
												</dd>
										</dl>
										<dl>
												<dt disabled="">
														<font size="1">讲解： </font>
												</dt>
												<dd>
														<table class="tablelogo" cellspacing="0" cellpadding="0" width="497" border="0">
																<tbody>
																		<tr>
																				<td>
																						<font size="1">1）paixu.xml 是数据文件，相信大家都不会有问题。<br />2）paixu.xsl 是格式文件，有几个地方要注意。 </font>
																				</td>
																		</tr>
																		<tr>
																				<td>
																						<p>
																								<font size="1">（1）脚本中：<br /><br /></font>
																								<font size="1">
																										<font color="red">sortField=document.XSLDocument.selectSingleNode("//@order-by"); <br /></font>作用是：找到有属性为order-by的第一个节点，因此它对应的节点就是<br /></font>
																								<font size="1">
																										<font color="red">&lt;xsl:apply-templates select="team" order-by="blue_ID"/&gt;<br /></font>因此在初次onLoad的时候order-by的value值是blue_ID。<br />而我们就是通过重新定义order-by的value值来达到排序的目的。 </font>
																						</p>
																						<font color="red">
																								<br />
																								<font size="1">Layer1.innerHTML=source.documentElement.transformNode(stylesheet); <br /></font>
																						</font>
																						<font size="1">作用是：转化XML数据后更改Layer1，因此在传出参数'blue_name'后，<br /></font>
																						<font size="1">
																								<font color="red">&lt;td style="cursor:s-resize" onClick="taxis('blue_name)"&gt;姓名&lt;/td&gt;<br /></font>我们将order-by的value值修改为是'blue_name'，即以'blue_name'为排序方式。<br />继而通过重新显示Layer1的innerHTML值来显示新的排序内容。<br /></font>
																						<p>
																								<font size="1">（2）文本中：<br /></font>
																								<font color="red">
																										<br />
																										<font size="1">order-by<br /></font>
																								</font>
																								<font size="1">这个可不能少哦，不然就找不到了，效果嘛，你瞧瞧看吧！！ </font>
																						</p>
																						<p>
																								<font size="1">
																										<font color="red">&lt;?xml version="1.0" encoding="gb2312" ?&gt;<br /></font>另外说一点：<br />在大多的XML教科书中所显示的代码中很少会加上encoding="gb2312" ，<br />因此我们在XML中用到中文的时候会报错，原因就是没有写这个申明。<br /></font>
																						</p>
																				</td>
																		</tr>
																</tbody>
														</table>
														<br />
												</dd>
												<dt disabled="">
														<font size="1">后记： </font>
												</dt>
												<dd>
														<font size="1">大家熟悉动态排序完成思路后会发现，其实我们的实现手法很简单。<br /></font>
														<font size="1">
																<font color="red">就是修改order-by的数值，然后重新显示。<br /></font>在动态查询和动态分页的功能中我们依然是按照这个思路去完成的。</font>
												</dd>
										</dl>
								</td>
						</tr>
				</tbody>
		</table>
<img src ="http://www.blogjava.net/yaozhuan/aggbug/53914.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yaozhuan/" target="_blank">砖头</a> 2006-06-20 10:25 <a href="http://www.blogjava.net/yaozhuan/articles/53914.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>XML卷之实战锦囊（1）：动态排序 </title><link>http://www.blogjava.net/yaozhuan/articles/53912.html</link><dc:creator>砖头</dc:creator><author>砖头</author><pubDate>Tue, 20 Jun 2006 02:19:00 GMT</pubDate><guid>http://www.blogjava.net/yaozhuan/articles/53912.html</guid><wfw:comment>http://www.blogjava.net/yaozhuan/comments/53912.html</wfw:comment><comments>http://www.blogjava.net/yaozhuan/articles/53912.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yaozhuan/comments/commentRss/53912.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yaozhuan/services/trackbacks/53912.html</trackback:ping><description><![CDATA[
		<table cellspacing="0" cellpadding="0" width="100%" border="0">
				<tbody>
						<tr>
								<td>
										<dl>
												<dt disabled="">
														<font size="1">动机： </font>
												</dt>
												<dd>
														<font size="1">排序功能让我们页面上的数据显的更人性化，是我们在网站上见过的很普遍的一个功能效果了。以往的自动排序都是用大量的脚本代码来完成的，对一般的爱好者来说这是件困难的事情。然而用XML来处理的话就简单多了。让自己的页面更加绚丽，哈哈，您是不是也心动了呢！ </font>
												</dd>
												<dt disabled="">
														<font size="1">材料： </font>
												</dt>
												<dd>
														<font size="1">XML卷之动态排序<br />有2个文件：paixu.xml 和 paixu.xsl </font>
												</dd>
												<dt disabled="">
														<font size="1">作用： </font>
												</dt>
												<dd>
														<font size="1">在不刷新页面的情况下更据用户自己的需要对数据重新进行排序显示，有效的提高数据互动功能，让自己的页面更加绚丽多彩。 </font>
												</dd>
										</dl>
								</td>
						</tr>
						<tr>
								<td>
										<dl>
												<dt disabled="">
														<font size="1">效果： </font>
												</dt>
												<dd>
														<font disabled="" color="#1d58d1" size="1">
																<a href="http://www.wy1997.com/sailflying/learn/paixu.xml">浏览这里</a>
														</font>
														<font size="1">
														</font>
												</dd>
										</dl>
								</td>
						</tr>
						<tr>
								<td>
										<dl>
												<dt disabled="">
														<font size="1">代码： </font>
												</dt>
												<dd>
														<table class="tablelogo" cellspacing="0" cellpadding="0" width="370" border="0">
																<tbody>
																		<tr>
																				<td height="20">
																						<b>
																								<font size="1">paixu.xml</font>
																						</b>
																				</td>
																		</tr>
																		<tr>
																				<td>
																						<font size="1">&lt;?xml version="1.0" encoding="gb2312" ?&gt;<br />&lt;?xml-stylesheet type="text/xsl" href="paixu.xsl" ?&gt;<br />&lt;BlueIdea&gt;<br />  &lt;team&gt;<br />    &lt;blue_ID&gt;1&lt;/blue_ID&gt;<br />    &lt;blue_name&gt;Sailflying&lt;/blue_name&gt;<br />    &lt;blue_text&gt;一个简单的排序&lt;/blue_text&gt;<br />    &lt;blue_time&gt;2002-1-11 17:35:33&lt;/blue_time&gt;<br />    &lt;blue_class&gt;XML专题&lt;/blue_class&gt;<br />  &lt;/team&gt;<br />  &lt;team&gt;<br />    &lt;blue_ID&gt;2&lt;/blue_ID&gt;<br />    &lt;blue_name&gt;flyingbird&lt;/blue_name&gt;<br />    &lt;blue_text&gt;嫁给你，是要你疼的&lt;/blue_text&gt;<br />    &lt;blue_time&gt;2001-09-06 12:45:51&lt;/blue_time&gt;<br />    &lt;blue_class&gt;灌水精华&lt;/blue_class&gt;<br />  &lt;/team&gt;<br />  &lt;team&gt;<br />    &lt;blue_ID&gt;3&lt;/blue_ID&gt;<br />    &lt;blue_name&gt;苛子&lt;/blue_name&gt;<br />    &lt;blue_text&gt;正则表达式在ＵＢＢ论坛中的应用&lt;/blue_text&gt;<br />    &lt;blue_time&gt;2001-11-23 21:02:16&lt;/blue_time&gt;<br />    &lt;blue_class&gt;Web 编程精华&lt;/blue_class&gt;<br />  &lt;/team&gt;<br />  &lt;team&gt;<br />    &lt;blue_ID&gt;4&lt;/blue_ID&gt;<br />    &lt;blue_name&gt;太乙郎&lt;/blue_name&gt;<br />    &lt;blue_text&gt;年末经典分舵聚会完全手册 v0.1&lt;/blue_text&gt;<br />    &lt;blue_time&gt;2000-12-08 10:22:48&lt;/blue_time&gt;<br />    &lt;blue_class&gt;论坛灌水区&lt;/blue_class&gt;<br />  &lt;/team&gt;<br />  &lt;team&gt;<br />    &lt;blue_ID&gt;5&lt;/blue_ID&gt;<br />    &lt;blue_name&gt;mmkk&lt;/blue_name&gt;<br />    &lt;blue_text&gt;Asp错误信息总汇&lt;/blue_text&gt;<br />    &lt;blue_time&gt;2001-10-13 16:39:05&lt;/blue_time&gt;<br />    &lt;blue_class&gt;javascript脚本&lt;/blue_class&gt;<br />  &lt;/team&gt;<br />&lt;/BlueIdea&gt; <br /></font>
																				</td>
																		</tr>
																</tbody>
														</table>
														<br />
														<table class="tablelogo" cellspacing="0" cellpadding="0" border="0">
																<tbody>
																		<tr>
																				<td height="20">
																						<b>
																								<font size="1">paixu.xsl</font>
																						</b>
																				</td>
																		</tr>
																		<tr>
																				<td>
																						<font size="1">&lt;?xml version="1.0" encoding="gb2312" ?&gt;<br />&lt;xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"&gt;<br />&lt;xsl:template match="/"&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt; XML卷之实战锦囊（1）：动态排序&lt;/title&gt;<br />&lt;style&gt;body,BlueIdea,team,blue_ID,blue_name,blue_text,blue_time,<br />blue_class{ font: 12px "宋体", "Arial", "Times New Roman"; } <br />table { font-size: 12px; border: 0px double; border-color: #99CC99 #99CC99 #CCCCCC #CCCCCC; cellpadding:3;cellspacing:3; bgcolor:#eeeeee; text-decoration: blink} <br />span { font-size: 12px; color: red; }<br />&lt;/style&gt;<br />&lt;script&gt;<br />function taxis(x) <br />{ <br />stylesheet=document.XSLDocument; <br />source=document.XMLDocument; <br />sortField=document.XSLDocument.selectSingleNode("//@order-by");<br />sortField.value=x; <br />Layer1.innerHTML=source.documentElement.transformNode(stylesheet); <br />}<br />&lt;/script&gt;<br />&lt;/head&gt;<br />&lt;body&gt;<br />&lt;p align="center"&gt;&lt;span&gt;XML卷之实战锦囊（1）：动态排序&lt;/span&gt;&lt;/p&gt;<br />&lt;div id="Layer1" name="Layer1"&gt;<br />&lt;xsl:apply-templates select="BlueIdea" /&gt;<br />&lt;/div&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="BlueIdea"&gt;<br />&lt;table width="500" border="1" align="center" cellpadding="1" cellspacing="1" bordercolordark="#ffffff" bordercolorlight="#ADAAAD"&gt;<br />&lt;tr bgcolor="#FFCC99" align="center"&gt;<br />&lt;td style="cursor:s-resize" onClick="taxis('blue_ID')"&gt;编号&lt;/td&gt;<br />&lt;td style="cursor:s-resize" onClick="taxis('blue_name')"&gt;姓名&lt;/td&gt;<br />&lt;td style="cursor:s-resize" onClick="taxis('blue_text')"&gt;主题&lt;/td&gt;<br />&lt;td style="cursor:s-resize" onClick="taxis('blue_time')"&gt;发表时间&lt;/td&gt;<br />&lt;td style="cursor:s-resize" onClick="taxis('blue_class')"&gt;归类&lt;/td&gt;<br />&lt;/tr&gt;<br />&lt;xsl:apply-templates select="team" order-by="blue_ID"/&gt;<br />&lt;/table&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="team"&gt;<br />&lt;tr align="center"&gt;<br />&lt;xsl:apply-templates select="blue_ID" /&gt;<br />&lt;xsl:apply-templates select="blue_name" /&gt;<br />&lt;xsl:apply-templates select="blue_text" /&gt;<br />&lt;xsl:apply-templates select="blue_time" /&gt;<br />&lt;xsl:apply-templates select="blue_class" /&gt;<br />&lt;/tr&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="blue_ID"&gt;<br />&lt;td bgcolor="#eeeeee"&gt;<br />&lt;xsl:value-of /&gt;<br />&lt;/td&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="blue_name"&gt;<br />&lt;td&gt;<br />&lt;xsl:value-of /&gt;<br />&lt;/td&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="blue_text"&gt;<br />&lt;td&gt;<br />&lt;xsl:value-of /&gt;<br />&lt;/td&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="blue_time"&gt;<br />&lt;td&gt;<br />&lt;xsl:value-of /&gt;<br />&lt;/td&gt;<br />&lt;/xsl:template&gt;<br />&lt;xsl:template match="blue_class"&gt;<br />&lt;td&gt;<br />&lt;xsl:value-of /&gt;<br />&lt;/td&gt;<br />&lt;/xsl:template&gt;<br />&lt;/xsl:stylesheet&gt;<br /></font>
																				</td>
																		</tr>
																</tbody>
														</table>
														<br />
												</dd>
										</dl>
										<dl>
												<dt disabled="">
														<font size="1">讲解： </font>
												</dt>
												<dd>
														<table class="tablelogo" cellspacing="0" cellpadding="0" width="497" border="0">
																<tbody>
																		<tr>
																				<td>
																						<font size="1">1）paixu.xml 是数据文件，相信大家都不会有问题。<br />2）paixu.xsl 是格式文件，有几个地方要注意。 </font>
																				</td>
																		</tr>
																		<tr>
																				<td>
																						<p>
																								<font size="1">（1）脚本中：<br /><br /></font>
																								<font size="1">
																										<font color="red">sortField=document.XSLDocument.selectSingleNode("//@order-by"); <br /></font>作用是：找到有属性为order-by的第一个节点，因此它对应的节点就是<br /></font>
																								<font size="1">
																										<font color="red">&lt;xsl:apply-templates select="team" order-by="blue_ID"/&gt;<br /></font>因此在初次onLoad的时候order-by的value值是blue_ID。<br />而我们就是通过重新定义order-by的value值来达到排序的目的。 </font>
																						</p>
																						<font color="red">
																								<br />
																								<font size="1">Layer1.innerHTML=source.documentElement.transformNode(stylesheet); <br /></font>
																						</font>
																						<font size="1">作用是：转化XML数据后更改Layer1，因此在传出参数'blue_name'后，<br /></font>
																						<font size="1">
																								<font color="red">&lt;td style="cursor:s-resize" onClick="taxis('blue_name)"&gt;姓名&lt;/td&gt;<br /></font>我们将order-by的value值修改为是'blue_name'，即以'blue_name'为排序方式。<br />继而通过重新显示Layer1的innerHTML值来显示新的排序内容。<br /></font>
																						<p>
																								<font size="1">（2）文本中：<br /></font>
																								<font color="red">
																										<br />
																										<font size="1">order-by<br /></font>
																								</font>
																								<font size="1">这个可不能少哦，不然就找不到了，效果嘛，你瞧瞧看吧！！ </font>
																						</p>
																						<p>
																								<font size="1">
																										<font color="red">&lt;?xml version="1.0" encoding="gb2312" ?&gt;<br /></font>另外说一点：<br />在大多的XML教科书中所显示的代码中很少会加上encoding="gb2312" ，<br />因此我们在XML中用到中文的时候会报错，原因就是没有写这个申明。<br /></font>
																						</p>
																				</td>
																		</tr>
																</tbody>
														</table>
														<br />
												</dd>
												<dt disabled="">
														<font size="1">后记： </font>
												</dt>
												<dd>
														<font size="1">大家熟悉动态排序完成思路后会发现，其实我们的实现手法很简单。<br /></font>
														<font color="red" size="1">就是修改order-by的数值，然后重新显示。<br /></font>
												</dd>
										</dl>
								</td>
						</tr>
				</tbody>
		</table>
<img src ="http://www.blogjava.net/yaozhuan/aggbug/53912.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yaozhuan/" target="_blank">砖头</a> 2006-06-20 10:19 <a href="http://www.blogjava.net/yaozhuan/articles/53912.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>How to install JDK in Linux</title><link>http://www.blogjava.net/yaozhuan/articles/53905.html</link><dc:creator>砖头</dc:creator><author>砖头</author><pubDate>Tue, 20 Jun 2006 02:09:00 GMT</pubDate><guid>http://www.blogjava.net/yaozhuan/articles/53905.html</guid><wfw:comment>http://www.blogjava.net/yaozhuan/comments/53905.html</wfw:comment><comments>http://www.blogjava.net/yaozhuan/articles/53905.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yaozhuan/comments/commentRss/53905.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yaozhuan/services/trackbacks/53905.html</trackback:ping><description><![CDATA[
		<p>
				<font size="1">
						<font face="Nimbus Roman No9 L, serif">1. </font>先从网上下载<font face="Nimbus Roman No9 L, serif">jdk(jdk-1_5_0_02-linux-i586-rpm.bin) </font>，推荐<font face="Nimbus Roman No9 L, serif">SUN</font>的官方网站<font face="Nimbus Roman No9 L, serif" color="#4371a6"><a href="http://www.sun.com/" target="_blank">www.sun.com</a></font>，下载后放在<font face="Nimbus Roman No9 L, serif">/home</font>目录中，当然其它地方也行。 </font>
		</p>
		<p>
				<font size="1">2.1 进入安装目录 </font>
				<font face="Nimbus Roman No9 L, serif">
						<br />
						<font size="1">#cd /home<br />#cp jdk-1_5_0_02-linux-i586-rpm.bin /usr/local<br />#cd /usr/local<br /></font>
				</font>
				<br />
				<font size="1">2.2 给所有用户添加可执行的权限 </font>
				<font face="Nimbus Roman No9 L, serif">
						<br />
						<font size="1">#chmod +x jdk-1_5_0_02-linux-i586-rpm.bin<br />解压缩之<br /># </font>
						<font color="#ff0000" size="1">./jdk-1_5_0_02-linux-i586.rpm.bin<br /><br /></font>
				</font>
				<font size="1">2.3 此时会生成文件<font face="Nimbus Roman No9 L, serif">jdk-1_5_0_02-linux-i586.rpm</font>，同样给所有用户添加可执行的权限 </font>
				<font face="Nimbus Roman No9 L, serif">
						<br />
						<font size="1">#chmod +x jdk-1_5_0_02-linux-i586.rpm<br /></font>
				</font>
				<font size="1">安装程序 </font>
				<font face="Nimbus Roman No9 L, serif">
						<br />
						<font size="1">#<font color="#ff0000">rpm -ivh jdk-1_5_0_02-linux-i586.rpm</font><br /></font>
				</font>
				<font size="1">过程出现安装协议等，按接受即可。 </font>
		</p>
		<p>
				<font size="1">
						<font face="Nimbus Roman No9 L, serif">3.</font> 设置环境变量。 </font>
				<font face="Nimbus Roman No9 L, serif">
						<br />
						<font size="1">#vi <font color="#0000ff">/etc/profile</font><br /></font>
				</font>
				<font size="1">在最后面加入 </font>
				<font face="Nimbus Roman No9 L, serif">
						<br />
						<font size="1">
								<font color="#ff0000">#set java environment<br />JAVA_HOME=/usr/java/jdk-1_5_0_02<br />CLASSPATH=.:</font>
						</font>
				</font>
				<font color="#ff0000">
						<font size="1">＄ </font>
						<font size="1">
								<font face="Nimbus Roman No9 L, serif">JAVA_HOME/lib/tools.jar<br />PATH=</font>
						</font>
				</font>
				<font color="#ff0000" size="1">＄<font face="Nimbus Roman No9 L, serif">JAVA_HOME/bin:</font></font>
				<font color="#ff0000">
						<font size="1">＄ </font>
						<font size="1">
								<font face="Nimbus Roman No9 L, serif">PATH<br />export JAVA_HOME CLASSPATH PATH</font>
								<br />
						</font>
				</font>
				<font size="1">保存退出。 </font>
		</p>
		<p>
				<font size="1">要使<font face="Nimbus Roman No9 L, serif">JDK</font>在所有的用户中使用，可以这样： </font>
				<font face="Nimbus Roman No9 L, serif">
						<br />
						<font size="1">vi <font color="#0000ff">/etc/profile.d/java.sh</font><br /></font>
				</font>
				<font size="1">在新的<font face="Nimbus Roman No9 L, serif">java.sh</font>中输入以上相同的内容 </font>
				<font size="1">
						<font face="Nimbus Roman No9 L, serif">.<br /></font>保存退出，然后给<font face="Nimbus Roman No9 L, serif">java.sh</font>分配权限：<font face="Nimbus Roman No9 L, serif"><font color="#ff0000">chmod 755 /etc/profile.d/java.sh</font></font></font>
		</p>
		<p>
				<font size="1">
						<font face="Nimbus Roman No9 L, serif">4. </font>在终端使用<font face="Nimbus Roman No9 L, serif">echo</font>命令检查环境变量设置情况。 </font>
				<font face="Nimbus Roman No9 L, serif">
						<br />
						<font size="1">#echo </font>
				</font>
				<font size="1">＄ </font>
				<font size="1">
						<font face="Nimbus Roman No9 L, serif">JAVA_HOME<br />#echo </font>＄ </font>
				<font size="1">
						<font face="Nimbus Roman No9 L, serif">CLASSPATH<br />#echo </font>＄<font face="Nimbus Roman No9 L, serif">PATH</font></font>
		</p>
		<p>
				<font size="1">
						<font face="Nimbus Roman No9 L, serif">5. </font>检查<font face="Nimbus Roman No9 L, serif">JDK</font>是否安装成功。 </font>
				<font face="Nimbus Roman No9 L, serif">
						<br />
						<font size="1">#java -version<br /></font>
				</font>
				<font size="1">如果看到<font face="Nimbus Roman No9 L, serif">JVM</font>版本及相关信息，即安装成功！<br /></font>
		</p>
<img src ="http://www.blogjava.net/yaozhuan/aggbug/53905.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yaozhuan/" target="_blank">砖头</a> 2006-06-20 10:09 <a href="http://www.blogjava.net/yaozhuan/articles/53905.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>How to use jar to implement double-click-run like .exe file</title><link>http://www.blogjava.net/yaozhuan/articles/53903.html</link><dc:creator>砖头</dc:creator><author>砖头</author><pubDate>Tue, 20 Jun 2006 01:55:00 GMT</pubDate><guid>http://www.blogjava.net/yaozhuan/articles/53903.html</guid><wfw:comment>http://www.blogjava.net/yaozhuan/comments/53903.html</wfw:comment><comments>http://www.blogjava.net/yaozhuan/articles/53903.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yaozhuan/comments/commentRss/53903.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yaozhuan/services/trackbacks/53903.html</trackback:ping><description><![CDATA[
		<p>
				<font size="1">1. workdir=learnJar<br /><br /></font>
				<font size="1">
						<font color="#000000">
								<font color="#808080">目录结构<br /></font>+ learnJar<br /> | mf.mf<br /> |+ test<br />   | Test.java<br /></font> <br />2. workdir&gt;javac test\Test.java </font>
		</p>
		<p>
				<font size="1">+ learnJar<br /> | mf.mf <br /> |+ test<br />   | Test.java<br />   <font color="#ff0000">| Test</font><font color="#ff0000">.class</font></font>
		</p>
		<p>
				<font size="1">3. workdir&gt;jar cvfm a.jar mf.mf test\Test.class </font>
		</p>
		<p>
				<font size="1">+ learnJar<br /> | mf.mf<br /> |+ test<br />   | Test.java<br />   | Test.class<br />  </font>
				<font size="1">
						<font color="#ff0000">|+ a.jar<br />   |+ META-INF<br />     | MANIFEST.MF<br />   |+ test<br />     | Test.class<br /></font>
						<br /> 4. workdir&gt;java -jar a.jar<br />hello world </font>
		</p>
		<p>
				<br />
				<font size="1">NOTE<br />1. manifest.mf可以放在任何位置，也可以是其它的文件名(反正最后jar中的文件名会被自动变为MANIFEST.MF)<br />2. "Manifest-Version: 1.0"--该行(以及其它行)冒号后面<font color="#ff0000">必须是个空格</font>，否则jar时出错"invalid header field"<br />3. "Main-Class: test.Test&lt;回车&gt;"--该行<font color="#ff0000">必须以一个回车符结束</font>，否则无效。<br />4. 如果是<font color="#0000ff">有UI的程序</font>，<font color="#0000ff">双击jar文件</font>即可运行。(如果安装了winrar等压缩软件，jar文件会被关联，因此，双击时并不会执行jar程序，而是调用压缩软件来打开jar文件，这时，将jar的关联去掉即可)<br /><br />Appendix<br />Test.java </font>
		</p>
		<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">
				<font size="1">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<span style="COLOR: #0000ff">package</span>
				</font>
				<font size="1">
						<span style="COLOR: #000000"> test;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
						<span style="COLOR: #0000ff">import</span>
						<span style="COLOR: #000000"> javax.swing.</span>
						<span style="COLOR: #000000">*</span>
				</font>
				<font size="1">
						<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img id="Codehighlighter1_70_250_Open_Image" onclick="this.style.display='none'; Codehighlighter1_70_250_Open_Text.style.display='none'; Codehighlighter1_70_250_Closed_Image.style.display='inline'; Codehighlighter1_70_250_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_70_250_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_70_250_Closed_Text.style.display='none'; Codehighlighter1_70_250_Open_Image.style.display='inline'; Codehighlighter1_70_250_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"> Test </span>
						<span style="COLOR: #0000ff">extends</span>
						<span style="COLOR: #000000"> JFrame</span>
						<span id="Codehighlighter1_70_250_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>
				</font>
				<span id="Codehighlighter1_70_250_Open_Text">
						<font size="1">
								<span style="COLOR: #000000">{<br /><img id="Codehighlighter1_111_248_Open_Image" onclick="this.style.display='none'; Codehighlighter1_111_248_Open_Text.style.display='none'; Codehighlighter1_111_248_Closed_Image.style.display='inline'; Codehighlighter1_111_248_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_111_248_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_111_248_Closed_Text.style.display='none'; Codehighlighter1_111_248_Open_Image.style.display='inline'; Codehighlighter1_111_248_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_111_248_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>
						</font>
						<span id="Codehighlighter1_111_248_Open_Text">
								<font size="1">
										<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        Test impl</span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #0000ff">new</span>
								</font>
								<font size="1">
										<span style="COLOR: #000000"> Test();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        JLabel label </span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000"> </span>
										<span style="COLOR: #0000ff">new</span>
										<span style="COLOR: #000000"> JLabel(</span>
										<span style="COLOR: #000000">"</span>
										<span style="COLOR: #000000">hello world</span>
										<span style="COLOR: #000000">"</span>
								</font>
								<font size="1">
										<span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        impl.add(label);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            impl.pack();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        impl.setVisible(</span>
										<span style="COLOR: #0000ff">true</span>
								</font>
								<font size="1">
										<span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span>
								</font>
						</span>
						<span style="COLOR: #000000">
								<br />
								<font size="1">
										<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />} </font>
						</span>
				</span>
		</div>
		<br />
		<font size="1">mf.mf<br /></font>
		<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">
				<font size="1">
						<span style="COLOR: #000000">Manifest</span>
						<span style="COLOR: #000000">-</span>
						<span style="COLOR: #000000">Version: </span>
						<span style="COLOR: #000000">1.0</span>
				</font>
				<span style="COLOR: #000000">
						<br />
						<font size="1">Main </font>
				</span>
				<span style="COLOR: #000000">
						<font size="1">- </font>
				</span>
				<span style="COLOR: #000000">
						<font size="1">Class: test.Test<br />&lt;回车&gt; </font>
				</span>
		</div>
<img src ="http://www.blogjava.net/yaozhuan/aggbug/53903.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yaozhuan/" target="_blank">砖头</a> 2006-06-20 09:55 <a href="http://www.blogjava.net/yaozhuan/articles/53903.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>