﻿<?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-kelly的小空间-随笔分类-java</title><link>http://www.blogjava.net/kelly/category/49859.html</link><description /><language>zh-cn</language><lastBuildDate>Thu, 09 Jan 2014 15:17:41 GMT</lastBuildDate><pubDate>Thu, 09 Jan 2014 15:17:41 GMT</pubDate><ttl>60</ttl><item><title>tomcat_dbcp连接池详解</title><link>http://www.blogjava.net/kelly/archive/2013/12/20/407832.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Fri, 20 Dec 2013 15:01:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2013/12/20/407832.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/407832.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2013/12/20/407832.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/407832.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/407832.html</trackback:ping><description><![CDATA[<div style="widows: 2; text-transform: none; text-indent: 0px; margin: 7px 0px 10px; width: 758px; letter-spacing: normal; zoom: 1; font: 14px/1.5 tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); overflow: hidden; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" id="content" class="content mod-cs-content text-content clearfix">
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">1&nbsp;&nbsp;&nbsp;编写目的&nbsp;</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">本文详细介绍了DBCP连接池的各个配置参数的含义，并通过实际例子演示不同的参数设置可能参数的结果。</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">2&nbsp;&nbsp;&nbsp;适用对象&nbsp;</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">&nbsp;&nbsp;项目实施人员</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">3&nbsp;&nbsp;&nbsp;参考资料&nbsp;</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">4&nbsp;&nbsp;&nbsp;知识文件主要内容4.1连接池知识简介&nbsp;</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">总所周知建立数据库连接是一个非常耗时耗资源的行为，因此现代的Web中间件，无论是开源的Tomcat、Jboss还是商业的websphere、weblogic都提供了数据库连接池功能，可以毫不夸张的说，数据库连接池性能的好坏，不同厂商对连接池有着不同的实现，本文只介绍拜特公司使用较多的开源web中间件Tomcat中默认的连接池DBCP（DataBase&nbsp;connection&nbsp;pool）的使用。</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">4.2Tomcat下配置连接池&nbsp;</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">下面以tomcat5.5.26为例来介绍如何配置连接池</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">1：需要的jar</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">在tomcat的安装目录common\lib下有一个naming-factory-dbcp.jar，这个是tomcat修改后的dbcp连接池实现，同时为了能够正常运行，还需要commons-pool.jar。</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">2：建立context文件</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">进入到conf\Catalina\localhost新建一个上下文文件，文件的名称既为将来要访问是输入url上下文名称，例如我们建立一个名为btweb的文件内容如下：</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">&lt;Context&nbsp;debug="0"&nbsp;docBase="D:\v10_workspace\build\WebRoot"<br />reloadable="false"&gt;<br />&lt;Resource<br />name="jdbc/btdb1"<br />type="javax.sql.DataSource"<br />factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"<br />username="v10"<br />password="v10"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">driverClassName="oracle.jdbc.driver.OracleDriver"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">url="jdbc:oracle:thin:@127.0.0.1:1521:cahs"<br />maxActive="5"<br />maxIdle="3"<br />maxWait="5000"<br />removeAbandoned="true"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">removeAbandonedTimeout="60"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">testOnBorrow="true"<br />validationQuery="select&nbsp;count(*)&nbsp;from&nbsp;bt_user"<br />logAbandoned="true"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><br />/&gt;<br />&lt;/Context&gt;</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">4.3参数分步介绍&nbsp;</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">u<br /><strong>数据库连接相关</strong></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">username="v10"<br />password="v10"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">driverClassName="oracle.jdbc.driver.OracleDriver"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">url="jdbc:oracle:thin:@127.0.0.1:1521:cahs"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">u<br /><strong>jndi</strong><strong>相关</strong></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">name="jdbc/btdb1"<br />type="javax.sql.DataSource"<br />factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">factory默认是org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory，tomcat也允许采用其他连接实现，不过默认使用dbcp。</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">u<br /><strong>连接数控制与连接归还策略</strong><br />maxActive="5"<br /></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">maxIdle="3"<br /></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">minIdle=&#8221;2&#8221;<br />maxWait="5000"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">u<br /><strong>&nbsp;&nbsp;</strong><strong>应对网络不稳定的策略</strong></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">testOnBorrow="true"<br />validationQuery="select&nbsp;count(*)&nbsp;from&nbsp;bt_user"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">u<br /><strong>应对连接泄漏的策略</strong><br />removeAbandoned="true"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">removeAbandonedTimeout="60"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><br />logAbandoned="true"</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">&nbsp;&nbsp;&nbsp;</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">如下图所示：连接池处于应用程序与数据库之间，一方面应用程序通过它来获取连接，归还连接，另一方面连接又需要从数据里获取连接，归还连接。</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">步骤1：系统启动</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">系统启动时，初始化连接池，由于没有任何请求连接池中连接数为0。</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong>maxActive="5"</strong></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">表示并发情况下最大可从连接池中获取的连接数。如果数据库不是单独，供一个应用使用，通过设置maxActive参数可以避免某个应用无限制的获取连接对其他应用造成影响，如果一个数据库只是用来支持一个应用那么maxActive理论上可以设置成该数据库可以支撑的最大连接数。maxActive只是表示通过连接池可以并发的获取的最大连接数。</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">从图上我们可以看到连接的获取与释放是双向，当应用程序并发请求连接池时，连接池就需要从数据库获取连接，那么但应用程序使用完连接并将连接归还给连接池时，连接池是否也同时将连接归还给数据库呢？很显然答案是否定的，如果那样的话连接池就变得多此一举，不但不能提高性能，反而会降低性能，那么但应用成归还连接后，连接池如何处理呢？</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong>maxIdle="3"</strong></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">如果在并发时达到了maxActive=5，那么连接池就必须从数据库中获取5个连接来供应用程序使用，当应用程序关闭连接后，由于maxIdle=3,因此并不是所有的连接都会归还给数据库，将会有3个连接保持在连接池种中，状态为空闲。</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong>minIdle=</strong><strong>&#8221;</strong><strong>2</strong><strong>&#8221;</strong></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">最小默认情况下并不生效，它的含义是当连接池中的连接少有minIdle，系统监控线程将启动补充功能，一般情况下我们并不启动补充线程。</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong>问题：如何设置maxActive和maxIdle？</strong></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">理论上讲maxActive应该设置成应用的最大并发数，这样一来即便是在最大并发的情况下，应用依然能够从连接池中获取连接，但是困难时的是我们很难准确估计到最大并发数，设置成最大并发数是一种最优的服务质量保证，事实上，如果某个用户登录提示系统繁忙，那么在他再次登录时，可能系统资源已经充足，对于拜特资金管理系统我们建议将<strong>maxActive</strong>设置为系统注册人数的十分之一到二十分之一之间。例如系统的注册人数为1000，那么设置成50-100靠近100的数字，例如85或90。</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><br /><strong>maxIdle</strong>对应的连接，实际上是连接池保持的长连接，这也是连接池发挥优势的部分，理论上讲保持较多的长连接，在应用请求时可以更快的响应，但是过多的连接保持，反而会消耗数据库大量的资源，因此<strong>maxIdle</strong>也并不是越大越好，同上例我们建议将<strong>maxIdle</strong>设置成</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">50-100中靠近50的数字，例如55。这样就能在兼顾最大并发同时，保持较少的数据库连接，而且在绝大多情况，能够为应用程序提供最快的相应速度。</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong>testOnBorrow="true"</strong></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong>validationQuery="select&nbsp;count(*)&nbsp;from&nbsp;bt_user"</strong></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">我们知道数据库连接从本质上架构在tcp/ip连接之上，一般情况下web服务器与数据库服务器都不在同一台物理机器上，而是通过网络进行连接，那么当建立数据库连接池的机器与数据库服务器自己出现网络异常时，保持在连接池中的连接将失效，不能够在次使用，传统的情况下只能通过重新启动，再次建立连接，通过设置以上两个参数，但应用程序从连接池中获取连接时，会首先进行活动性检测，当获取的连接是活动的时候才会给应用程序使用，如果连接失效，连接将释放该连接。<strong>validationQuery</strong>是一条测试语句，没有实际意义，现实中，一般用一条最为简单的查询语句充当。</p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong>removeAbandoned="true"</strong></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong>removeAbandonedTimeout="60"</strong></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"><strong>logAbandoned="true"</strong></p>
<p style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">有时粗心的程序编写者在从连接池中获取连接使用后忘记了连接的关闭，这样连池的连接就会逐渐达到<strong>maxActive</strong>直至连接池无法提供服务。现代连接池一般提供一种&#8220;智能&#8221;的检查，但设置了<strong>removeAbandoned="true"</strong>时，当连接池连接数到达(getNumIdle()&nbsp;&lt;&nbsp;2)&nbsp;and&nbsp;(getNumActive()&nbsp;&gt;&nbsp;getMaxActive()&nbsp;-&nbsp;3)时便会启动连接回收，那种活动时间超过<strong>removeAbandonedTimeout="60"</strong>的连接将会被回收，同时如果<strong>logAbandoned="true"</strong>设置为true,程序在回收连接的同时会打印日志。<strong>removeAbandoned</strong>是连接池的高级功能，理论上这中配置不应该出现在实际的生产环境，因为有时应用程序执行长事务，可能这种情况下，会被连接池误回收，该种配置一般在程序测试阶段，为了定位连接泄漏的具体代码位置，被开启，生产环境中连接的关闭应该靠程序自己保证。</p></div><img src ="http://www.blogjava.net/kelly/aggbug/407832.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2013-12-20 23:01 <a href="http://www.blogjava.net/kelly/archive/2013/12/20/407832.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Base64在js传递参数中含加号(+)的处理方式-转</title><link>http://www.blogjava.net/kelly/archive/2013/12/17/407677.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Tue, 17 Dec 2013 03:03:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2013/12/17/407677.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/407677.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2013/12/17/407677.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/407677.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/407677.html</trackback:ping><description><![CDATA[<p style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 15px/24px 微软雅黑, 宋体, Arial; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">一般情况下，URL 中的参数应使用 url 编码规则，即把参数字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号（%）后跟两位十六进制数，空格则编码为加号（+）。但是对于带有中文的参数来说，这种编码会使编码后的字符串变得很长。如果希望有短一点的方式对参数编码，可以采用 base64 编码方式对字符串进行编码，但是 base64 编码方式不能处理 JavaScript 中的中文，因为 JavaScript 中的中文都是以 UTF-16 方式保存的。而 base64 只能处理单字节字符，所以不能直接用 base64 对带有中文的 JavaScript 字符串进行编码。但是可以通过&nbsp;<a style="color: rgb(70,70,70); text-decoration: none" href="http://www.onicos.com/staff/iz/amuse/javascript/expert/utf.txt" rel="nofollow">utf.js</a>&nbsp;这个程序中提供的 utf16to8 来将 UTF-16 编码的中文先转化为 UTF-8 方式，然后再进行 base64 编码。这样编码后的字符串，在传递到服务器端后可以直接通过 base64_decode 解码成 UTF-8 的中文字符串。但是还有个问题需要注意。base64 编码中使用了加号（+），而 + 在 URL 传递时会被当成空格，因此必须要将 base64 编码后的字符串中的加号替换成 %2B 才能当作 URL 参数进行传递。否则在服务器端解码后就会出错。</p>
<p style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; margin: 10px auto; letter-spacing: normal; font: 15px/24px 微软雅黑, 宋体, Arial; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">所以我们需要做的就是：<br />js中：encodeURI(str).replace(/\+/g,'%2B')<br />java中：str.replaceAll("<a href='file://\\+","%2B' href_cetemp='file://\\+","%2B'>\\+","%2B</a>")</p><img src ="http://www.blogjava.net/kelly/aggbug/407677.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2013-12-17 11:03 <a href="http://www.blogjava.net/kelly/archive/2013/12/17/407677.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java中比较两个double类型的数据的大小</title><link>http://www.blogjava.net/kelly/archive/2013/11/07/406106.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Thu, 07 Nov 2013 07:42:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2013/11/07/406106.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/406106.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2013/11/07/406106.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/406106.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/406106.html</trackback:ping><description><![CDATA[<span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/25px verdana, 微软雅黑, sans-serif; white-space: normal; orphans: 2; float: none; color: rgb(51,51,51); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">Double类型不能直接进行比较大小。<br />非整型数，运算由于精度问题，可能会有误差，建议使用BigDecimal类型，具体BigDecimal的详细说明参考jdk开发帮助文档。</span><br /><br />public class Test {<br />&nbsp;public static String compare(BigDecimal val1, BigDecimal val2) { <br />&nbsp;&nbsp;String result = ""; <br />&nbsp;&nbsp;if (val1.compareTo(val2) &lt; 0) { <br />&nbsp;&nbsp;&nbsp;result = "第二位数大！"; <br />&nbsp;&nbsp;&nbsp;} <br />&nbsp;&nbsp;if (val1.compareTo(val2) == 0) {<br />&nbsp;&nbsp;&nbsp;result = "两位数一样大！";<br />&nbsp;&nbsp;&nbsp;} <br />&nbsp;&nbsp;if (val1.compareTo(val2) &gt; 0) { <br />&nbsp;&nbsp;&nbsp;result = "第一位数大！"; <br />&nbsp;&nbsp;&nbsp;} <br />&nbsp;&nbsp;return result; <br />&nbsp;&nbsp;} <br />&nbsp;<br />&nbsp;public static void main(String[] args) { <br />&nbsp;&nbsp;String a = "200.5"; String b = "1000"; <br />&nbsp;&nbsp;BigDecimal data1 = new BigDecimal(a); <br />&nbsp;&nbsp;BigDecimal data2 = new BigDecimal(b); <br />&nbsp;&nbsp;System.out.print(compare(data1, data2)); <br />&nbsp;&nbsp;} <br />}<br /><img src ="http://www.blogjava.net/kelly/aggbug/406106.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2013-11-07 15:42 <a href="http://www.blogjava.net/kelly/archive/2013/11/07/406106.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>正则表达式，金额精确到小数点两位,javascript,java版本-转</title><link>http://www.blogjava.net/kelly/archive/2013/11/07/406094.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Thu, 07 Nov 2013 05:31:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2013/11/07/406094.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/406094.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2013/11/07/406094.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/406094.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/406094.html</trackback:ping><description><![CDATA[<span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">经常处理金额，对于输入需要做验证处理，下面给出正则表达式和解释：</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">javascritpt的应用：</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">var patrn=/^(-)?(([1-9]{1}\d*)|([0]{1}))(\.(\d){1,2})?$/;</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">if (!patrn.exec('-012312123.23')) {</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">alert('false');</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">}else{</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">alert('true');</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">}</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">解读/^(-)?(([1-9]{1}\d*)|([0]{1}))(\.(\d){1,2})?$/</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">^表示以什么开头 我们这里是 - ，后面的？是表示&#8220;-&#8221;出现一次或者零次</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">(([1-9]{1}\d*)|([0]{1})) 表示不以0开头的数字组合或者仅出现一个0</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">(\.(\d){1,2})?表示小数点后两位，出现0次或者一次</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">必须是大于0的金额正则表达式：</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">var patrn=/^(([1-9]{1}\d*)|([0]{1}))(\.(\d){1,2})?$/;</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">Java里的应用：</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">Pattern pattern = Pattern.compile("^(-)?(([1-9]{1}\\d*)|([0]{1}))(\\.(\\d){1,2})?$");</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">Matcher matcher = pattern.matcher("-0.11");</span><br style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px tahoma, helvetica, arial; white-space: normal; orphans: 2; float: none; color: rgb(69,69,69); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">System.out.println(matcher.matches());</span> <img src ="http://www.blogjava.net/kelly/aggbug/406094.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2013-11-07 13:31 <a href="http://www.blogjava.net/kelly/archive/2013/11/07/406094.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>get方式使用utf-8编码时URL中文乱码解决方案</title><link>http://www.blogjava.net/kelly/archive/2011/09/30/359846.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Fri, 30 Sep 2011 03:34:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2011/09/30/359846.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/359846.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2011/09/30/359846.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/359846.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/359846.html</trackback:ping><description><![CDATA[项目使用的是UTF-8编码，用get方式提交的时候发现URL中如果有中文，响应页面将得到乱码。然后在tomcat的server.xml中添加了get方式和url访问解决乱码的方式useBodyEncodingForURI="true"，<br />并在响应页面中添加了request.setCharacterEncoding("GB2312");//乱码转换<div><div>response.setContentType("text/html;charset=GB2312");</div></div>&nbsp;response.setCharacterEncoding("GB2312");但是得到的还是乱码。<br /><br />后来把项目改成GB2312编码，get方式提交可以得到正常的中文。后来通过百度和googl的编码得到了启发。百度中输入中文搜索，url中显示的是中文。google输入中文进行搜索，url中显示的是带%的编码。说明百度用的是GB2312编码，中文可以正常解析。google用的是UTF-8编码，所以需要对中文进行转码。<br /><br />下面是我项目中的解决方案：<br />1、在请求页面中把中文参数进行转码<br />如：String content="测试短信";<div><div>content=URLEncoder.encode(content,"UTF-8");<br /><br />2、在接收参数的响应页面进行中文参数的解码<br />如：String&nbsp;message= URLDecoder.decode(request.getParameter,"UTF-8");<br /><br />经过这次的问题，个人认为还是用GB2312编码比较省事。</div></div><img src ="http://www.blogjava.net/kelly/aggbug/359846.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2011-09-30 11:34 <a href="http://www.blogjava.net/kelly/archive/2011/09/30/359846.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>换掉tomcat默认的图标</title><link>http://www.blogjava.net/kelly/archive/2011/06/24/352931.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Fri, 24 Jun 2011 02:46:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2011/06/24/352931.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/352931.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2011/06/24/352931.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/352931.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/352931.html</trackback:ping><description><![CDATA[<span class="Apple-style-span" style="font-family: simsun; ">为换成项目自带标志，我们仅仅需要修改一下项目根目录下的图标，有以下几个方法：<br />1、比如修改<span xml:lang="EN-US" style="word-wrap: normal; word-break: normal; line-height: 21px; "><a href="http://localhost:8080/" style="text-decoration: none; color: #36649d; ">http://localhost:8080</a></span>访问的图标，我们可以，修改<span xml:lang="EN-US" style="word-wrap: normal; word-break: normal; line-height: 21px; ">E:\apache-tomcat-5.5.28\webapps\ROOT</span>下的，<span xml:lang="EN-US" style="word-wrap: normal; word-break: normal; line-height: 21px; ">ico</span>文件，将该文件替换成想要的图标即可，命名也为<span xml:lang="EN-US" style="word-wrap: normal; word-break: normal; line-height: 21px; ">favicon.ico,</span>系统会自动找到这个文件。</span><span class="Apple-style-span" style="font-family: simsun; "><p style="margin-top: 0cm; margin-right: 0cm; margin-bottom: 0.0001pt; margin-left: 0cm; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; list-style-type: none; list-style-position: initial; list-style-image: initial; word-wrap: normal; word-break: normal; "><span style="word-wrap: normal; word-break: normal; "><span style="font-family: simsun; font-size: 14px; "></span></span></p><p style="color: #494949; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0.0001pt; margin-left: 0cm; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; list-style-type: none; list-style-position: initial; list-style-image: initial; word-wrap: normal; word-break: normal; line-height: 12.25pt; "><span style="word-wrap: normal; word-break: normal; line-height: 21px; color: black; ">2、系统部署到<span xml:lang="EN-US" style="word-wrap: normal; word-break: normal; line-height: 21px; ">TOMCAT</span>，访问时<span xml:lang="EN-US" style="word-wrap: normal; word-break: normal; line-height: 21px; ">IE</span>栏出现<span xml:lang="EN-US" style="word-wrap: normal; word-break: normal; line-height: 21px; ">TOMCAT</span>的小猫图标<span xml:lang="EN-US" style="word-wrap: normal; word-break: normal; line-height: 21px; ">&nbsp;</span></span></p><p style="color: #494949; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0.0001pt; margin-left: 0cm; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; list-style-type: none; list-style-position: initial; list-style-image: initial; word-wrap: normal; word-break: normal; line-height: 12.25pt; "><span style="word-wrap: normal; word-break: normal; line-height: 21px; color: black; ">同样如果部署在<span xml:lang="EN-US" style="word-wrap: normal; word-break: normal; line-height: 21px; ">webapps</span>下面的也一样处理。<br />3、或者直接在tomcat安装跟目录下放一个命名为tomcat.ico文件的图标，所有项目将引用这个图标。（我暂时采用的这种方式）</span></p></span><p>&nbsp;</p><span class="Apple-style-span" style="font-family: simsun; ">但是，如果直接替换，效果不会显示出来，重启<span xml:lang="EN-US" style="word-wrap: normal; word-break: normal; line-height: 21px; ">tomcat</span>也不管用，这是由于浏览器缓冲造成的我们把历史记录删除即可。</span><span class="Apple-style-span" style="font-family: simsun; "><p style="margin-top: 0cm; margin-right: 0cm; margin-bottom: 0.0001pt; margin-left: 0cm; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; list-style-type: none; list-style-position: initial; list-style-image: initial; word-wrap: normal; word-break: normal; "><br /></p></span><img src ="http://www.blogjava.net/kelly/aggbug/352931.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2011-06-24 10:46 <a href="http://www.blogjava.net/kelly/archive/2011/06/24/352931.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JDK6.0下载,JDK1.5下载,eclipse3.2中文版下载 linux安装配置jdk1 (转载)</title><link>http://www.blogjava.net/kelly/archive/2011/03/03/345611.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Thu, 03 Mar 2011 09:18:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2011/03/03/345611.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/345611.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2011/03/03/345611.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/345611.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/345611.html</trackback:ping><description><![CDATA[<br /><table style="table-layout: fixed; width: 100%"><tbody><tr><td><div class="cnt"><div class="cnt"><div forimg="1"><div forimg="1">
            <p><a href="http://hi.baidu.com/vigorlin/blog/item/ef9e693d9e3a3ce73c6d9778.html" target="_blank">jdk1.5的环境变量设置详解</a></p>
            <p>&nbsp;</p>
            </div>
            </div>
            <div forimg="1">
            <p>&nbsp;</p>
            <p>&nbsp;</p>
            <p>&nbsp;</p>
            <p><font color="#006699">linux安装配置jdk1.5、tomcat5.5、eclipse3.2、Myeclipse</font></p>
            linux安装配置jdk1.5、tomcat5.5、eclipse3.2、Myeclipse5.1详解 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 包括安装jdk1.5，tomcat5.5，eclipse3.2，Myeclipse5.1到配置搭建成功。 <br />
            <br />
            第一步：下载所须要的软件 <br />
            <br />
            下载jdk1.5。 <br />
            下载tomcat5.5。 <br />
            下载eclipse3.2。 <br />
            下载Myeclipse5.1 <br />
            <br />
            第二步：安装已下载软件 <br />
            假设你将上诉所要下载的软件全部从光盘拷贝或者通过pc机ftp到linux服务器上传到/home/user/Downloads目录下。 <br />
            <br />
            首先要安装jdk1.5 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1. 打开终端，运行命令su root 切换到超级用户。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.cd切换到/home/user/Downloads目录下。运行命令 cp jdk-1_5_0_12-linux-i586.bin /usr/local将jdk复制到/usr/local目录下。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.cd切换到/usr/local目录下。运行命令 chmod a+x jdk-1_5_0_12-linux-i586.bin给於相应权限。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4.运行命令 ./jdk-1_5_0_12-linux-i586.bin 等待，按提示安装jdk，假设安装在/usr/local目录下。jdk安装完成。 <br />
            <br />
            然后安装tomcat5.5 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.cd切换到/home/user/Downloads目录下。运行命令cp apache-tomcat-5.tar.gz /usr/local将其拷贝到/usr/local目录下。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.cd切换到/usr/local目录下。运行命令tar xvfz apache-tomcat-5.tar.gz将其在/usr/local目录中解压。tomcat5.5安装完成。 <br />
            <br />
            安装eclipse3.2 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.cd切换到/home/user/Downloads目录下。运行命令cp eclipse-SDK-3.2.2-linux-gtk.tar.gz /usr/local将其拷贝到/usr/local目录下。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.cd切换到/usr/local目录下。运行命令tar xvfz eclipse-SDK-3.2.2-linux-gtk.tar.gz 将其解压。eclipse3.2安装完成。 <br />
            <br />
            安装Myeclipse5.1 <br />
            1.cd切换到/home/user/Downloads目录下。运行命令cp MyEclipseEnterprise(Linux)WorkbenchInstaller_5_1_0GA_E3_2_1.bin /usr/local将其拷贝到/usr/local目录下。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.cd切换到/usr/local目录下。运行命令chmod +x MyEclipseEnterprise(Linux)WorkbenchInstaller_5_1_0GA_E3_2_1.bin ,然后运行$./M*.bin 安装过程中会提示选择Eclipse安装目录，按照你实际的Eclipse安装目录进行选择即可。Myeclipse安装完成。 <br />
            到此步骤，安装软件已经完成了，但是还不能运行，还要进行配置。 <br />
            <br />
            <br />
            第三步：配置环境变量 <br />
            <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 首先运行命令 vi /etc/profile 出现profile文件源代码。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 按键盘子母&#8220;i&#8221;进入插入模式。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在profile文件中插入以下代码： <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; export JAVA_HOME=/usr/local/java <br />
            &nbsp;&nbsp; &nbsp;&nbsp; export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; export CLASSPATH=.:/usr/local/java/lib:/usr/local/java/jre/lib:$CLASSPATH <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; export TOMCAT_HOME=/usr/local/tomcat <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 我得源文件代码是这样： <br />
            # /etc/profile <br />
            # System wide environment and startup programs, for login setup <br />
            # Functions and aliases go in /etc/bashrc <br />
            pathmunge () { <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if [ "$2" = "after" ] ; then <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PATH=$PATH:$1 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PATH=$1:$PATH <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fi <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fi <br />
            } <br />
            # Path manipulation <br />
            #if [ `id -u` = 0 ]; then <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pathmunge /sbin <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pathmunge /usr/sbin <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pathmunge /usr/local/sbin <br />
            #fi <br />
            pathmunge /usr/X11R6/bin after <br />
            unset pathmunge <br />
            # No core files by default <br />
            ulimit -S -c 0 &gt; /dev/null 2&gt;&amp;1 <br />
            <br />
            USER="`id -un`" <br />
            LOGNAME=$USER <br />
            MAIL="/var/spool/mail/$USER" <br />
            <br />
            HOSTNAME=`/bin/hostname` <br />
            HISTSIZE=1000 <br />
            <br />
            if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then <br />
            &nbsp;&nbsp;&nbsp; INPUTRC=/etc/inputrc <br />
            fi <br />
            <br />
            export JAVA_HOME=/usr/local/java <br />
            export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH <br />
            export CLASSPATH=.:/usr/local/java/lib:/usr/local/java/jre/lib:$CLASSPATH <br />
            export TOMCAT_HOME=/usr/local/tomcat <br />
            <br />
            <br />
            export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC <br />
            <br />
            for i in /etc/profile.d/*.sh ; do <br />
            &nbsp;&nbsp;&nbsp; if [ -r "$i" ]; then <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; . $i <br />
            &nbsp;&nbsp;&nbsp; fi <br />
            done <br />
            unset i <br />
            export G_BROKEN_FILENAMES=true <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 黑体字部分是插入代码。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 插入完成后按&#8220;ESC&#8221;健。在按大写的子母&#8220;ZZ&#8221;。保存退出。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 环境变量配置完成后，可以做以下策试。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 运行命令java -version，出现jdk版本和相关信息，证明jdk已经OK了。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cd切换到/opt/tomcat/bin目录下，运行命令 ./startup.sh，出现如下信息： <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Using CATALINA_BASE:&nbsp;&nbsp; /opt/tomcat <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Using CATALINA_HOME:&nbsp;&nbsp; /opt/tomcat <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Using CATALINA_TMPDIR: /opt/tomcat/temp <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Using JRE_HOME:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /usr/java/jre1.5.0_05 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 证明安装成功。如果以上策试没成功的话，请仔细检查环境变量的配置。 <br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 到此步骤为止，已经成功的配置完成了jdk和tomcat。该是配置我们eclipse的时候了。</div>
            </div>
            </div>
            </td>
        </tr>
    </tbody>
</table><img src ="http://www.blogjava.net/kelly/aggbug/345611.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2011-03-03 17:18 <a href="http://www.blogjava.net/kelly/archive/2011/03/03/345611.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java处理日期时间 相加减大全</title><link>http://www.blogjava.net/kelly/archive/2011/02/21/344755.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Mon, 21 Feb 2011 04:15:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2011/02/21/344755.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/344755.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2011/02/21/344755.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/344755.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/344755.html</trackback:ping><description><![CDATA[<p>java处理日期时间 相加减<br />
JAVA处理日期时间常用方法： <br />
<br />
1.java.util.Calendar <br />
Calendar 类是一个抽象类，它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法，并为操作日历字段（例如获得下星期的日期）提供了一些方法。瞬间可用毫秒值来表示，它是距历元（即格林威治标准时间 1970 年 1 月 1 日的 00:00:00.000，格里高利历）的偏移量。 <br />
<br />
例: <br />
Java代码&nbsp; <br />
1. Calendar cal = Calendar.getInstance();//使用默认时区和语言环境获得一个日历。&nbsp; &nbsp; <br />
2. cal.add(Calendar.DAY_OF_MONTH, -1);//取当前日期的前一天.&nbsp; &nbsp; <br />
3. &nbsp; <br />
4. cal.add(Calendar.DAY_OF_MONTH, +1);//取当前日期的后一天.&nbsp; &nbsp; <br />
5. &nbsp; <br />
6. //通过格式化输出日期&nbsp; &nbsp; <br />
7. java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd");&nbsp; &nbsp; <br />
8. &nbsp; <br />
9. System.out.println("Today is:"+format.format(Calendar.getInstance().getTime()));&nbsp; &nbsp; <br />
10. &nbsp; <br />
11. System.out.println("yesterday is:"+format.format(cal.getTime()));&nbsp; <br />
<br />
<br />
得到2007-12-25日期: <br />
Java代码&nbsp; <br />
1. Calendar calendar = new GregorianCalendar(2007, 11, 25,0,0,0);&nbsp; &nbsp; <br />
2. Date date = calendar.getTime();&nbsp; &nbsp; <br />
3. System.out.println("2007 Christmas is:"+format.format(date));&nbsp; <br />
<br />
java月份是从0-11,月份设置时要减1. <br />
<br />
GregorianCalendar构造方法参数依次为：年，月-1，日，时，分，秒. <br />
<br />
取日期的部分: <br />
Java代码&nbsp; <br />
1. int year =calendar.get(Calendar.YEAR);&nbsp; &nbsp; <br />
2. &nbsp; <br />
3. int month=calendar.get(Calendar.MONTH)+1;&nbsp; &nbsp; <br />
4. &nbsp; <br />
5. int day =calendar.get(Calendar.DAY_OF_MONTH);&nbsp; &nbsp; <br />
6. &nbsp; <br />
7. int hour =calendar.get(Calendar.HOUR_OF_DAY);&nbsp; &nbsp; <br />
8. &nbsp; <br />
9. int minute =calendar.get(Calendar.MINUTE);&nbsp; &nbsp; <br />
10. &nbsp; <br />
11. int seconds =calendar.get(Calendar.SECOND);&nbsp; <br />
<br />
<br />
取月份要加1. <br />
<br />
判断当前月份的最大天数: <br />
Java代码&nbsp; <br />
1. Calendar cal = Calendar.getInstance();&nbsp; &nbsp; <br />
2. int day=cal.getActualMaximum(Calendar.DAY_OF_MONTH);&nbsp; &nbsp; <br />
3. System.out.println(day);&nbsp; <br />
<br />
<br />
2.java.util.Date <br />
Java代码&nbsp; <br />
1. java.util.Date today=new java.util.Date();&nbsp; &nbsp; <br />
2. System.out.println("Today is "+formats.format(today));&nbsp; <br />
<br />
<br />
取当月的第一天: <br />
Java代码&nbsp; <br />
1. java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-01");&nbsp; &nbsp; <br />
2. java.util.Date firstDay=new java.util.Date();&nbsp; &nbsp; <br />
3. System.out.println("the month first day is "+formats.format(firstDay));&nbsp; <br />
<br />
取当月的最后一天: <br />
Java代码&nbsp; <br />
1. &nbsp; &nbsp; <br />
2. Calendar cal = Calendar.getInstance();&nbsp; &nbsp; <br />
3. int maxDay=cals.getActualMaximum(Calendar.DAY_OF_MONTH);&nbsp; &nbsp; <br />
4. java.text.Format formatter3=new java.text.SimpleDateFormat("yyyy-MM-"+maxDay);&nbsp; &nbsp; <br />
5. System.out.println(formatter3.format(cal.getTime()));&nbsp; <br />
<br />
<br />
求两个日期之间相隔的天数: <br />
Java代码&nbsp; <br />
1. java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd");&nbsp; &nbsp; <br />
2. java.util.Date beginDate= format.parse("2007-12-24");&nbsp; &nbsp; <br />
3. java.util.Date endDate= format.parse("2007-12-25");&nbsp; &nbsp; <br />
4. long day=(date.getTime()-mydate.getTime())/(24*60*60*1000);&nbsp; &nbsp; <br />
5. System.out.println("相隔的天数="+day);&nbsp; <br />
<br />
一年前的日期: <br />
Java代码&nbsp; <br />
1. java.text.Format formatter=new java.text.SimpleDateFormat("yyyy-MM-dd");&nbsp; &nbsp; <br />
2. java.util.Date todayDate=new java.util.Date();&nbsp; &nbsp; <br />
3. long beforeTime=(todayDate.getTime()/1000)-60*60*24*365;&nbsp; &nbsp; <br />
4. todayDate.setTime(beforeTime*1000);&nbsp; &nbsp; <br />
5. String beforeDate=formatter.format(todayDate);&nbsp; &nbsp; <br />
6. System.out.println(beforeDate);&nbsp; <br />
<br />
一年后的日期: <br />
Java代码&nbsp; <br />
1. java.text.Format formatter=new java.text.SimpleDateFormat("yyyy-MM-dd");&nbsp; &nbsp; <br />
2. java.util.Date todayDate=new java.util.Date();&nbsp; &nbsp; <br />
3. long afterTime=(todayDate.getTime()/1000)+60*60*24*365;&nbsp; &nbsp; <br />
4. todayDate.setTime(afterTime*1000);&nbsp; &nbsp; <br />
5. String afterDate=formatter.format(todayDate);&nbsp; &nbsp; <br />
6. System.out.println(afterDate);&nbsp; <br />
<br />
求10小时后的时间 <br />
Java代码&nbsp; <br />
1. java.util.Calendar Cal=java.util.Calendar.getInstance();&nbsp; &nbsp; <br />
2. Cal.setTime(dateOper);&nbsp; &nbsp; <br />
3. Cal.add(java.util.Calendar.HOUR_OF_DAY,10);&nbsp; &nbsp; <br />
4. System.out.println("date:"+forma.format(Cal.getTime()));&nbsp; <br />
<br />
求10小时前的时间 <br />
Java代码&nbsp; <br />
1. java.util.Calendar Cal=java.util.Calendar.getInstance();&nbsp; &nbsp; <br />
2. Cal.setTime(dateOper);&nbsp; &nbsp; <br />
3. Cal.add(java.util.Calendar.HOUR_OF_DAY,-10);&nbsp; &nbsp; <br />
4. System.out.println("date:"+forma.format(Cal.getTime()));&nbsp; <br />
<br />
3.java.sql.Date <br />
继承自java.util.Date,是操作数据库用的日期类型 <br />
Java代码&nbsp; <br />
1. java.sql.Date sqlDate = new java.sql.Date(java.sql.Date.valueOf("2007-12-25").getTime());&nbsp; <br />
<br />
日期比较:简单的比较可以以字符串的形式直接比较,也可使用 <br />
java.sql.Date.valueOf("2007-03-08").compareTo(java.sql.Date.valueOf("2007-03-18"))方式来比较日期的大小.也可使用java.util.Date.after(java.util.Date)来比较. <br />
<br />
相差时间： <br />
long difference=c2.getTimeInMillis()-c1.getTimeInMillis(); <br />
相差天数：long day=difference/(3600*24*1000) <br />
相差小时：long hour=difference/(3600*1000) <br />
相差分钟：long minute=difference/(60*1000) <br />
相差秒： long second=difference/1000 <br />
<br />
补充： <br />
Java代码&nbsp; <br />
1. DateFormat df=new SimpleDateFormat("yyyy-MM-dd EE hh:mm:ss");&nbsp; &nbsp; <br />
2. System.out.println(df.format(new Date()));&nbsp; &nbsp; <br />
3. Date date = new Date();&nbsp; &nbsp; <br />
4. DateFormat shortDate=DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);&nbsp; &nbsp; <br />
5. DateFormat mediumDate =DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);&nbsp; &nbsp; <br />
6. DateFormat longDate =DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG);&nbsp; &nbsp; <br />
7. DateFormat fullDate =DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL);&nbsp; &nbsp; <br />
8. &nbsp; <br />
9. system.out.println(shortDate.format(date));&nbsp; &nbsp; <br />
10. System.out.println(mediumDate.format(date));&nbsp; &nbsp; <br />
11. System.out.println(longDate.format(date));&nbsp; &nbsp; <br />
12. System.out.println(fullDate.format(date));&nbsp; &nbsp; <br />
13. &nbsp; <br />
14. 08-4-15 下午3:24&nbsp; &nbsp; <br />
15. 2008-4-15 15:24:31&nbsp; &nbsp; <br />
16. 2008年4月15日 下午03时24分31秒&nbsp; &nbsp; <br />
17. 2008年4月15日 星期二 下午03时24分31秒CST&nbsp; &nbsp; <br />
18. &nbsp; <br />
19. &nbsp; <br />
20. Calendar c = Calendar.getInstance();&nbsp; &nbsp; <br />
21. &nbsp; <br />
22. c.add(Calendar.MONTH, 1); // 目前時間加1個月&nbsp; &nbsp; <br />
23. System.out.println(df.format(c.getTime()));&nbsp; &nbsp; <br />
24. &nbsp; <br />
25. c.add(Calendar.HOUR, 3); // 目前時間加3小時&nbsp; &nbsp; <br />
26. System.out.println(df.format(c.getTime()));&nbsp; &nbsp; <br />
27. &nbsp; <br />
28. c.add(Calendar.YEAR, -2); // 目前時間減2年&nbsp; &nbsp; <br />
29. System.out.println(df.format(c.getTime()));&nbsp; &nbsp; <br />
30. &nbsp; <br />
31. c.add(Calendar.DAY_OF_WEEK, 7); // 目前的時間加7天&nbsp; &nbsp; <br />
32. System.out.println(df.format(c.getTime())); <br />
<br />
</p><img src ="http://www.blogjava.net/kelly/aggbug/344755.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2011-02-21 12:15 <a href="http://www.blogjava.net/kelly/archive/2011/02/21/344755.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java取星期几</title><link>http://www.blogjava.net/kelly/archive/2009/05/31/279286.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Sun, 31 May 2009 13:30:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2009/05/31/279286.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/279286.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2009/05/31/279286.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/279286.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/279286.html</trackback:ping><description><![CDATA[String today="2008-06-21";
<p><font color="#0000ff">&nbsp;<wbr>String dayNames[] = {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};<br />
&nbsp;<wbr>SimpleDateFormat f =new SimpleDateFormat("yyyy-MM-dd");<br />
&nbsp;<wbr>Date d=f.parse(today);<br />
&nbsp;<wbr>Calendar cal = Calendar.getInstance();&nbsp;<wbr><br />
&nbsp;<wbr>cal.setTime(d);&nbsp;<wbr><br />
&nbsp;<wbr>int day= cal.get(Calendar.DAY_OF_WEEK);&nbsp;<wbr><br />
&nbsp;<wbr>String week_day = dayNames[day - 1];</font></p>
<!-- --><img src ="http://www.blogjava.net/kelly/aggbug/279286.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2009-05-31 21:30 <a href="http://www.blogjava.net/kelly/archive/2009/05/31/279286.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JAVA取年月日</title><link>http://www.blogjava.net/kelly/archive/2009/05/31/279281.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Sun, 31 May 2009 12:53:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2009/05/31/279281.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/279281.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2009/05/31/279281.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/279281.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/279281.html</trackback:ping><description><![CDATA[<p>Calendar&nbsp;&nbsp; calendar&nbsp;&nbsp; =&nbsp;&nbsp; Calendar.getInstance();</p>
<p>calendar.setTime(new&nbsp;&nbsp; Date());&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String&nbsp;&nbsp; year&nbsp;&nbsp; =&nbsp;&nbsp; String.valueOf(calendar.get(Calendar.YEAR));&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String&nbsp;&nbsp; month&nbsp;&nbsp; =&nbsp;&nbsp; String.valueOf(calendar.get(Calendar.MONTH)+1);&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String&nbsp;&nbsp; day&nbsp;&nbsp; =&nbsp;&nbsp; String.valueOf(calendar.get(Calendar.DATE));&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String&nbsp;&nbsp; hour&nbsp;&nbsp; =&nbsp;&nbsp; String.valueOf(calendar.get(Calendar.HOUR));&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String&nbsp;&nbsp; minute&nbsp;&nbsp; =&nbsp;&nbsp; String.valueOf(calendar.get(Calendar.MINUTE));&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String&nbsp;&nbsp; second&nbsp;&nbsp; =&nbsp;&nbsp; String.valueOf(calendar.get(Calendar.SECOND));&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(year+month+day+hour+minute+second);</p><img src ="http://www.blogjava.net/kelly/aggbug/279281.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2009-05-31 20:53 <a href="http://www.blogjava.net/kelly/archive/2009/05/31/279281.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSP中文乱码解决方案-Tomcat5.0版</title><link>http://www.blogjava.net/kelly/archive/2008/01/22/176905.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Tue, 22 Jan 2008 01:27:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2008/01/22/176905.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/176905.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2008/01/22/176905.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/176905.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/176905.html</trackback:ping><description><![CDATA[首先，说说JSP/Servlet中的几个编码的作用。
<div class="art_txt">
<div>
<div>
<p style="text-indent: 2em">在JSP/Servlet中主要有以下几个地方可以设置编码，pageEncoding="UTF-8"、contentType="text/html;charset=UTF-8"、request.setCharacterEncoding("UTF-8")和response.setCharacterEncoding("UTF-8")，其中前两个只能用于JSP中，而后两个可以用于JSP和Servlet中。</p>
<p style="text-indent: 2em">1、pageEncoding="UTF-8"的作用是设置JSP编译成Servlet时使用的编码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 众所周知，JSP在服务器上是要先被编译成Servlet的。pageEncoding="UTF-8"的作用就是告诉JSP编译器在将JSP文件编译成Servlet时使用的编码。通常，在JSP内部定义的字符串（直接在JSP中定义，而不是从浏览器提交的数据）出现乱码时，很多都是由于该参数设置错误引起的。例如，你的JSP文件是以GBK为编码保存的，而在JSP中却指定pageEncoding="UTF-8"，就会引起JSP内部定义的字符串为乱码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 另外，该参数还有一个功能，就是在JSP中不指定contentType参数，也不使用response.setCharacterEncoding方法时，指定对服务器响应进行重新编码的编码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2、contentType="text/html;charset=UTF-8"的作用是指定对服务器响应进行重新编码的编码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在不使用response.setCharacterEncoding方法时，用该参数指定对服务器响应进行重新编码的编码。服务器在将数据发送到浏览器前，对数据进行重新编码时，使用的就是该编码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3、request.setCharacterEncoding("UTF-8")的作用是设置对客户端请求进行重新编码的编码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 该方法用来指定对浏览器发送来的数据进行重新编码（或者称为解码）时，使用的编码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4、response.setCharacterEncoding("UTF-8")的作用是指定对服务器响应进行重新编码的编码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 服务器在将数据发送到浏览器前，对数据进行重新编码时，使用的就是该编码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 其次，要说一说浏览器是怎么样对接收和发送的数据进行编码的</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; response.setCharacterEncoding("UTF-8")的作用是指定对服务器响应进行重新编码的编码。同时，浏览器也是根据这个参数来对其接收到的数据进行重新编码（或者称为解码）。所以在无论你在JSP中设置response.setCharacterEncoding("UTF-8")或者response.setCharacterEncoding("GBK")，浏览器均能正确显示中文（前提是你发送到浏览器的数据编码是正确的，比如正确设置了pageEncoding参数等）。读者可以做个实验，在JSP中设置response.setCharacterEncoding("UTF-8")，在IE中显示该页面时，在IE的菜单中选择"查看(V)"&#224;"编码(D)"中可以查看到是" Unicode（UTF-8）"，而在在JSP中设置response.setCharacterEncoding("GBK")，在IE中显示该页面时，在IE的菜单中选择"查看(V)"&#224;"编码(D)"中可以查看到是"简体中文（GB2312）"。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 浏览器在发送数据时，对URL和参数会进行URL编码，对参数中的中文，浏览器也是使用response.setCharacterEncoding参数来进行URL编码的。以百度和GOOGLE为例，如果你在百度中搜索"汉字"，百度会将其编码为"%BA%BA%D7%D6"。而在GOOGLE中搜索"汉字"，GOOGLE会将其编码为"%E6%B1%89%E5%AD%97"，这是因为百度的response.setCharacterEncoding参数为GBK，而GOOGLE的的response.setCharacterEncoding参数为UTF-8。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 浏览器在接收服务器数据和发送数据到服务器时所使用的编码是相同的，默认情况下均为JSP页面的response.setCharacterEncoding参数（或者contentType和pageEncoding参数），我们称其为浏览器编码。当然，在IE中可以修改浏览器编码（在IE的菜单中选择"查看(V)"&#224;"编码(D)"中修改），但通常情况下，修改该参数会使原本正确的页面中出现乱码。一个有趣的例子是，在IE中浏览GOOGLE的主页时，将浏览器编码修改为"简体中文（GB2312）"，此时，页面上的中文会变成乱码，不理它，在文本框中输入"汉字"，提交，GOOGLE会将其编码为"%BA%BA%D7%D6"，可见，浏览器在对中文进行URL编码时，使用的就是浏览器编码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 弄清了浏览器是在接收和发送数据时，是如何对数据进行编码的了，我们再来看看服务器是在接收和发送数据时，是如何对数据进行编码的。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 对于发送数据，服务器按照response.setCharacterEncoding&#8212;contentType&#8212;pageEncoding的优先顺序，对要发送的数据进行编码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 对于接收数据，要分三种情况。一种是浏览器直接用URL提交的数据，另外两种是用表单的GET和POST方式提交的数据。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 因为各种WEB服务器对这三种方式的处理也不相同，所以我们以Tomcat5.0为例。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 无论使用那种方式提交，如果参数中包含中文，浏览器都会使用当前浏览器编码对其进行URL编码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 对于表单中POST方式提交的数据，只要在接收数据的JSP中正确request.setCharacterEncoding参数，即将对客户端请求进行重新编码的编码设置成浏览器编码，就可以保证得到的参数编码正确。有写读者可能会问，那如何得到浏览器编码呢？上面我们提过了，在默认请情况下，浏览器编码就是你在响应该请求的JSP页面中response.setCharacterEncoding设置的值。所以对于POST表单提交的数据，在获得数据的JSP页面中request.setCharacterEncoding要和生成提交该表单的JSP页面的response.setCharacterEncoding设置成相同的值。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 对于URL提交的数据和表单中GET方式提交的数据，在接收数据的JSP中设置request.setCharacterEncoding参数是不行的，因为在Tomcat5.0中，默认情况下使用ISO-8859-1对URL提交的数据和表单中GET方式提交的数据进行重新编码（解码），而不使用该参数对URL提交的数据和表单中GET方式提交的数据进行重新编码（解码）。要解决该问题，应该在Tomcat的配置文件的Connector标签中设置useBodyEncodingForURI或者URIEncoding属性，其中useBodyEncodingForURI参数表示是否用request.setCharacterEncoding参数对URL提交的数据和表单中GET方式提交的数据进行重新编码，在默认情况下，该参数为false（Tomcat4.0中该参数默认为true）；URIEncoding参数指定对所有GET方式请求（包括URL提交的数据和表单中GET方式提交的数据）进行统一的重新编码（解码）的编码。URIEncoding和useBodyEncodingForURI区别是，URIEncoding是对所有GET方式的请求的数据进行统一的重新编码（解码），而useBodyEncodingForURI则是根据响应该请求的页面的request.setCharacterEncoding参数对数据进行的重新编码（解码），不同的页面可以有不同的重新编码（解码）的编码。所以对于URL提交的数据和表单中GET方式提交的数据，可以修改URIEncoding参数为浏览器编码或者修改useBodyEncodingForURI为true，并且在获得数据的JSP页面中request.setCharacterEncoding参数设置成浏览器编码。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 下面总结下，以Tomcat5.0为WEB服务器时，如何防止中文乱码。</p>
<p style="text-indent: 2em">1、 对于同一个应用，最好统一编码，推荐为UTF-8，当然GBK也可以。</p>
<p style="text-indent: 2em">2、 正确设置JSP的pageEncoding参数</p>
<p style="text-indent: 2em">3、 在所有的JSP/Servlet中设置contentType="text/html;charset=UTF-8"或response.setCharacterEncoding("UTF-8")，从而间接实现对浏览器编码的设置。</p>
<p style="text-indent: 2em">4、 对于请求，可以使用过滤器或者在每个JSP/Servlet中设置request.setCharacterEncoding("UTF-8")。同时，要修改Tomcat的默认配置，推荐将useBodyEncodingForURI参数设置为true，也可以将URIEncoding参数设置为UTF-8（有可能影响其他应用，所以不推荐）。</p>
</div>
</div>
</div><img src ="http://www.blogjava.net/kelly/aggbug/176905.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2008-01-22 09:27 <a href="http://www.blogjava.net/kelly/archive/2008/01/22/176905.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>MessageDigest对密码进行加密 </title><link>http://www.blogjava.net/kelly/archive/2008/01/04/172778.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Fri, 04 Jan 2008 08:26:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2008/01/04/172778.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/172778.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2008/01/04/172778.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/172778.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/172778.html</trackback:ping><description><![CDATA[<div>今天碰到java.security.MessageDigest这个类；查看api解释为： <font color="#ff0000">此 MessageDigest 类为应用程序提供信息摘要算法的功能，如 MD5 或 SHA 算法。信息摘要是安全的单向哈希函数，它接收任意大小的数据，输出固定长度的哈希值。</font></div>
<div><font color="#7f7f7f">又baidu了一下，搜搜资料，下面一个例子很不错，就把它引用过来咯;完整如下 ^^V</font></div>
<div><span>
<p>&lt;!------------------------ </p>
<p>有时候，我们必须把用户密码存放到数据库，为了安全起见，我们需要对这些密码进行单向的加密处理，<br />
比如，有明文密码如下：<br />
String originalPwd = "mypassword"; </p>
<p>应用报文摘要方法，得到单向的加密字符串 </p>
<p>//MD5是16位,SHA是20位（这是两种报文摘要的算法）<br />
//MessageDigest md= MessageDigest.getInstance("MD5");<br />
MessageDigest messageDigest=MessageDigest.getInstance("SHA-1");<br />
messageDigest.update(originalPwd.getBytes());<br />
//String digestedPwdString = new String(messageDigest.digest());<br />
String digestedPwdString = new String(Base64.encode(messageDigest.digest()));<br />
System.out.println("pwd:" + digestedPwdString);<br />
这样，就得到密码的报文摘要，把此摘要保存到数据库，<br />
以后用户登陆时，用相同的算法算出摘要，和数据库中的比较，如果一致，则密码正确。 </p>
<p>注意：<br />
byte[] digest = messageDigest.digest();<br />
得到的是个二进制byte数组，有可能某些byte是不可打印的字符。<br />
所以用Base64.encode把它转化成可打印字符。 </p>
<p>也可以把digest的每个byte转化成hex（16进制）保存。<br />
MessageDigest messageDigest=MessageDigest.getInstance("SHA-1");<br />
messageDigest.update(originalPwd.getBytes());<br />
byte[] bin = messageDigest.digest()；<br />
再调用下面的方法生产hex（16进制）保存。 </p>
<p><br />
二行制转hex字符串的方法如下：<br />
private static String byte2hex(byte[] b){<br />
&nbsp;&nbsp;&nbsp; String hs="";<br />
&nbsp;&nbsp;&nbsp; String stmp="";<br />
&nbsp;&nbsp;&nbsp; for (int n=0; n&lt;b.length; n++){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; stmp=(java.lang.Integer.toHexString(b[n] &amp; 0xFF));<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (stmp.length()==1) hs=hs+"0"+stmp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else hs=hs+stmp;<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp; return hs;<br />
} </p>
<p>或者：<br />
private static String byto2hex2(byte[] bin){<br />
&nbsp;&nbsp;&nbsp; StringBuffer buf = new StringBuffer();<br />
&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; bin.length; ++i) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int x = bin[i] &amp; 0xFF, h = x &gt;&gt;&gt; 4, l = x &amp; 0x0F;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; buf.append((char) (h + ((h &lt; 10) ? '0' : 'a' - 10)));<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; buf.append((char) (l + ((l &lt; 10) ? '0' : 'a' - 10)));<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp; return buf.toString();<br />
} </p>
<p>或者:<br />
干脆直接用下面的方法生成，用到第三方包：<br />
public static String encryptPwd(String pwd, String algorithm){<br />
&nbsp;&nbsp;&nbsp; //String a = org.apache.catalina.realm.RealmBase.Digest(pwd,"SHA-1");<br />
&nbsp;&nbsp;&nbsp; return org.apache.catalina.realm.RealmBase.Digest(pwd, algorithm);<br />
}</p>
</span></div><img src ="http://www.blogjava.net/kelly/aggbug/172778.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2008-01-04 16:26 <a href="http://www.blogjava.net/kelly/archive/2008/01/04/172778.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于Connector的URIEncoding属性</title><link>http://www.blogjava.net/kelly/archive/2007/12/03/164877.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Mon, 03 Dec 2007 06:53:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2007/12/03/164877.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/164877.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2007/12/03/164877.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/164877.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/164877.html</trackback:ping><description><![CDATA[<p>tomcat5中，因为众所周知的原因，为了保证get/post数据都采用相同的UTF8编码，我们在server.xml中进行了如下设置：</p>
<p><connector port="8080" maxthreads="150" minsparethreads="25" br=""  <="">maxSpareThreads="75" enableLookups="false" redirectPort="8443" <br />
acceptCount="100" debug="99" connectionTimeout="20000" <br />
disableUploadTimeout="true" URIEncoding="UTF-8"/&gt;</connector></p>
<p>这里指定了get时候的数据编码。但是，当使用IIS作为webserver转发servlet/jsp请求给Tomcat时候，这个设置却失效了。其实原因很简单：IIS是通过AJP协议，把请求转发到Tomcat监听的8009端口上的，所以这里针对8080的设置自然就无效了。正确的方法是进行下面的设置： </p>
<p><connector port="8009" enablelookups="false" redirectport="8443" br=""  <="">debug="0" protocol="AJP/1.3" URIEncoding="UTF-8"/&gt;</connector></p>
<p>虽然是小问题，却花了我几个小时才想到。&nbsp; </p><img src ="http://www.blogjava.net/kelly/aggbug/164877.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2007-12-03 14:53 <a href="http://www.blogjava.net/kelly/archive/2007/12/03/164877.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>解决中文乱码</title><link>http://www.blogjava.net/kelly/archive/2007/12/03/164866.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Mon, 03 Dec 2007 06:40:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2007/12/03/164866.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/164866.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2007/12/03/164866.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/164866.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/164866.html</trackback:ping><description><![CDATA[<p>一、请求结果的乱码:</p>
<ul>
    <li>POST提交:</li>
</ul>
<p style="text-indent: 2em">　　　</p>
<p style="text-indent: 2em">解决办法：在显示中文字符串前加上 <font color="#0000ff"><strong>request.setCharacterEncoding("gbk");</strong></font></p>
<p style="text-indent: 2em"><font color="black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 或者:在获取字符串str后使用str = new String(<strong>str.getBytes("ISO-8859-1")</strong>,"GB2312");转换</font></p>
<p style="text-indent: 2em"><font color="black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ISO-8859-1是默认的字符编码</font></p>
<ul>
    <li>GET提交:</li>
</ul>
<p style="text-indent: 2em">　　　解决办法：</p>
<p style="text-indent: 2em">1、项目已打包到web服务器：</p>
<blockquote dir="ltr" style="margin-right: 0px">
<p align="left">　　找到 %TOMCAT_HOME%\conf\server.xml文件，将此文件的代码段末尾加　　　　　　　　　　　　　　入&nbsp;<font color="#0000ff"><strong>URIEncoding="gbk"</strong></font><font color="#000000">，结果如下所示：</font></p>
<p align="left">&lt;Connector port="8080" maxHttpHeaderSize="8192"　maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" <strong><font color="#0000ff">URIEncoding="gbk"</font></strong>/&gt;</p>
</blockquote>
<p style="text-indent: 2em">2、开发过程中：</p>
<blockquote dir="ltr" style="margin-right: 0px">
<p style="text-indent: 2em">找到 %project_name%\Tomcat\conf\server.xml文件，删除文件中的备注，增加<font color="#0000ff"><strong>URIEncoding="gbk"</strong></font><font color="#000000">，结果如下所示：</font></p>
<p style="text-indent: 2em">&lt;Connector acceptCount="10" connectionTimeout="60000" maxThreads="75" minSpareThreads="5" port="8080" <font color="#0000ff"><strong>URIEncoding="gbk"</strong></font>/&gt;</p>
<p style="text-indent: 2em">二、处理响应结果的乱码..</p>
<p style="text-indent: 2em">1.在servlet中 response.setContentType("text/html;charset=GB2312");</p>
<p style="text-indent: 2em">2.在jsp中 &lt;<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#37;&#64;&#112;&#97;&#103;&#101;&#32;&#99;&#111;&#110;&#116;&#101;&#110;&#116;&#84;&#121;&#112;&#101;&#61;&#38;&#113;&#117;&#111;&#116;&#59;&#116;&#101;&#120;&#116;&#47;&#104;&#116;&#109;&#108;&#59;&#99;&#104;&#97;&#114;&#115;&#101;&#116;&#61;&#71;&#66;&#50;&#51;&#49;&#50;&#38;&#113;&#117;&#111;&#116;&#59;&#37;">%@page contentType="text/html;charset=GB2312"%</a>&gt;</p>
<p style="text-indent: 2em">3.在html中 &lt;head&gt;&lt;META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=GB2312"&gt;&lt;/head&gt;</p>
</blockquote><img src ="http://www.blogjava.net/kelly/aggbug/164866.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2007-12-03 14:40 <a href="http://www.blogjava.net/kelly/archive/2007/12/03/164866.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ajax参数乱码转换</title><link>http://www.blogjava.net/kelly/archive/2007/09/20/146749.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Thu, 20 Sep 2007 04:22:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2007/09/20/146749.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/146749.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2007/09/20/146749.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/146749.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/146749.html</trackback:ping><description><![CDATA[<div class="content" id="fontzoom">
<p><br /></p><p>　一、提交中文是使用javascript的函数：encodeURIComponent()进行编码，<br />例如：<br />String&nbsp;<div style="display: inline-block; "></div>param=encodeURIComponet("param");<br />然后到服务器端使用UTF-8编码提取参数：<br />
request.setCharacterEncoding("UTF-8");<br />
String str = request.getParameter("param");<br />
然后使用下面的方式进行解码：<br />
java.net.URLDecoder.decode(str,"UTF-8")<br />
这样就可以得到正确的参数。<br /></p>
</div><img src ="http://www.blogjava.net/kelly/aggbug/146749.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2007-09-20 12:22 <a href="http://www.blogjava.net/kelly/archive/2007/09/20/146749.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSP中乱码解决方案</title><link>http://www.blogjava.net/kelly/archive/2007/03/19/104742.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Mon, 19 Mar 2007 07:37:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2007/03/19/104742.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/104742.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2007/03/19/104742.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/104742.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/104742.html</trackback:ping><description><![CDATA[<p>在JSP的查询或者插入数据库的时候总会遇到乱码的问题，下面给出两种解决方案：<br />1、在页面中加上&nbsp;&nbsp; request.setCharacterEncoding("utf-8");<br />2、String name=new String(request.getparameters("name").getBytes("ISO8859_1"),"utf-8")</p><img src ="http://www.blogjava.net/kelly/aggbug/104742.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2007-03-19 15:37 <a href="http://www.blogjava.net/kelly/archive/2007/03/19/104742.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>重载，重写，继承，多态</title><link>http://www.blogjava.net/kelly/archive/2007/03/15/103940.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Thu, 15 Mar 2007 01:52:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2007/03/15/103940.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/103940.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2007/03/15/103940.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/103940.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/103940.html</trackback:ping><description><![CDATA[<p>1、重载是在一个类里一系列参数不同名字相同的方法.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 方法签名由方法名称和一个参数列表（方法的参数的顺序和类型）组成。只要签名不同，就可以在一种类型内定义具有相同名称的多种方法。当定义两种或多种具有相同名称的方法时，就称作重载。<br />2、重写是继承后重新实现父类的方法.派生类型可以重写继承的虚方法<br />3、继承是子类获得父类的成员<br />4、多态则是父类使用子类的方法<br /><br />下面给出一个例子：<br />一个父类：test_father,一个子类：test_sub,来说明这几个概念的关系<br />test_father类:<br /><br />public class test_father {</p>
		<p>&nbsp;public&nbsp; test_father() {<br />&nbsp;&nbsp;System.out.println("father");//构造器<br />&nbsp;}<br />&nbsp;<br />&nbsp;public void test_father() {<br />&nbsp;&nbsp;System.out.println("father");//重载<br />&nbsp;}<br />&nbsp;public int test_father(int i) {<br />&nbsp;&nbsp;System.out.println("fatherii"+i);<br />&nbsp;&nbsp;return i;//重载<br />&nbsp;}</p>
		<p>}<br /><br />test_sub类：<br />public class test_sub extends test_father{//继承</p>
		<p>&nbsp;public test_sub() {<br />&nbsp;&nbsp;System.out.println("test_sub");//构造器<br />&nbsp;}<br />&nbsp;<br />&nbsp;public void test_father() {<br />&nbsp;&nbsp;System.out.println("sub");//重写父类方法<br />&nbsp;}<br />&nbsp;public int test_father(int i) {<br />&nbsp;&nbsp;System.out.println("subii"+i);<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;return i;<br />&nbsp;}</p>
		<p>&nbsp;/**<br />&nbsp; * @param args<br />&nbsp; */<br />&nbsp;public static void main(String[] args) {<br />&nbsp;&nbsp;// TODO Auto-generated method stub<br />&nbsp;&nbsp;test_father fa=new test_sub();//多态<br />&nbsp;&nbsp;fa.test_father();<br />&nbsp;&nbsp;fa.test_father(3);<br />&nbsp;}</p>
		<p>}<br /><br />输出结果：<br />father<br />test_sub<br />sub<br />subii3<br /><br /><br /></p><img src ="http://www.blogjava.net/kelly/aggbug/103940.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2007-03-15 09:52 <a href="http://www.blogjava.net/kelly/archive/2007/03/15/103940.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在java中直接调用servlet程序！</title><link>http://www.blogjava.net/kelly/archive/2007/01/31/96983.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Wed, 31 Jan 2007 07:21:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2007/01/31/96983.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/96983.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2007/01/31/96983.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/96983.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/96983.html</trackback:ping><description><![CDATA[<p>由于一些项目的需求，我需要把数据库操作都放到服务器端处理，而页面则在本地，所以就用到 了远端调用的问题。为了实现用本地jsp远端调用数据库操作程序，我采用用jsp远端调用servlet的方法，servlet程序把处理完的结果以字符串的形式返回给jsp页面。下面是实现远端调用的方法。<br /></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">
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />
				<span style="color: #000000">URL&nbsp;url&nbsp;</span>
				<span style="color: #000000">=</span>
				<span style="color: #000000">&nbsp;</span>
				<span style="color: #0000ff">new</span>
				<span style="color: #000000">&nbsp;URL(</span>
				<span style="color: #000000">"</span>
				<span style="color: #000000">http://127.0.0.1:8080/KFC/servlet/TestServlet?firstName=111&amp;middleName=222&amp;birthday=333</span>
				<span style="color: #000000">"</span>
				<span style="color: #000000">&nbsp;);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />InputStream&nbsp;is&nbsp;</span>
				<span style="color: #000000">=</span>
				<span style="color: #000000">&nbsp;url.openStream();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />BufferedReader&nbsp;br&nbsp;</span>
				<span style="color: #000000">=</span>
				<span style="color: #000000">&nbsp;</span>
				<span style="color: #0000ff">new</span>
				<span style="color: #000000">&nbsp;BufferedReader(</span>
				<span style="color: #0000ff">new</span>
				<span style="color: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;InputStreamReader(is));<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />String&nbsp;aa&nbsp;</span>
				<span style="color: #000000">=</span>
				<span style="color: #000000">&nbsp;</span>
				<span style="color: #000000">""</span>
				<span style="color: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />String&nbsp;msgcontent&nbsp;</span>
				<span style="color: #000000">=</span>
				<span style="color: #000000">&nbsp;</span>
				<span style="color: #000000">""</span>
				<span style="color: #000000">;<br /><img id="Codehighlighter1_296_320_Open_Image" onclick="this.style.display='none'; Codehighlighter1_296_320_Open_Text.style.display='none'; Codehighlighter1_296_320_Closed_Image.style.display='inline'; Codehighlighter1_296_320_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"><img id="Codehighlighter1_296_320_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_296_320_Closed_Text.style.display='none'; Codehighlighter1_296_320_Open_Image.style.display='inline'; Codehighlighter1_296_320_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"></span>
				<span style="color: #0000ff">while</span>
				<span style="color: #000000">&nbsp;(&nbsp;(aa&nbsp;</span>
				<span style="color: #000000">=</span>
				<span style="color: #000000">&nbsp;br.readLine())&nbsp;</span>
				<span style="color: #000000">!=</span>
				<span style="color: #000000">&nbsp;</span>
				<span style="color: #0000ff">null</span>
				<span style="color: #000000">)&nbsp;</span>
				<span id="Codehighlighter1_296_320_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"  alt="" />
				</span>
				<span id="Codehighlighter1_296_320_Open_Text">
						<span style="color: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;msgcontent&nbsp;</span>
						<span style="color: #000000">+=</span>
						<span style="color: #000000">&nbsp;aa;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span>
				</span>
				<span style="color: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />is.close();&nbsp;</span>
		</div>
		<p>这段代码是jsp中调用的写法。在servlet页面中可以用request.getparameter()的方法直接得到传过去的参数，然后调用servlet程序中的doget()方法。在doget()方法中进行业务处理，然后把处理结果以字符串的形式返回。在servlet程序中的输出方式是：<br /></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">
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />
				<span style="color: #000000">&nbsp;PrintWriter&nbsp;out&nbsp;</span>
				<span style="color: #000000">=</span>
				<span style="color: #000000">&nbsp;response.getWriter();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;out.println(responseText);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;out.flush();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;out.close();</span>
		</div>
		<p>
				<br />&nbsp;</p><img src ="http://www.blogjava.net/kelly/aggbug/96983.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2007-01-31 15:21 <a href="http://www.blogjava.net/kelly/archive/2007/01/31/96983.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用java实现打印功能</title><link>http://www.blogjava.net/kelly/archive/2007/01/31/96973.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Wed, 31 Jan 2007 07:03:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2007/01/31/96973.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/96973.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2007/01/31/96973.html#Feedback</comments><slash:comments>13</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/96973.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/96973.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 用java实现打印，java.awt中提供了一些打印的API,要实现打印，首先要获得打印对象，然后继承Printable实现接口方法print，以便打印机进行打印，最后用用Graphics2D直接输出直接输出。下面代码实现了简单的打印功能：import&nbsp;java.awt.BasicStroke;import&nbsp;java.awt.Color;import&nbsp;java.awt...&nbsp;&nbsp;<a href='http://www.blogjava.net/kelly/archive/2007/01/31/96973.html'>阅读全文</a><img src ="http://www.blogjava.net/kelly/aggbug/96973.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2007-01-31 15:03 <a href="http://www.blogjava.net/kelly/archive/2007/01/31/96973.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>js自动跳转</title><link>http://www.blogjava.net/kelly/archive/2006/12/21/89198.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Thu, 21 Dec 2006 01:44:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2006/12/21/89198.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/89198.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2006/12/21/89198.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/89198.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/89198.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; &lt;script language=javascript&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setTimeout("window.location.href='index.asp'",60000)<br />&nbsp;&nbsp;&nbsp;&nbsp; &lt;/script&gt;<br />参数说明：第一个参数要跳转的页面，第二个参数的跳转的时间，1000为1S。<img src ="http://www.blogjava.net/kelly/aggbug/89198.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2006-12-21 09:44 <a href="http://www.blogjava.net/kelly/archive/2006/12/21/89198.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何显示时间和星期</title><link>http://www.blogjava.net/kelly/archive/2006/12/18/88518.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Mon, 18 Dec 2006 05:45:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2006/12/18/88518.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/88518.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2006/12/18/88518.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/88518.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/88518.html</trackback:ping><description><![CDATA[<p>下面提供三种显示时间和星期的方法：<br />一、用js控制，代码如下：<br />&lt;html&gt;<br />&lt;script language=JavaScript&gt;<br />today=new Date();<br />function initArray()<br />{<br />alert(initArray.arguments.length);<br />this.length=initArray.arguments.length;<br />for(var i=0;i&lt;this.length;i++)<br />{<br />this[i+1]=initArray.arguments[i] ;<br />alert(this);<br />alert(this[i+1]);<br />}<br />}<br />var d=new initArray(<br />"星期日",<br />"星期一",<br />"星期二",<br />"星期三",<br />"星期四",<br />"星期五",<br />"星期六");<br />document.write(d);<br />document.write(today.getDay()+1);<br />document.write(<br />"&lt;font color=#0000ff style='font-size:9pt;font-family: 宋体'&gt; ",<br />today.getYear(),"年",<br />today.getMonth()+1,"月",<br />today.getDate(),"日",<br />d[today.getDay()+1],<br />"&lt;/font&gt;" ); <br />&lt;/script&gt; <br />&lt;/html&gt;<br /><br />输出结果：<font size="2"><font color="#0000ff"><font face="宋体">2006年12月18日星期一
<script language="JavaScript"><![CDATA[
var day="";
var month="";
var ampm="";
var ampmhour="";
var myweekday="";
var year="";
mydate=new Date();
myweekday=mydate.getDay();
mymonth=mydate.getMonth()+1;
myday= mydate.getDate();
myyear= mydate.getYear();

year=(myyear > 200) ? myyear : 1900 + myyear;
if(myweekday == 0)
weekday=" 星期日 ";
else if(myweekday == 1)
weekday=" 星期一 ";
else if(myweekday == 2)
weekday=" 星期二 ";
else if(myweekday == 3)
weekday=" 星期三 ";
else if(myweekday == 4)
weekday=" 星期四 ";
else if(myweekday == 5)
weekday=" 星期五 ";
else if(myweekday == 6)
weekday=" 星期六 ";
document.write("<font color=#ff0000>北京时间 "+year+"年"+mymonth+"月"+myday+"日 "+weekday+"</font>);
]]&gt;</script></font></font></font><br /><br />二、用 js控制，代码如下：<br /><br />&lt;SCRIPT language=JavaScript&gt;<br />var day="";<br />var month="";<br />var ampm="";<br />var ampmhour="";<br />var myweekday="";<br />var year="";<br />mydate=new Date();<br />myweekday=mydate.getDay();<br />mymonth=mydate.getMonth()+1;<br />myday= mydate.getDate();<br />myyear= mydate.getYear();</p>
		<p>year=(myyear &gt; 200) ? myyear : 1900 + myyear;<br />if(myweekday == 0)<br />weekday=" 星期日 ";<br />else if(myweekday == 1)<br />weekday=" 星期一 ";<br />else if(myweekday == 2)<br />weekday=" 星期二 ";<br />else if(myweekday == 3)<br />weekday=" 星期三 ";<br />else if(myweekday == 4)<br />weekday=" 星期四 ";<br />else if(myweekday == 5)<br />weekday=" 星期五 ";<br />else if(myweekday == 6)<br />weekday=" 星期六 ";<br />document.write("&lt;font color=#ff0000&gt;北京时间 "+year+"年"+mymonth+"月"+myday+"日 "+weekday+"&lt;/font&gt;");<br />&lt;/SCRIPT&gt;<br /><br />输出结果：<br /><font color="#ff0000">北京时间 2006年12月18日 星期一<br /><br /><font color="#000000">三、用ASP代码写日期<br /></font><br /></font><font color="#000000">&lt;%<br />Response.write FormatDateTime(Date, 1)</font></p>
		<p>
				<font color="#000000">MyWeekDay= Weekday(date) <br />If MyWeekDay=1 Then <br />&nbsp;MyWeekDay_result=" 星期日 "<br />ElseIf MyWeekDay=2 Then <br />&nbsp;MyWeekDay_result=" 星期一 "<br />ElseIf MyWeekDay=3 Then <br />&nbsp;MyWeekDay_result=" 星期二 "<br />ElseIf MyWeekDay=4 Then <br />&nbsp;MyWeekDay_result=" 星期三 "<br />ElseIf MyWeekDay=5 Then <br />&nbsp;MyWeekDay_result=" 星期四 "<br />ElseIf MyWeekDay=6 Then <br />&nbsp;MyWeekDay_result=" 星期五 "<br />ElseIf MyWeekDay=7 Then <br />&nbsp;MyWeekDay_result=" 星期六 "<br />End If </font>
		</p>
		<p>
				<font color="#000000">Response.write MyWeekDay_result</font>
		</p>
		<p>
				<font color="#ff0000">
						<font color="#000000">%&gt;<br /></font>
						<br />输出结果：<font color="#000000">2006年12月18日 星期一 </font><br /><br /><br /></font>
				<br />
				<br />
				<br />
				<br />
		</p><img src ="http://www.blogjava.net/kelly/aggbug/88518.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2006-12-18 13:45 <a href="http://www.blogjava.net/kelly/archive/2006/12/18/88518.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JAVA中日期格式化</title><link>http://www.blogjava.net/kelly/archive/2006/12/18/88497.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Mon, 18 Dec 2006 05:15:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2006/12/18/88497.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/88497.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2006/12/18/88497.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/88497.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/88497.html</trackback:ping><description><![CDATA[<p>时间格式化 <br />一、JAVA中日期的获取、设置和格式化<br />1）JAVA提供了3个日期类：Date、Calendar和DateFormat。<br />Date()方法主要用于创建日期对象并获取日期；<br />Calendar()方法主要用于获取和设置日期；<br />DateFormat()方法主要用于创建日期格式化器，然后再由格式化器将日期转换为各种日期格式串输出。<br />2）JAVA语言规定的基准日期为格林尼治标准时间1970.1.1.00:00:00，当前日期是由基准日期开始所经历的毫秒数转换出来的。<br />3）DateFomat类在java.text包中，Date和Calendar类在java.util包中。<br />4）实例如下：<br />import java.util.*;<br />import java.text.*;</p>
		<p>public class DisplayDate {<br />public static void main(String[] args){<br />Date today;<br />Calendar now;<br />DateFormat f1,f2;<br />String s1,s2;</p>
		<p>System.out.println("\n显示Date类的相关用法");</p>
		<p>today = new Date();<br />System.out.println("new Date()= \t"+ today);</p>
		<p>System.out.println("\n用DateFormat类显示各种日期格式");</p>
		<p>//显示各种日期格式<br />f1 = DateFormat.getDateInstance();<br />s1 = f1.format(today);<br />System.out.println("DateFormat.getDateInstance()= \t"+s1);</p>
		<p>f1 = DateFormat.getDateInstance(DateFormat.LONG,Locale.CHINA);<br />s1 = f1.format(today);<br />System.out.println("DateFormat.getDateInstance(DateFormat.LONG,Locale.CHINA)= \t"+ s1);</p>
		<p>f1 = DateFormat.getDateInstance(DateFormat.MEDIUM,Locale.CHINA);<br />s1 = f1.format(today);<br />System.out.println("DateFormat.getDateInstance(DateFormat.MEDIUM,Locale.CHINA)= \t"+ s1);</p>
		<p>f1 = DateFormat.getDateInstance(DateFormat.SHORT,Locale.CHINA);<br />s1 = f1.format(today);<br />System.out.println("DateFormat.getDateInstance(DateFormat.SHORT,Locale.CHINA)= \t" + s1);</p>
		<p>System.out.println("\n用DateFormat类显示各种时间格式");</p>
		<p>//显示各种时间格式<br />f1 = DateFormat.getTimeInstance();<br />s1 = f1.format(today);<br />System.out.println("DateFormat.getTimeInstance()= \t"+s1);</p>
		<p>f1 = DateFormat.getTimeInstance(DateFormat.LONG,Locale.CHINA);<br />s1 = f1.format(today);<br />System.out.println("DateFormat.getTimeInstance(DateFormat.LONG,Locale.CHINA)= \t"+s1);</p>
		<p>f1 = DateFormat.getTimeInstance(DateFormat.MEDIUM,Locale.CHINA);<br />s1 = f1.format(today);<br />System.out.println("DateFormat.getTimeInstance(DateFormat.MEDIUM,Locale.CHINA)= \t"+s1);</p>
		<p>f1 = DateFormat.getTimeInstance(DateFormat.SHORT,Locale.CHINA);<br />s1 = f1.format(today);<br />System.out.println("DateFormat.getTimeInstance(DateFormat.SHORT,Locale.CHINA)= \t"+s1);</p>
		<p>System.out.println("\n显示Calendar的相关时间用法");</p>
		<p>now = Calendar.getInstance();<br />today = now.getTime();<br />System.out.println("Calendar.getInstance().getTime()= \t"+ today.toString());</p>
		<p>}<br />}</p>
		<p>程序运行结果显示如下：</p>
		<p>显示Date类的相关用法<br />new Date()= Fri May 02 13:29:32 CST 2003</p>
		<p>用DateFormat类显示各种日期格式<br />DateFormat.getDateInstance()= 2003-5-2<br />DateFormat.getDateInstance(DateFormat.LONG,Locale.CHINA)= 2003年5月2日<br />DateFormat.getDateInstance(DateFormat.MEDIUM,Locale.CHINA)= 2003-5-2<br />DateFormat.getDateInstance(DateFormat.SHORT,Locale.CHINA)= 03-5-2</p>
		<p>用DateFormat类显示各种时间格式<br />DateFormat.getTimeInstance()= 13:29:32<br />DateFormat.getTimeInstance(DateFormat.LONG,Locale.CHINA)= 下午01时29分32秒<br />DateFormat.getTimeInstance(DateFormat.MEDIUM,Locale.CHINA)= 13:29:32<br />DateFormat.getTimeInstance(DateFormat.SHORT,Locale.CHINA)= 下午1:29</p>
		<p>显示Calendar的相关时间用法<br />Calendar.getInstance().getTime()= Fri May 02 13:29:33 CST 2003</p><img src ="http://www.blogjava.net/kelly/aggbug/88497.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2006-12-18 13:15 <a href="http://www.blogjava.net/kelly/archive/2006/12/18/88497.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java中日期的应用（1）</title><link>http://www.blogjava.net/kelly/archive/2006/12/07/86079.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Thu, 07 Dec 2006 05:51:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2006/12/07/86079.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/86079.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2006/12/07/86079.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/86079.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/86079.html</trackback:ping><description><![CDATA[1、文本框中输入的日期串转换成YYYY-MM-DD的形式<br /><br />由于format（）中的参数必须是日期型的，所以要先把String类型转换成Date类型。<br /><br />代码如下：<br />String sz_date="2006-3-6";<br />java.util.Date birthday = new java.util.Date();<br />&nbsp;java.text.SimpleDateFormat sdf=new java.text.SimpleDateFormat("yyyy-MM-dd");<br />&nbsp;birthday = sdf.parse(sz_date);//把字符串类型转换成日期类型<br />String date = sdf.format(birthday );//把日期格式化<br />输入结果：2006-03-06<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"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">package</span><span style="color: #000000">&nbsp;net.yeah.glchengang;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.text.SimpleDateFormat;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.util.Date;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;com.sun.org.apache.xerces.internal.impl.xpath.regex.ParseException;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br /><img id="Codehighlighter1_190_1121_Open_Image" onclick="this.style.display='none'; Codehighlighter1_190_1121_Open_Text.style.display='none'; Codehighlighter1_190_1121_Closed_Image.style.display='inline'; Codehighlighter1_190_1121_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"><img id="Codehighlighter1_190_1121_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_190_1121_Closed_Text.style.display='none'; Codehighlighter1_190_1121_Open_Image.style.display='inline'; Codehighlighter1_190_1121_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">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;ExampleDate&nbsp;</span><span id="Codehighlighter1_190_1121_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"  alt="" /></span><span id="Codehighlighter1_190_1121_Open_Text"><span style="color: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /><br /><img id="Codehighlighter1_194_255_Open_Image" onclick="this.style.display='none'; Codehighlighter1_194_255_Open_Text.style.display='none'; Codehighlighter1_194_255_Closed_Image.style.display='inline'; Codehighlighter1_194_255_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"><img id="Codehighlighter1_194_255_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_194_255_Closed_Text.style.display='none'; Codehighlighter1_194_255_Open_Image.style.display='inline'; Codehighlighter1_194_255_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_194_255_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">/**&nbsp;*/</span><span id="Codehighlighter1_194_255_Open_Text"><span style="color: #008000">/**</span><span style="color: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@param</span><span style="color: #008000">&nbsp;args<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@throws</span><span style="color: #008000">&nbsp;java.text.ParseException&nbsp;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">*/</span></span><span style="color: #000000"><br /><img id="Codehighlighter1_329_636_Open_Image" onclick="this.style.display='none'; Codehighlighter1_329_636_Open_Text.style.display='none'; Codehighlighter1_329_636_Closed_Image.style.display='inline'; Codehighlighter1_329_636_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"><img id="Codehighlighter1_329_636_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_329_636_Closed_Text.style.display='none'; Codehighlighter1_329_636_Open_Image.style.display='inline'; Codehighlighter1_329_636_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;main(String[]&nbsp;args)&nbsp;</span><span style="color: #0000ff">throws</span><span style="color: #000000">&nbsp;java.text.ParseException&nbsp;</span><span id="Codehighlighter1_329_636_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"  alt="" /></span><span id="Codehighlighter1_329_636_Open_Text"><span style="color: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Date&nbsp;mydate</span><span style="color: #000000">=</span><span style="color: #000000">getDate(</span><span style="color: #000000">"</span><span style="color: #000000">2006-3-6</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SimpleDateFormat&nbsp;formatter&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;SimpleDateFormat(</span><span style="color: #000000">"</span><span style="color: #000000">yyyy-MM-dd&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;date&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;formatter.format(mydate);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print(date);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;Date&nbsp;getDate(String&nbsp;sz_date)&nbsp;</span><span style="color: #0000ff">throws</span><span style="color: #000000">&nbsp;java.text.ParseException<br /><img id="Codehighlighter1_716_1118_Open_Image" onclick="this.style.display='none'; Codehighlighter1_716_1118_Open_Text.style.display='none'; Codehighlighter1_716_1118_Closed_Image.style.display='inline'; Codehighlighter1_716_1118_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"><img id="Codehighlighter1_716_1118_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_716_1118_Closed_Text.style.display='none'; Codehighlighter1_716_1118_Open_Image.style.display='inline'; Codehighlighter1_716_1118_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_716_1118_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"  alt="" /></span><span id="Codehighlighter1_716_1118_Open_Text"><span style="color: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;java.util.Date&nbsp;birthday&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;java.util.Date();<br /><img id="Codehighlighter1_774_929_Open_Image" onclick="this.style.display='none'; Codehighlighter1_774_929_Open_Text.style.display='none'; Codehighlighter1_774_929_Closed_Image.style.display='inline'; Codehighlighter1_774_929_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"><img id="Codehighlighter1_774_929_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_774_929_Closed_Text.style.display='none'; Codehighlighter1_774_929_Open_Image.style.display='inline'; Codehighlighter1_774_929_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000">&nbsp;</span><span id="Codehighlighter1_774_929_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"  alt="" /></span><span id="Codehighlighter1_774_929_Open_Text"><span style="color: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;java.text.SimpleDateFormat&nbsp;sdf</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;java.text.SimpleDateFormat(</span><span style="color: #000000">"</span><span style="color: #000000">yyyy-MM-dd</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;birthday&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sdf.parse(sz_date);<br /><img id="Codehighlighter1_956_1040_Open_Image" onclick="this.style.display='none'; Codehighlighter1_956_1040_Open_Text.style.display='none'; Codehighlighter1_956_1040_Closed_Image.style.display='inline'; Codehighlighter1_956_1040_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"><img id="Codehighlighter1_956_1040_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_956_1040_Closed_Text.style.display='none'; Codehighlighter1_956_1040_Open_Image.style.display='inline'; Codehighlighter1_956_1040_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(ParseException&nbsp;e)&nbsp;</span><span id="Codehighlighter1_956_1040_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"  alt="" /></span><span id="Codehighlighter1_956_1040_Open_Text"><span style="color: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">String&nbsp;to&nbsp;Date&nbsp;error</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print(birthday);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;birthday;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span><span style="color: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div><img src ="http://www.blogjava.net/kelly/aggbug/86079.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2006-12-07 13:51 <a href="http://www.blogjava.net/kelly/archive/2006/12/07/86079.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ASP中日期应用</title><link>http://www.blogjava.net/kelly/archive/2006/12/07/86062.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Thu, 07 Dec 2006 04:10:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2006/12/07/86062.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/86062.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2006/12/07/86062.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/86062.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/86062.html</trackback:ping><description><![CDATA[1、取当前时间 Response.write Now&amp;Chr(13) 结果输出：2006-12-7 11:59:31 <br />2、DateAdd的用法 Response.write DateAdd("d",1,date)&amp;Chr(13) 结果输出：2006-12-8 <br />说明： <br />yyyy 年 <br />q 季度 <br />m 月 <br />y 一年的日数 <br />d 日 <br />w 一周的日数 <br />ww 周 h 小时 <br />n 分钟 <br />s 秒 <br />3、format日期 Response.write FormatDateTime(now,2)&amp;Chr(13) 结果输出：2006-12-8 <br />说明： <br />vbGeneralDate 0 <br />显示日期和/或时间。如果有日期部分，则将该部分显示为短日期格式。如果有时间部分，则将该部分显示为长时间格式。如果都存在，则显示所有部分。 <br />vbLongDate 1 使用计算机区域设置中指定的长日期格式显示日期。 <br />vbShortDate 2 使用计算机区域设置中指定的短日期格式显示日期。 <br />vbLongTime 3 使用计算机区域设置中指定的时间格式显示时间。 <br />vbShortTime 4 使用 24 小时格式 (hh:mm) 显示时间。<img src ="http://www.blogjava.net/kelly/aggbug/86062.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2006-12-07 12:10 <a href="http://www.blogjava.net/kelly/archive/2006/12/07/86062.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>数字验证代码</title><link>http://www.blogjava.net/kelly/archive/2006/11/24/83230.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Fri, 24 Nov 2006 05:22:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2006/11/24/83230.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/83230.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2006/11/24/83230.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/83230.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/83230.html</trackback:ping><description><![CDATA[&lt;html&gt;<br />&lt;body&gt;<br />&lt;form name=form1&gt;<br />&lt;input&nbsp;&nbsp; name="textfield2"&nbsp;&nbsp; type="text"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; onKeyUp="value=value.replace(/[^\d]/g,'');"&nbsp;&nbsp; onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"&gt;<br />&lt;/form&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br />代码说明：<br />onKeyUp是键盘弹起事件。<br /><img src ="http://www.blogjava.net/kelly/aggbug/83230.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2006-11-24 13:22 <a href="http://www.blogjava.net/kelly/archive/2006/11/24/83230.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>实现视频全屏播放代码</title><link>http://www.blogjava.net/kelly/archive/2006/11/24/83173.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Fri, 24 Nov 2006 01:23:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2006/11/24/83173.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/83173.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2006/11/24/83173.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/83173.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/83173.html</trackback:ping><description><![CDATA[<p>&lt;html&gt;<br />&lt;head&gt;<br />&lt;script language=javascript&gt;<br />Real='document.NSPlay.';<br />function DoFull()<br />{<br />//alert("ddd");<br />eval(Real+'DisplaySize=3');<br />}<br />&lt;/script&gt;<br />&lt;/head&gt;<br />&lt;body&gt;</p>
		<p>&lt;object classid=CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95 <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; codebase=http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701 <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; height=180 id=NSPlay type=application/x-oleobject width=240 <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; VIEWASTEXT standby="加载 Microsoft Windows Media Player 组件..."&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="FileName" value="<a href="http://61.152.221.81/upfile9648/20061113_102221_156_980.wmv">http://61.152.221.81/upfile9648/20061113_102221_156_980.wmv</a>"&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="AutoStart" value="true"&gt;&lt;!--是否自动播放--&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="AutoRewind" value="-1"&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="AnimationAtStart" value="false"&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="ShowControls" value="false"&gt;&lt;!--是否显示控制,比如播放,停止,暂停--&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="ClickToPlay" value="false"&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="EnableContextMenu" value="true"&gt; &lt;!--是否用右键弹出菜单控制--&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="EnablePositionControls" value="false"&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="Balance" value="0"&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="ShowStatusBar" value="false"&gt;&lt;!--当前播放信息,显示是否正在播放,及总播放时间和当前播放到的时间--&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="AutoSize" value="0"&gt;&nbsp;&nbsp; &lt;!--是否自动调整播放大小--&gt;<br />&nbsp;&nbsp;&lt;param name="PlayCount" value="0"&gt;&lt;!--播放次数，0为循环播放--&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;embed <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type="application/x-mplayer2" <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pluginspage="<a href="http://www.microsoft.com/Windows/Downloads/Contents/Products/MediaPlayer/">http://www.microsoft.com/Windows/Downloads/Contents/Products/MediaPlayer/</a>" <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; filename src&nbsp; autostart="false" <br />&nbsp;&nbsp;&nbsp;enablecontextmenu="false" <br />&nbsp;&nbsp;&nbsp;clicktoplay="false"&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;enablepositioncontrols="false"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; showcontrols="0" showstatusbar="1"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; showdisplay="0"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; width="240" height="180"&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/embed&gt; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/object&gt;</p>
		<p>&nbsp;&nbsp; &nbsp;&lt;input type="button" onMouseDown="DoFull()" value="全屏显示" style="border-style: ridge; border-width: 1"&gt;</p>
		<p>&nbsp;&nbsp; &lt;/body&gt;<br />&nbsp;&nbsp; &lt;/html&gt;<br />&nbsp;&nbsp; &lt;script language=javascript&gt;<br />&nbsp;&nbsp;setTimeout("DoFull()",1000)<br />&nbsp;&nbsp;&lt;/script&gt;</p><img src ="http://www.blogjava.net/kelly/aggbug/83173.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2006-11-24 09:23 <a href="http://www.blogjava.net/kelly/archive/2006/11/24/83173.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>实现IE全屏显示</title><link>http://www.blogjava.net/kelly/archive/2006/11/24/83171.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Fri, 24 Nov 2006 01:21:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2006/11/24/83171.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/83171.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2006/11/24/83171.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/83171.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/83171.html</trackback:ping><description><![CDATA[<p>
				<br />&lt;SCRIPT LANGUAGE="javascript"&gt;<br />&lt;!-- Begin<br />if (this.name!='fullscreen'){ <br />&nbsp; window.open(location.href,'fullscreen','fullscreen,scrollbars') <br />} <br />//&nbsp; End --&gt;<br />&lt;/script&gt;</p>
		<p>
				<br />下面这句话可以不要。</p>
		<p>&lt;a href="javascript:window.close(self)"&gt;返回正常效果显示&lt;/a&gt;</p><img src ="http://www.blogjava.net/kelly/aggbug/83171.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2006-11-24 09:21 <a href="http://www.blogjava.net/kelly/archive/2006/11/24/83171.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何配置TOMCAT,以及TOMCAT和IIS的配置</title><link>http://www.blogjava.net/kelly/archive/2005/08/22/10707.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Mon, 22 Aug 2005 09:22:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2005/08/22/10707.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/10707.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2005/08/22/10707.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/10707.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/10707.html</trackback:ping><description><![CDATA[<font size="2">2、下面接着说一下TOMCAT和IIS的配置。<br />把TOMCAT和IIS配置在一起，可以扩展IIS的功能，让它也可以运行java web程序。<br /><br />JK插件：isapi_redirect-<!--?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /--><st1:chsdate w:st="on" year="1899" month="12" day="30" islunardate="False" isrocdate="False">1.2.9</st1:chsdate>.dll ，可以去<span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><a href="http://archive.apache.org/dist/jakarta/tomcat-connectors/jk/binaries/win32/jk-1.2.9/isapi_redirect-1.2.9.dll"><font face="宋体, MS Song">http://archive.apache.org/dist/jakarta/tomcat-connectors/jk/binaries/win32/jk-1.2.9/isapi_redirect-1.2.9.dll</font></a>下载。<br /><br /><font size="2">过程：<br />（1）、将isapi_redirect-<st1:chsdate w:st="on" year="1899" month="12" day="30" islunardate="False" isrocdate="False">1.2.9</st1:chsdate>.dll COPY到D:\profiles\Tomcat 5.0\bin下。<br /></font>（2）、在<font size="2">D:\profiles\Tomcat 5.0\conf下创建如下的workers.properties文件：</font><font face="宋体"><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">workers.tomcat_home=<font size="2">D:\profiles\Tomcat 5.0</font>&nbsp; #</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">让</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">mod_jk</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">模块知道</span></font><font face="宋体"><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">TOMCAT<br />workers.java_home=D:\profiles\JDK-1_4_2&nbsp;&nbsp; #</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">让</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">mod_jk</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">模块知道</span></font><font face="宋体"><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">JDK<br />ps=\&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">指定文件路径分隔符</span></font><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥"><br /><font face="宋体">worker.list=worker1<br />worker.worker1.port=8009&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #</font></span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥"><font face="宋体">工作端口</font></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥"><br /><font face="宋体">worker.worker1.host=localhost&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #TOMCAt</font></span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥"><font face="宋体">服务器地址（<font color="#000080">某JSP网站的ip地址</font>）</font></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥"><br /><font face="宋体">worker.worker1.type=ajp13&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #</font></span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥"><font face="宋体">类型</font></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥"><br /><font face="宋体">worker.worker1.lbfactor=1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #</font></span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥"><font face="宋体">负载平衡因数<br /><br />（3）、在<font size="2">D:\profiles\Tomcat 5.0\conf下创建如下的uriworkermap.properties文件：<br /><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">/*.jsp=worker1<br />/testd/*=worker1&nbsp;&nbsp; //</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">对应自己的</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">TOMCAT </span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">应用<br /><br />（4）、<span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">修改注册表</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">:</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">创建</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi<span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">Redirector\1.0</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">项</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">;</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">在</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">1.0</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">项下建立如下字符串</span></font><font face="宋体, MS Song"><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">:<br /><br /></span></font></span></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">extension_uri&nbsp;&nbsp;&nbsp; /jakarta/isapi_redirect-<st1:chsdate w:st="on" year="1899" month="12" day="30" islunardate="False" isrocdate="False">1.2.9</st1:chsdate>.dll&nbsp;&nbsp;&nbsp;&nbsp; jakarta</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">为</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">IIS</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">下的虚拟目录<br /></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">log_file&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font size="2">D:\profiles\Tomcat 5.0\</font>logs\isapi.log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">指定</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">JK</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">插件使用的日志文件<br /></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">log_level&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;debug&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">指定日志级别<br /></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">worker_file&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font size="2">D:\profiles\Tomcat 5.0\</font>conf\workers.properties&nbsp;&nbsp;&nbsp; </span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">指定</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">JK</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">插件的工作文件<br /></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">worker_mount_file&nbsp;&nbsp;&nbsp;<font size="2">D:\profiles\Tomcat 5.0\</font>conf\uriworkermap.properties&nbsp;&nbsp; </span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">指定</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">JK</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">插件的</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">URL</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">映射<br /></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥"><!--?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /--><o:p></o:p></span><br />（5）、<span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">在</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">IIS</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">中创建虚拟目录（或在某jsp站点中创建）</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">,</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">名为</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">"jakarta",</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">路径为</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">isapi_redirect-<st1:chsdate w:st="on" year="1899" month="12" day="30" islunardate="False" isrocdate="False">1.2.9</st1:chsdate>.dll</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">所在的路径</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">,</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">修改</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">jakarta</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">虚拟目录的</span></font></font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">属性</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">.</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">将其执行权限改为</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">"</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">脚本和可执行程序</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">"，（<font color="#000080">IP地址最好为全部未分配，然后可以有主机头名</font>）<br /></font></span><br />（6）、<font face="宋体"><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">将</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">JK</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">插件加入</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">IIS</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">的筛选中去</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">..</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">在默认网站上右键</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">----&gt;</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">属性</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">----&gt;ISAPI</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">筛选里添加一个名为</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">"jakarta"</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">的筛选</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">,</span><span style="font-size: 9.5pt; line-height: 160%; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">文件为</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 160%; font-family: ˎ̥">isapi_redirect-<st1:chsdate w:st="on" year="1899" month="12" day="30" islunardate="False" isrocdate="False">1.2.9</st1:chsdate>.dll.<br /><o:p></o:p></span></font><br />（7）、重启IIS和TOMCAT,<span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">查看下刚才加入的筛选是否有一个绿色向上的箭头</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">,</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">如果有</span><span lang="EN-US" style="font-size: 9.5pt; font-family: ˎ̥; mso-fareast-font-family: 宋体; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><font face="宋体, MS Song">,</font></span><span style="font-size: 9.5pt; font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">那就说明配置成功了一半了.打开IE,在地址栏中输入HTTP：//localhost/index.jsp,(localhost<strong>或为主机头名</strong>)，将会看到首页。如果TOMCAT中已经有了某个测试项目，还可以用某测试项目来访问。</span><br /></span><br /></font><img src ="http://www.blogjava.net/kelly/aggbug/10707.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2005-08-22 17:22 <a href="http://www.blogjava.net/kelly/archive/2005/08/22/10707.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何配置Tomcat，以及Tomcat和IIS的配置</title><link>http://www.blogjava.net/kelly/archive/2005/08/22/10702.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Mon, 22 Aug 2005 08:43:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2005/08/22/10702.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/10702.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2005/08/22/10702.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/10702.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/10702.html</trackback:ping><description><![CDATA[<p><font size="2">1、首先要先下载JDK和Tomcat，我使用的版本是JDK_1_4_2_08和Tomcat5.0.16.下载网址请自己网上搜。<br />下面先安装JDK,然后再安装Tomcat。安装完成以后就要添加环境变量了。<br />右击我的电脑－&gt;属性－&gt;高级－&gt;环境变量，在系统变量中新建或编辑环境变量<br /><br />需要添加的环境变量如下：<br />（1）、JAVA_HOME(JDK运行使用，JDK是java开发工具包，它是java程序的运行环境)<br />&nbsp;&nbsp;&nbsp;JAVA_HOME=D:\profiles\JDK-1_4_2(JDK的安装路径)<br /><br />（2）、TOMCAT_HOME<br />&nbsp;&nbsp;&nbsp;TOMCAT_HOME=D:\TOMCAT5.0（TOMCAT的安装路径）<br /><br />（3）、ClassPath（类路径）<br />&nbsp;&nbsp;&nbsp;CLASSPATH=D:\profiles\JDK-1_4_2\lib\tools.jar;D:\profiles\JDK-1_4_2\lib\dt.jar;<br />&nbsp;&nbsp;&nbsp;(dt.jar是关于运行环境的类库，tools.jar是关于一些工具的类库)<br /><br />(4)、PATH(用于可以执行一些java命令，如javac。)<br />PATH=D:\profiles\JDK-1_4_2\bin<br /><br />这样TOMCAT就配置完成了。启动TOMCAT,在IE地址栏中输入<a href="http://localhost:8080">http://localhost:8080</a>,就可以看到TOMCAT首页面，这就表示TOMCAT配置成功了。<br /><br /><br /><br /><br /><br /><br /><br /></font></p><img src ="http://www.blogjava.net/kelly/aggbug/10702.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2005-08-22 16:43 <a href="http://www.blogjava.net/kelly/archive/2005/08/22/10702.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在Eclipse中使用JUnit进行单元测试</title><link>http://www.blogjava.net/kelly/archive/2005/06/03/5532.html</link><dc:creator>kelly</dc:creator><author>kelly</author><pubDate>Fri, 03 Jun 2005 07:53:00 GMT</pubDate><guid>http://www.blogjava.net/kelly/archive/2005/06/03/5532.html</guid><wfw:comment>http://www.blogjava.net/kelly/comments/5532.html</wfw:comment><comments>http://www.blogjava.net/kelly/archive/2005/06/03/5532.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/kelly/comments/commentRss/5532.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelly/services/trackbacks/5532.html</trackback:ping><description><![CDATA[&nbsp;<font size="1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;</font><font size="2">junit<span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是</span><span lang="EN-US"><font face="Times New Roman">java</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中书写</span><span lang="EN-US"><font face="Times New Roman">unit test</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span><span lang="EN-US"><font face="Times New Roman">framework</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，目前一些流行的</span><span lang="EN-US"><font face="Times New Roman">unit test</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">工具大都都是在</span><span lang="EN-US"><font face="Times New Roman">junit</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">上扩展而来的。目前它的版本是</span><span lang="EN-US"><font face="Times New Roman">junit3.8.1</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，可以从</span><span lang="EN-US"><a href="http://www.junit.org/"><font face="Times New Roman">www.junit.org</font></a></span></font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><font size="2">上下载。<br /><font face="Times New Roman">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StrtusTest</font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是</span><span lang="EN-US"><font face="Times New Roman">junit</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的扩展</span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">当前的版本是</span><span lang="EN-US"><font face="Times New Roman">StrutsTest2.1.0</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，在这个版本中不支持</span><span lang="EN-US"><font face="Times New Roman">Struts1.0</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。如果需要测试</span><span lang="EN-US"><font face="Times New Roman">struts1.0</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的应用程序，对应的版本是</span><span lang="EN-US"><font face="Times New Roman">StrutsTest2.0</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。可以从</span><span lang="EN-US"><a href="http://sourceforge.net/projects/strutstestcase/"><font face="Times New Roman">http://sourceforge.net/projects/strutstestcase/</font></a></span></font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><font size="2">下载。<br />&nbsp;&nbsp;&nbsp; 下面介绍一下它的使用。直接把解压的下载文件保存到项目的classpath中，然后再引入这两个jar文件，就可以使用了。<br />&nbsp;&nbsp;&nbsp; 右击项目中任何一个文件夹，选择news的others，这时就会出现Junit的文件夹，展开文件夹选择JUnit Test Case ，点击下一步，在Name中填写测试程序的名字，一般名字必须以Test结尾。然后构选setup()和teardown()选项，选择需要测试的Action，点击下一步，选择需要测试的方法，点击Finish即可自动生成测试文件。测试文件中自动生成了setup()和teardown()方法，用来在测试方法执行前初始化测试环境和在执行后撤销测试环境。测试方法都是以test开头的，如(testDoExecute()).<br />&nbsp;&nbsp;&nbsp;&nbsp; 下面在测试方法中就可以填写自己需要的东西了。如下面的例子：<br /></font><div style="border-right: windowtext 0.5pt solid; padding-right: 5.4pt; border-top: windowtext 0.5pt solid; padding-left: 5.4pt; background: #e6e6e6; padding-bottom: 4px; border-left: windowtext 0.5pt solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: windowtext 0.5pt solid"><div><font size="2"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></font><font size="2"><span style="color: #000000">package&nbsp;com.ezcross.SMS.common.struts.action;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />import&nbsp;servletunit.struts.MockStrutsTestCase;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br /></span><span id="Codehighlighter1_94_169_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">/**/</span></font><span id="Codehighlighter1_94_169_Open_Text"><span style="color: #008000"><font size="2">/*</font></span><font size="2"><span style="color: #008000">*<br />&nbsp;*&nbsp;@author&nbsp;paul.ping(wp.huang@ezcross.com)<br />&nbsp;*<br />&nbsp;*&nbsp;类名：SMS10Test<br />&nbsp;*&nbsp;操作：<br />&nbsp;</span><span style="color: #008000">*/</span></font></span><span style="color: #000000"><br /></span><font size="2"><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;LoginActionTest&nbsp;extends&nbsp;MockStrutsTestCase&nbsp;</span><span id="Codehighlighter1_227_1048_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"  alt="" /></span></font><span id="Codehighlighter1_227_1048_Open_Text"><font size="2"><span style="color: #000000">{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_230_262_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">/**/</span></font><span id="Codehighlighter1_230_262_Open_Text"><span style="color: #008000"><font size="2">/*</font></span><span style="color: #008000"><br /><font size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@see&nbsp;TestCase#setUp()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font></span><span style="color: #008000"><font size="2">*/</font></span></span><span style="color: #000000"><br /><font size="2">&nbsp;&nbsp;&nbsp;&nbsp;</font></span><font size="2"><span style="color: #0000ff">protected</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;setUp()&nbsp;throws&nbsp;Exception&nbsp;</span><span id="Codehighlighter1_305_325_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"  alt="" /></span></font><span id="Codehighlighter1_305_325_Open_Text"><span style="color: #000000"><font size="2">{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super.setUp();<br />&nbsp;&nbsp;&nbsp;&nbsp;}</font></span></span><span style="color: #000000"><br /><br /><font size="2">&nbsp;&nbsp;&nbsp;&nbsp;</font></span><span id="Codehighlighter1_329_364_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"><font size="2">/**/</font></span><span id="Codehighlighter1_329_364_Open_Text"><span style="color: #008000"><font size="2">/*</font></span><span style="color: #008000"><br /><font size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@see&nbsp;TestCase#tearDown()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font></span><span style="color: #008000"><font size="2">*/</font></span></span><span style="color: #000000"><br /><font size="2">&nbsp;&nbsp;&nbsp;&nbsp;</font></span><font size="2"><span style="color: #0000ff">protected</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;tearDown()&nbsp;throws&nbsp;Exception&nbsp;</span><span id="Codehighlighter1_410_433_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"  alt="" /></span></font><span id="Codehighlighter1_410_433_Open_Text"><span style="color: #000000"><font size="2">{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super.tearDown();<br />&nbsp;&nbsp;&nbsp;&nbsp;}</font></span></span><span style="color: #000000"><br /><br /><font size="2">&nbsp;&nbsp;&nbsp;&nbsp;</font></span><font size="2"><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;testDoExecute()&nbsp;</span><span id="Codehighlighter1_465_1045_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"  alt="" /></span></font><span id="Codehighlighter1_465_1045_Open_Text"><font size="2"><span style="color: #000000">{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span></font><span style="color: #000000"><br /><font size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font></span><span id="Codehighlighter1_475_973_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"><font size="2"><img src="http://www.blogjava.net/images/dot.gif"  alt="" /></font></span><span id="Codehighlighter1_475_973_Open_Text"><font size="2"><span style="color: #000000">{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;addRequestParameter(</span><span style="color: #000000">"</span><span style="color: #000000">user_name</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">"</span><span style="color: #000000">cka</span><span style="color: #000000">"</span></font><font size="2"><span style="color: #000000">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;addRequestParameter(</span><span style="color: #000000">"</span><span style="color: #000000">passward</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">"</span><span style="color: #000000">111111</span><span style="color: #000000">"</span></font><font size="2"><span style="color: #000000">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setRequestPathInfo(</span><span style="color: #000000">"</span><span style="color: #000000">/login</span><span style="color: #000000">"</span></font><font size="2"><span style="color: #000000">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.</span><span style="color: #0000ff">out</span><span style="color: #000000">.println(</span><span style="color: #000000">"</span><span style="color: #000000">hava&nbsp;completed&nbsp;adding&nbsp;data</span><span style="color: #000000">"</span></font><font size="2"><span style="color: #000000">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;actionPerform();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.</span><span style="color: #0000ff">out</span><span style="color: #000000">.println(</span><span style="color: #000000">"</span><span style="color: #000000">begin&nbsp;verify</span><span style="color: #000000">"</span></font><font size="2"><span style="color: #000000">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;verifyForward(</span><span style="color: #000000">"</span><span style="color: #000000">dologin</span><span style="color: #000000">"</span></font><font size="2"><span style="color: #000000">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;verifyForwardPath(</span><span style="color: #000000">"</span><span style="color: #000000">/Login.jsp</span><span style="color: #000000">"</span></font><font size="2"><span style="color: #000000">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;verifyNoActionErrors();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.</span><span style="color: #0000ff">out</span><span style="color: #000000">.println(</span><span style="color: #000000">"</span><span style="color: #000000">end&nbsp;verify</span><span style="color: #000000">"</span></font><font size="2"><span style="color: #000000">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">assertNotNull(testObject.doExecute(null,null,null,null,null));</span></font><span style="color: #008000"><br /></span><span style="color: #000000"><font size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</font></span></span><span style="color: #000000"><br /><font size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font></span><span style="color: #0000ff"><font size="2">catch</font></span><font size="2"><span style="color: #000000">&nbsp;(Exception&nbsp;ee)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_1000_1042_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"  alt="" /></span></font><span id="Codehighlighter1_1000_1042_Open_Text"><font size="2"><span style="color: #000000">{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.</span><span style="color: #0000ff">out</span></font><span style="color: #000000"><font size="2">.println(ee.toString());<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</font></span></span><span style="color: #000000"><br /><font size="2">&nbsp;&nbsp;&nbsp;&nbsp;}</font></span></span><span style="color: #000000"><br /><br /><font size="2">}</font></span></span></div></div><br /><font size="2">填写完程序后，右击程序，选择run下的JUnit Test进行运行，如果没有错误的话则显示绿色 ，否则显示红色。<br /><br />对程序的说明：<br /><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">主要函数和作用：</span></font><p class="MsoNormal" style="margin: 0cm 0cm 0pt 39pt; text-indent: -18pt; mso-list: l0 level2 lfo1; tab-stops: list 39.0pt"><font size="2"><font face="Times New Roman"><span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">-<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span lang="EN-US">setContextDirectory</span></font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，设置</span><span lang="EN-US"><font face="Times New Roman">web</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">应用的根</span></font></p><p class="MsoNormal" style="margin: 0cm 0cm 0pt 39pt; text-indent: -18pt; mso-list: l0 level2 lfo1; tab-stops: list 39.0pt"><font size="2"><font face="Times New Roman"><span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">-<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span lang="EN-US">setRequestPathInfo</span></font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，设置</span><span lang="EN-US"><font face="Times New Roman">request</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的请求</span></font></p><p class="MsoNormal" style="margin: 0cm 0cm 0pt 39pt; text-indent: -18pt; mso-list: l0 level2 lfo1; tab-stops: list 39.0pt"><font size="2"><font face="Times New Roman"><span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">-<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span lang="EN-US">addRequestParameter</span></font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，将参数和对应的值加入</span><span lang="EN-US"><font face="Times New Roman">request</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中</span></font></p><p class="MsoNormal" style="margin: 0cm 0cm 0pt 39pt; text-indent: -18pt; mso-list: l0 level2 lfo1; tab-stops: list 39.0pt"><font size="2"><font face="Times New Roman"><span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">-<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span lang="EN-US">actionPerform</span></font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，执行这个请求</span></font></p><p class="MsoNormal" style="margin: 0cm 0cm 0pt 39pt; text-indent: -18pt; mso-list: l0 level2 lfo1; tab-stops: list 39.0pt"><font size="2"><font face="Times New Roman"><span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">-<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span lang="EN-US">verifyForward</span></font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，验证</span><span lang="EN-US"><font face="Times New Roman">forward</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的名字是否正确</span></font></p><p class="MsoNormal" style="margin: 0cm 0cm 0pt 39pt; text-indent: -18pt; mso-list: l0 level2 lfo1; tab-stops: list 39.0pt"><font size="2"><font face="Times New Roman"><span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">-<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span lang="EN-US">verifyForwardPath</span></font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，验证</span><span lang="EN-US"><font face="Times New Roman">forward</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span><span lang="EN-US"><font face="Times New Roman">path</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是否正确</span></font></p><p class="MsoNormal" style="margin: 0cm 0cm 0pt 39pt; text-indent: -18pt; mso-list: l0 level2 lfo1; tab-stops: list 39.0pt"><font size="2"><font face="Times New Roman"><span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">-<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span lang="EN-US">verifyNoActionErrors</span></font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，验证在</span><span lang="EN-US"><font face="Times New Roman">action</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">执行过程中没有</span><span lang="EN-US"><font face="Times New Roman">ActionError</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">产生</span></font></p><p class="MsoNormal" style="margin: 0cm 0cm 0pt 39pt; text-indent: -18pt; mso-list: l0 level2 lfo1; tab-stops: list 39.0pt"><font size="2"><font face="Times New Roman"><span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">-<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span lang="EN-US">verifyActionErrors</span></font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，验证在</span><span lang="EN-US"><font face="Times New Roman">action</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">执行过程中产生的</span><span lang="EN-US"><font face="Times New Roman">ActionError</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">集合的内容</span></font></p><p class="MsoNormal" style="margin: 0cm 0cm 0pt 21pt"><font size="2"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">具体详细的内容请参见对应的</span><span lang="EN-US"><font face="Times New Roman">javaDoc</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。</span></font></p><br /><br /></span><span lang="EN-US"><!--?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?--><o:p></o:p></span></span><img src ="http://www.blogjava.net/kelly/aggbug/5532.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelly/" target="_blank">kelly</a> 2005-06-03 15:53 <a href="http://www.blogjava.net/kelly/archive/2005/06/03/5532.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>