﻿<?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-yiraka</title><link>http://www.blogjava.net/13angel/</link><description>yiraka-java</description><language>zh-cn</language><lastBuildDate>Mon, 13 Apr 2026 09:00:56 GMT</lastBuildDate><pubDate>Mon, 13 Apr 2026 09:00:56 GMT</pubDate><ttl>60</ttl><item><title>转-解析Java中的String对象的数据类型</title><link>http://www.blogjava.net/13angel/archive/2007/06/09/123024.html</link><dc:creator>yiraka</dc:creator><author>yiraka</author><pubDate>Sat, 09 Jun 2007 07:15:00 GMT</pubDate><guid>http://www.blogjava.net/13angel/archive/2007/06/09/123024.html</guid><wfw:comment>http://www.blogjava.net/13angel/comments/123024.html</wfw:comment><comments>http://www.blogjava.net/13angel/archive/2007/06/09/123024.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/13angel/comments/commentRss/123024.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/13angel/services/trackbacks/123024.html</trackback:ping><description><![CDATA[1. 首先String不属于8种基本数据类型，String是一个对象。 <br><br>　　因为对象的默认值是null，所以String的默认值也是null；但它又是一种特殊的对象，有其它对象没有的一些特性。 <br><br>　　2. new String()和new String(&#8220;&#8221;)都是申明一个新的空字符串，是空串不是null； <br><br>　　3. String str=&#8221;kvill&#8221;； <br><br>　　　String str=new String (&#8220;kvill&#8221;);的区别： <br><br>　　在这里，我们不谈堆，也不谈栈，只先简单引入常量池这个简单的概念。 <br><br>　　常量池(constant pool)指的是在编译期被确定，并被保存在已编译的.class文件中的一些数据。它包括了关于类、方法、接口等中的常量，也包括字符串常量。 <br><br>　　看例1： <br><br>　　String s0=&#8221;kvill&#8221;; <br><br>　　String s1=&#8221;kvill&#8221;; <br><br>　　String s2=&#8221;kv&#8221; + &#8220;ill&#8221;; <br><br>　　System.out.println( s0==s1 ); <br><br>　　System.out.println( s0==s2 ); <br><br>　　结果为： <br><br>　　true <br><br>　　true <br><br>　　首先，我们要知结果为道Java会确保一个字符串常量只有一个拷贝。 <br><br>　　因为例子中的s0和s1中的&#8221;kvill&#8221;都是字符串常量，它们在编译期就被确定了，所以s0==s1为true；而&#8221;kv&#8221;和&#8221;ill&#8221;也都是字符串常量，当一个字符串由多个字符串常量连接而成时，它自己肯定也是字符串常量，所以s2也同样在编译期就被解析为一个字符串常量，所以s2也是常量池中&#8221;kvill&#8221;的一个引用。 <br><br>　　所以我们得出s0==s1==s2; <br><br>　　用new String() 创建的字符串不是常量，不能在编译期就确定，所以new String() 创建的字符串不放入常量池中，它们有自己的地址空间。 <br><br>　　看例2： <br><br>　　String s0=&#8221;kvill&#8221;; <br><br>　　String s1=new String(&#8221;kvill&#8221;); <br><br>　　String s2=&#8221;kv&#8221; + new String(&#8220;ill&#8221;); <br><br>　　System.out.println( s0==s1 ); <br><br>　　System.out.println( s0==s2 ); <br><br>　　System.out.println( s1==s2 ); <br><br>　　结果为： <br><br>　　false <br><br>　　false <br><br>　　false <br><br>　　例2中s0还是常量池中&#8221;kvill&#8221;的应用，s1因为无法在编译期确定，所以是运行时创建的新对象&#8221;kvill&#8221;的引用，s2因为有后半部分new String(&#8220;ill&#8221;)所以也无法在编译期确定，所以也是一个新创建对象&#8221;kvill&#8221;的应用;明白了这些也就知道为何得出此结果了。 <br><br>　　4. String.intern()： <br><br>　　再补充介绍一点：存在于.class文件中的常量池，在运行期被JVM装载，并且可以扩充。String的intern()方法就是扩充常量池的一个方法；当一个String实例str调用intern()方法时，Java查找常量池中是否有相同Unicode的字符串常量，如果有，则返回其的引用，如果没有，则在常量池中增加一个Unicode等于str的字符串并返回它的引用；看例3就清楚了 <br><br>　　例3： <br><br>　　String s0= &#8220;kvill&#8221;; <br><br>　　String s1=new String(&#8221;kvill&#8221;); <br>　　 <br>　 String s2=new String(&#8220;kvill&#8221;); <br><br>　　System.out.println( s0==s1 ); <br><br>　　System.out.println( &#8220;**********&#8221; ); <br><br>　　s1.intern(); <br><br>　　s2=s2.intern(); //把常量池中&#8220;kvill&#8221;的引用赋给s2 <br><br>　　System.out.println( s0==s1); <br><br>　　System.out.println( s0==s1.intern() ); <br><br>　　System.out.println( s0==s2 ); <br><br>　　结果为： <br><br>　　false <br><br>　　********** <br><br>　　false //虽然执行了s1.intern(),但它的返回值没有赋给s1 <br><br>　　true //说明s1.intern()返回的是常量池中&#8221;kvill&#8221;的引用 <br><br>　　true <br>　　 <br>　　最后我再破除一个错误的理解： <br><br>　　有人说，&#8220;使用String.intern()方法则可以将一个String类的保存到一个全局String表中，如果具有相同值的Unicode字符串已经在这个表中，那么该方法返回表中已有字符串的地址，如果在表中没有相同值的字符串，则将自己的地址注册到表中&#8220;如果我把他说的这个全局的String表理解为常量池的话，他的最后一句话，&#8220;如果在表中没有相同值的字符串，则将自己的地址注册到表中&#8221;是错的： <br><br>　　看例4： <br><br>　　String s1=new String("kvill"); <br><br>　　String s2=s1.intern(); <br><br>　　System.out.println( s1==s1.intern() ); <br><br>　　System.out.println( s1+" "+s2 ); <br><br>　　System.out.println( s2==s1.intern() ); <br><br>　　结果： <br><br>　　false <br><br>　　kvill kvill <br><br>　　true <br><br>　　在这个类中我们没有声名一个&#8221;kvill&#8221;常量，所以常量池中一开始是没有&#8221;kvill&#8221;的，当我们调用s1.intern()后就在常量池中新添加了一个&#8221;kvill&#8221;常量，原来的不在常量池中的&#8221;kvill&#8221;仍然存在，也就不是&#8220;将自己的地址注册到常量池中&#8221;了。 <br><br>　　s1==s1.intern()为false说明原来的&#8220;kvill&#8221;仍然存在； <br><br>　　s2现在为常量池中&#8220;kvill&#8221;的地址，所以有s2==s1.intern()为true。 <br><br>　　5. 关于equals()和==: <br><br>　　这个对于String简单来说就是比较两字符串的Unicode序列是否相当，如果相等返回true;而==是比较两字符串的地址是否相同，也就是是否是同一个字符串的引用。 <br><br>　　6. 关于String是不可变的 <br><br>　　这一说又要说很多，大家只要知道String的实例一旦生成就不会再改变了，比如说：String str=&#8221;kv&#8221;+&#8221;ill&#8221;+&#8221; &#8220;+&#8221;ans&#8221;; <br><br>　　就是有4个字符串常量，首先&#8221;kv&#8221;和&#8221;ill&#8221;生成了&#8221;kvill&#8221;存在内存中，然后&#8221;kvill&#8221;又和&#8221; &#8220; 生成 &#8221;kvill &#8220;存在内存中，最后又和生成了&#8221;kvill ans&#8221;;并把这个字符串的地址赋给了str,就是因为String的&#8220;不可变&#8221;产生了很多临时变量，这也就是为什么建议用StringBuffer的原因了，因为StringBuffer是可改变的
<img src ="http://www.blogjava.net/13angel/aggbug/123024.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/13angel/" target="_blank">yiraka</a> 2007-06-09 15:15 <a href="http://www.blogjava.net/13angel/archive/2007/06/09/123024.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>转--HTML4.0</title><link>http://www.blogjava.net/13angel/archive/2007/06/08/122764.html</link><dc:creator>yiraka</dc:creator><author>yiraka</author><pubDate>Fri, 08 Jun 2007 01:21:00 GMT</pubDate><guid>http://www.blogjava.net/13angel/archive/2007/06/08/122764.html</guid><wfw:comment>http://www.blogjava.net/13angel/comments/122764.html</wfw:comment><comments>http://www.blogjava.net/13angel/archive/2007/06/08/122764.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/13angel/comments/commentRss/122764.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/13angel/services/trackbacks/122764.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: HTML 4.0 语 法 教 学                                                                                        &nbsp;                                                ■ 认识HTML语法 (标签快速导览)         ...&nbsp;&nbsp;<a href='http://www.blogjava.net/13angel/archive/2007/06/08/122764.html'>阅读全文</a><img src ="http://www.blogjava.net/13angel/aggbug/122764.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/13angel/" target="_blank">yiraka</a> 2007-06-08 09:21 <a href="http://www.blogjava.net/13angel/archive/2007/06/08/122764.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在公司的电脑上面完成TOMCAT的配置</title><link>http://www.blogjava.net/13angel/archive/2007/06/07/122557.html</link><dc:creator>yiraka</dc:creator><author>yiraka</author><pubDate>Thu, 07 Jun 2007 04:32:00 GMT</pubDate><guid>http://www.blogjava.net/13angel/archive/2007/06/07/122557.html</guid><wfw:comment>http://www.blogjava.net/13angel/comments/122557.html</wfw:comment><comments>http://www.blogjava.net/13angel/archive/2007/06/07/122557.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/13angel/comments/commentRss/122557.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/13angel/services/trackbacks/122557.html</trackback:ping><description><![CDATA[13:22:02<br>配置完了公司自己电脑的配置.<br>虚拟目录主要是<br>&lt;Context&nbsp;&nbsp; path="/web"&nbsp;&nbsp; docBase="c:\web"&nbsp;&nbsp; reloadable="true"&nbsp;&nbsp; debug="0"&gt;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/Context&gt; <br>修改端口到80<br><br>测试 servlet&nbsp; javabean&nbsp; jsp&nbsp; ...
<img src ="http://www.blogjava.net/13angel/aggbug/122557.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/13angel/" target="_blank">yiraka</a> 2007-06-07 12:32 <a href="http://www.blogjava.net/13angel/archive/2007/06/07/122557.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>(转)Tomcat---server.xml;web.xml</title><link>http://www.blogjava.net/13angel/archive/2007/06/07/122496.html</link><dc:creator>yiraka</dc:creator><author>yiraka</author><pubDate>Thu, 07 Jun 2007 01:23:00 GMT</pubDate><guid>http://www.blogjava.net/13angel/archive/2007/06/07/122496.html</guid><wfw:comment>http://www.blogjava.net/13angel/comments/122496.html</wfw:comment><comments>http://www.blogjava.net/13angel/archive/2007/06/07/122496.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/13angel/comments/commentRss/122496.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/13angel/services/trackbacks/122496.html</trackback:ping><description><![CDATA[转:http://blog.csdn.net/arielxp/archive/2005/03/15/319597.aspx<br><br>关于Tomcat Administration　<br><br>TOOL左界面<br>　　　　 Name: ok.aaa.com [localhost] <br>Application Base: webapps //相对于TOMCAT_HOME <br>Host (ok.aaa.com[localhost]) <br>Context (/)　　　　 //ROOT物理目录　<br>　　　　　　　　　　//但作为DOCBASE来说为虚拟目录（相对于Application Base）<br>　　　　　　　　　　//它是url://ok.aaa.com [localhost] 虚拟（别名）根目录，这是和APACHE不一样的地方！<br>　　　　　　　　　　//Application Base才是实实在在的url://ok.aaa.com [localhost]根目录　，<br>　　　　　　　　　　//启动时系统会自动生成（通过测试ROOT下的WEB－INF、WEB.XML）<br>Context (/admin)　 //系统默认(删除对应的admin.xml其不能自动还原）<br>Context (/balancer)　//原理同上Context (/admin)<br>Context (/jsp-examples) 　//相对于Application Base，启动时系统会自动生成。<br>Context (/manager)　　　 //原理同上Context (/admin)作<br>Context (/servlets-examples) 　　//物理目录，相对于Application Base，启动时系统会自动生成。<br>Context (/tomcat-docs)　　 //物理目录，相对于Application Base，启动时系统会自动生成。<br>Context (/webdav) 　　　//物理目录，相对于Application Base，启动时系统会自动生成。<br><br>原理：TOMCAT启动时会搜索HOST的APPBASE下的物理目录，物理目录有WEB－INF、WEB.XML信息则载入到TOOL界面，无时不载入，不过不载入的物理目录当然还是可以通过URL来访问;虚拟目录（alias）对应的xml文件存在则能载入，无时（相应的XML被删除）不载入，通过URL不可访。但是ROOT就不一样了，把ROOT.XML删了后，它也能被载入，因为它有双重性。每个目录只要都被正常载入，相应在TOMCAT_HOME\Catalina\ok.aaa.com [localhost] \生成其同名的XML，这个名称可以被更改，不过最好用可示性较强的文字来命名。<br><br>关于SERVER.XML<br>- &lt;Service name="Catalina"&gt;<br>&lt;Connector acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" port="80" redirectPort="8443" /&gt; //url端口为80，默认是8080<br>&lt;Connector port="8009" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8443" /&gt; <br>- &lt;Engine defaultHost="aaa.com" name="Catalina"&gt;//这里是指默认主机，也就是通过IP、localhost来访问的主机<br>- &lt;Host appBase="webapps" name="ok.aaa.com"&gt;//虚拟主机ok.aaa.com<br>&lt;Alias&gt;ok.bbb.com&lt;/Alias&gt;//虚拟主机ok.aaa.com的别名和实实在在的url://ok.aaa.com [localhost]根目录webapps<br>&lt;Alias&gt;yes.aaa.com&lt;/Alias&gt; //同上<br>&lt;Alias&gt;yes.bbb.com&lt;/Alias&gt; //同上<br>&lt;Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true" /&gt; <br>&lt;/Host&gt;<br>- &lt;Host appBase="f://myweb" name="aaa.com"&gt;//虚拟主机aaa.com和实实在在的url://aaa.com [localhost]根目录f://myweb<br>&lt;Alias&gt;bbb.com&lt;/Alias&gt;//虚拟主机aaa.com的别名<br>&lt;Alias&gt;www.bbb.com&lt;/Alias&gt; //同上<br>&lt;Alias&gt;www.aaa.com&lt;/Alias&gt; //同上<br>&lt;Logger className="org.apache.catalina.logger.FileLogger" prefix="aaa.com_log." suffix="txt" timestamp="true" /&gt; <br><br>&lt;Context displayName="freeweb描述" docBase="d://freeweb" path="abc" useNaming="false" /&gt; //别名abc指向物理目录d://freeweb<br>&lt;/Host&gt;<br>&lt;Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true" /&gt; <br>&lt;Realm className="org.apache.catalina.realm.UserDatabaseRealm" /&gt; <br>&lt;/Engine&gt;<br>&lt;/Service&gt;<br>&lt;/Server&gt;<br><br>注意：这里&lt;Context displayName="freeweb描述" docBase="d://freeweb" path="abc" useNaming="false" /&gt; //别名abc指向物理目录d://freeweb　在添加之后，要重启TOMCAT，这时会在TOMCAT_HOME/conf/Catalina/aaa.com/下生成一个abc.xml.其内容就是：<br><br>&lt;?xml version="1.0" encoding="utf-8" ?&gt;<br><br>&lt;Context displayName="freeweb描述" docBase="d://freeweb" path="abc" useNaming="false" /&gt;<br><br>这之后，再入Tomcat Administration　TOOL　COMMIT　CHANGE　一下　,SERVER.XML 里那句&lt;Context~~~~~~~~~~~ /&gt;就没了。呵　。。<br><br>最后我要说的是，当进行备份时，一定不要仅把SERVER.XML　WEB.XML .....这些文件备下来（和APACHE不一样），备就备整个conf目录！！！我之前就是以为在SERVER.XML写了CONTEXT就可行了，目录的事全交给SERVER.XML来管。可是这样是非常错误的想法。SERVER.XML是不保留CONTEXT的，它只是把你加入Context生成文件，之后删除你在它里面添的语句。它只有生成功能，没有对其的直接管理功能，功能都给相应的alias的XML文件了！<br>
<img src ="http://www.blogjava.net/13angel/aggbug/122496.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/13angel/" target="_blank">yiraka</a> 2007-06-07 09:23 <a href="http://www.blogjava.net/13angel/archive/2007/06/07/122496.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>(转)Tomcat配置管理文章</title><link>http://www.blogjava.net/13angel/archive/2007/06/07/122494.html</link><dc:creator>yiraka</dc:creator><author>yiraka</author><pubDate>Thu, 07 Jun 2007 01:20:00 GMT</pubDate><guid>http://www.blogjava.net/13angel/archive/2007/06/07/122494.html</guid><wfw:comment>http://www.blogjava.net/13angel/comments/122494.html</wfw:comment><comments>http://www.blogjava.net/13angel/archive/2007/06/07/122494.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/13angel/comments/commentRss/122494.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/13angel/services/trackbacks/122494.html</trackback:ping><description><![CDATA[(转)Tomcat配置管理文章<br>
<div>1.下载：</div>
<div><a href="http://www.eu.apache.org/dist/jakarta/tomcat-5/"><font color=#000080><u>http://www.eu.apache.org/dist/jakarta/tomcat-5/</u></font></a></div>
<div><a href="http://www.apache.org/dist/jakarta/tomcat-5/v5.5.x/bin/jakarta-tomcat-5.5.x-admin.zip"><font color=#000080><u>http://www.apache.org/dist/jakarta/tomcat-5/v5.5.x/bin/jakarta-tomcat-5.5.x-admin.zip</u></font></a><br><a href="http://www.apache.org/dist/jakarta/tomcat-5/v5.5.x/bin/jakarta-tomcat-5.5.x-compat.zip"><font color=#000080><u>http://www.apache.org/dist/jakarta/tomcat-5/v5.5.x/bin/jakarta-tomcat-5.5.x-compat.zip</u></font></a><br><a href="http://www.apache.org/dist/jakarta/tomcat-5/v5.5.x/bin/jakarta-tomcat-5.5.x.zip"><font color=#000080><u>http://www.apache.org/dist/jakarta/tomcat-5/v5.5.x/bin/jakarta-tomcat-5.5.x.zip</u></font></a></div>
<div><a href="http://www.apache.org/dist/jakarta/tomcat-5/v5.5.x/bin/jakarta-tomcat-5.5.x-deployer.zip"><font color=#000080><u>http://www.apache.org/dist/jakarta/tomcat-5/v5.5.x/bin/jakarta-tomcat-5.5.x-deployer.zip</u></font></a></div>
<div>把<u><font color=#0000ff>jakarta-tomcat-5.5.x.zip</font></u></div>
<div>和<u><font color=#0000ff>jakarta-tomcat-5.5.x-compat.zip</font></u></div>
<div>和<u><font color=#800080>jakarta-tomcat-5.5.x-admin.zip</font></u><br>(Tomcat 默认是没有内置admin模块了</div>
<div>Tomcat's administration web application is no longer installed by default. Download and install the "admin" package to use it. )</div>
<div>都解压到同一个目录下面。比如：D:\jakarta-tomcat-5.5.x\</div>
<div>(如果使用jdk1.4，才需要<u><font color=#0000ff>compat.zip</font></u>用jdk1.5就可以免了这个。) </div>
<div>&nbsp;</div>
<div>2.修改jakarta-tomcat-5.5.x\conf\tomcat-users.xml.<br>添加管理员账号lizongbo，密码为lizongbopass.<br>新xml如下：<br>&lt;?xml version='1.0' encoding='utf-8'?&gt;<br>&lt;tomcat-users&gt;<br>&nbsp; &lt;role rolename="tomcat"/&gt;<br>&nbsp; &lt;role rolename="role1"/&gt;<br>&nbsp; &lt;role rolename="manager"/&gt;<br>&nbsp; &lt;role rolename="admin"/&gt;<br>&nbsp; &lt;user username="tomcat" password="tomcat" roles="tomcat"/&gt;<br>&nbsp; &lt;user username="role1" password="tomcat" roles="role1"/&gt;<br>&nbsp; &lt;user username="both" password="tomcat" roles="tomcat,role1"/&gt;<br>&nbsp; &lt;user username="lizongbo" password="lizongbopass" roles="admin,manager"/&gt;<br>&lt;/tomcat-users&gt;</div>
<div>&nbsp;</div>
<div>3.修改jakarta-tomcat-5.5.x\conf\server.xml来解决编码问题。<br>(给Connector&nbsp;添加URIEncoding参数，参考<a href="http://blog.csdn.net/darkxie/archive/2004/10/25/TOMCATAPP.aspx"><font color=#000080><u>http://blog.csdn.net/darkxie/archive/2004/10/25/TOMCATAPP.aspx</u></font></a>)</div>
<div>(可以设置成GB18030)<br>&nbsp;&nbsp;&nbsp; &lt;Connector port="8080"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; maxThreads="150" minSpareThreads="25" maxSpareThreads="75"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enableLookups="false" redirectPort="8443" acceptCount="200"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; compression="on" compressionMinSize="2048" <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; noCompressionUserAgents="gozilla, traviata" <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; compressableMimeType="text/html,text/xml"/&gt;</div>
<div>&nbsp;</div>
<div>&nbsp;&nbsp;&nbsp; &lt;Connector port="8009" <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enableLookups="false" redirectPort="8443" protocol="AJP/1.3" URIEncoding="GBK"/&gt;</div>
<div>&nbsp;</div>
<div><br>4.启用支持gzip压缩.<br>(<a href="http://www.linuxaid.com.cn/forum/showdoc.jsp?l=1&amp;i=81169"><font color=#000080><u>http://www.linuxaid.com.cn/forum/showdoc.jsp?l=1&amp;i=81169</u></font></a>)<br>添加下列属性<br>&nbsp;compression="on" <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; compressionMinSize="2048" <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; noCompressionUserAgents="gozilla, traviata" <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; compressableMimeType="text/html,text/xml"</div>
<div>&nbsp;</div>
<div>5.设置虚拟主机。</div>
<div>在jakarta-tomcat-5.5.x\下建立文件夹vhost\www.mydomain.com。</div>
<div>然后修改jakarta-tomcat-5.5.x\conf\server.xml</div>
<div>&nbsp;</div>
<div>&lt;Engine defaultHost="localhost" name="Catalina"&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Host appBase="vhost/www.mydomain.com" name="<a href="http://www.mydomain.com/"><font color=#000080><u>www.mydomain.com</u></font></a>"&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/Host&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Host appBase="webapps" name="localhost"&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/Host&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Realm className="org.apache.catalina.realm.UserDatabaseRealm"/&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/Engine&gt;</div>
<div>&nbsp;</div>
<div>6.添加数据库驱动,更新mail.jar和actiovation.jar</div>
<div>复制mysql-connector-java-3.0.16-ga-bin.jar,pg74.215.jdbc3.jar到 jakarta-tomcat-5.5.x\common\lib\</div>
<div>还有javamail 1.3.2的mail.jar，jaf-1_0_2的 activation.jar</div>
<div>msSQl 2000 JDBC sp3，msbase.jar,msutil,jar,mssqlserver.jar</div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div>7.配置SSL</div>
<div>参考 <a href="http://jakarta.apache.org/tomcat/tomcat-5.5-doc/ssl-howto.html"><font color=#000080><u>http://jakarta.apache.org/tomcat/tomcat-5.5-doc/ssl-howto.html</u></font></a></div>
<div>D:\j2sdk1.4.2_06\bin&gt;%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA<br>输入keystore密码：&nbsp; lizongbossl<br>您的名字与姓氏是什么？<br>&nbsp; [tomcat5.5.x]：&nbsp; tomcat5.5.x<br>您的组织单位名称是什么？<br>&nbsp; [jakarta]：&nbsp; jakarta<br>您的组织名称是什么？<br>&nbsp; [apache]：&nbsp; apache<br>您所在的城市或区域名称是什么？<br>&nbsp; [hzcity]：&nbsp; hzcity<br>您所在的州或省份名称是什么？<br>&nbsp; [gdp]：&nbsp; gdp<br>该单位的两字母国家代码是什么<br>&nbsp; [CN]：&nbsp; CN<br>CN=tomcat5.5.x, OU=jakarta, O=apache, L=hzcity, ST=gdp, C=CN 正确吗？<br>&nbsp; [否]：&nbsp; y</div>
<div>&nbsp;</div>
<div>输入&lt;tomcat&gt;的主密码<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; （如果和 keystore 密码相同，按回车）：<br></div>
<div>(必须密码一致，因此直接回车)</div>
<div>然后再把userhome(例如：C:\Documents and Settings\lizongbo\)下的.keystore复制到</div>
<div>tomcat的conf\目录下。</div>
<div>&nbsp;(例如：D:\jakarta-tomcat-5.5.x\conf\.keystore )</div>
<div>配置jakarta-tomcat-5.5.x\conf\server.xml</div>
<div>加上</div>
<div>&nbsp;&nbsp;&nbsp; &lt;Connector port="8443" <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; maxThreads="150" minSpareThreads="25" maxSpareThreads="75"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enableLookups="false" disableUploadTimeout="true"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; acceptCount="100" scheme="https" secure="true"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; clientAuth="false" sslProtocol="TLS" <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; keystoreFile="conf/.keystore" <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; keystorePass="lizongbossl"&gt; &lt;!--与先前设置的密码一致--&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/Connector&gt;</div>
<div>8.禁止文件目录列表，</div>
<div>修改jakarta-tomcat-5.5.x\conf\web.xml，把listing设置为false</div>
<div>&nbsp;</div>
<div>&nbsp;&nbsp;&nbsp; &lt;servlet&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;servlet-name&gt;default&lt;/servlet-name&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;servlet-class&gt;org.apache.catalina.servlets.DefaultServlet&lt;/servlet-class&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;init-param&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param-name&gt;debug&lt;/param-name&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param-value&gt;0&lt;/param-value&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/init-param&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;init-param&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param-name&gt;listings&lt;/param-name&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param-value&gt;true&lt;/param-value&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/init-param&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;load-on-startup&gt;1&lt;/load-on-startup&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/servlet&gt;</div>
<div>&nbsp;</div>
<div>&nbsp;9.指定了自己的javaEncoding</div>
<div>(参考 <a href="http://gceclub.sun.com.cn/staticcontent/html/sunone/app7/app7-dg-webapp/ch6/ch6-4.html"><font color=#000080><u>http://gceclub.sun.com.cn/staticcontent/html/sunone/app7/app7-dg-webapp/ch6/ch6-4.html</u></font></a>&nbsp;)</div>
<div><br>&nbsp;&nbsp;&nbsp; &lt;servlet&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;servlet-name&gt;jsp&lt;/servlet-name&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;servlet-class&gt;org.apache.jasper.servlet.JspServlet&lt;/servlet-class&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;init-param&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param-name&gt;fork&lt;/param-name&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param-value&gt;false&lt;/param-value&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/init-param&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;init-param&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param-name&gt;javaEncoding&lt;/param-name&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param-value&gt;GB18030&lt;/param-value&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/init-param&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;init-param&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param-name&gt;xpoweredBy&lt;/param-name&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param-value&gt;true&lt;/param-value&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/init-param&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;load-on-startup&gt;3&lt;/load-on-startup&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/servlet&gt;</div>
<div>&nbsp;10.添加rar,iso等的mime-type映射 </div>
<div>避免在浏览器里直接打开。</div>
<div>&lt;mime-mapping&gt;<br>&lt;extension&gt;mht&lt;/extension&gt;<br>&lt;mime-type&gt;text/x-mht&lt;/mime-type&gt;<br>&lt;/mime-mapping&gt;</div>
<div>&lt;mime-mapping&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;extension&gt;rar&lt;/extension&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;mime-type&gt;application/octet-stream&lt;/mime-type&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/mime-mapping&gt;<br>&nbsp;&nbsp;&nbsp; &lt;mime-mapping&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;extension&gt;iso&lt;/extension&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;mime-type&gt;application/octet-stream&lt;/mime-type&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/mime-mapping&gt;<br>&nbsp;&nbsp;&nbsp; &lt;mime-mapping&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;extension&gt;ape&lt;/extension&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;mime-type&gt;application/octet-stream&lt;/mime-type&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/mime-mapping&gt;<br>&nbsp;&nbsp;&nbsp; &lt;mime-mapping&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;extension&gt;rmvb&lt;/extension&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;mime-type&gt;application/octet-stream&lt;/mime-type&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/mime-mapping&gt;</div>
<div>&nbsp;&nbsp;&nbsp; &lt;mime-mapping&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;extension&gt;ico&lt;/extension&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;mime-type&gt;image/x-icon&lt;/mime-type&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/mime-mapping&gt;</div>
<div>10.1对html静态页面设置编码</div>
<div><font color=#0000ff>&lt;!--&nbsp;&nbsp;修改下面两行以支持静态超文本的自动编码&nbsp;<br>&nbsp;&nbsp;--&gt;</font>&nbsp;<br>&nbsp;<font color=#0000ff>&lt;mime-mapping&gt;</font><br>&nbsp;&nbsp;<font color=#0000ff>&lt;extension&gt;</font>htm<font color=#0000ff>&lt;/extension&gt;</font>&nbsp;<br>&nbsp;&nbsp;<font color=#0000ff>&lt;mime-type&gt;</font>text/html;charset=gb<font color=#ff0000>2312</font><font color=#0000ff>&lt;/mime-type&gt;</font>&nbsp;<br>&nbsp;&nbsp;<font color=#0000ff>&lt;/mime-mapping&gt;</font><br>&nbsp;<font color=#0000ff>&lt;mime-mapping&gt;</font><br>&nbsp;&nbsp;<font color=#0000ff>&lt;extension&gt;</font>html<font color=#0000ff>&lt;/extension&gt;</font>&nbsp;<br>&nbsp;&nbsp;<font color=#0000ff>&lt;mime-type&gt;</font>text/html;charset=gb<font color=#ff0000>2312</font><font color=#0000ff>&lt;/mime-type&gt;</font>&nbsp;<br>&nbsp;&nbsp;<font color=#0000ff>&lt;/mime-mapping&gt;</font><br>&nbsp;&nbsp;<font color=#0000ff>&lt;/web-app&gt;</font></div>
<div>&nbsp;</div>
<div>11.添加welcome-file-list，并调整顺序。</div>
<div>&nbsp;&lt;welcome-file-list&gt;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;welcome-file&gt;index.jsp&lt;/welcome-file&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;welcome-file&gt;index.html&lt;/welcome-file&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;welcome-file&gt;index.htm&lt;/welcome-file&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;welcome-file&gt;default.html&lt;/welcome-file&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;welcome-file&gt;default.htm&lt;/welcome-file&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;welcome-file&gt;default.jsp&lt;/welcome-file&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/welcome-file-list&gt;<br>
<div>
<div>12.如果你的webapp需要只能够进行https方式访问，那么在webapp的web.xml里加上：</div>
<div>&nbsp;&lt;security-constraint&gt;<br>&nbsp;&nbsp;&lt;web-resource-collection&gt;<br>&nbsp;&nbsp;&nbsp;&lt;web-resource-name&gt;must https&lt;/web-resource-name&gt;<br>&nbsp;&nbsp;&nbsp;&lt;url-pattern&gt;/lizongbo/*&lt;/url-pattern&gt;<br>&nbsp;&nbsp;&lt;/web-resource-collection&gt;<br>&nbsp;&nbsp;&lt;user-data-constraint&gt;<br>&nbsp;&nbsp;&nbsp;&lt;transport-guarantee&gt;CONFIDENTIAL&lt;/transport-guarantee&gt;<br>&nbsp;&nbsp;&lt;/user-data-constraint&gt;<br>&nbsp;&lt;/security-constraint&gt;</div>
<div>参考：<a href="http://jakarta.apache.org/tomcat/faq/security.html#https"><u><font color=#0000ff>http://jakarta.apache.org/tomcat/faq/security.html#https</font></u></a></div>
<div><a href="http://marc.theaimsgroup.com/?l=tomcat-user&amp;m=104951559722619&amp;w=2"><u><font color=#0000ff>http://marc.theaimsgroup.com/?l=tomcat-user&amp;m=104951559722619&amp;w=2</font></u></a></div>
<div><u><font color=#0000ff></font></u></div>
</div>
<div>13.修改远程关闭服务器的命令。</div>
<div>server.xml默认有下面一行：</div>
<div>&lt;Server port="8005" shutdown="SHUTDOWN"&gt;</div>
<div>这样允许任何人只要telnet到服务器的8005端口，输入"SHUTDOWN"，然后回车，服务器立即就被关掉了。</div>
<div>从安全的角度上考虑，我们需要把这个shutdown指令改成一个别人不容易猜测的字符串。</div>
<div>例如修改如下：</div>
<div>&lt;Server port="8006" shutdown="lizongbo"&gt;，这样就只有在telnet到8006，并且输入"lizongbo"才能够关闭Tomcat.</div>
<div>注意：这个修改不影响shutdown.bat的执行。运行shutdown.bat一样可以关闭服务器。</div>
<div>参考：<a href="http://jakarta.apache.org/tomcat/faq/security.html#8005"><u><font color=#0000ff>http://jakarta.apache.org/tomcat/faq/security.html#8005</font></u></a></div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div>以下皆可以参考：<a href="http://www.cnjsp.org/document/user/tuman/valve.html"><u><font color=#0000ff>http://www.cnjsp.org/document/user/tuman/valve.html</font></u></a></div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div>14.配置http访问日志。Tomcat自带的能够记录的http访问日志已经很详细了</div>
<div>取消下面这段的注释：</div>
<div>&nbsp;</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Valve className="org.apache.catalina.valves.AccessLogValve"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; directory="logs"&nbsp; prefix="localhost_access_log." suffix=".txt"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pattern="common" resolveHosts="false"/&gt;</div>
<div>&nbsp;</div>
<div>然后修改为：</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Valve className="org.apache.catalina.valves.FastCommonAccessLogValve"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; directory="logs"&nbsp; prefix="localhost_access_log." suffix=".txt"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pattern="combined" resolveHosts="false" fileDateFormat="yyyy-MM-dd.HH"/&gt;</div>
<div>&nbsp;</div>
<div>pattern="combined" 记录的日志内容更详细，fileDateFormat="yyyy-MM-dd.HH"，会让日志文件按小时进行滚卷，</div>
<div>比默认的按天滚卷要好些，尤其是访问量大的网站，可以考虑写成fileDateFormat="yyyy-MM-dd.HH.mm"，就会是每分钟一个日志文件了。</div>
<div>而且可以分别按<a href="http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/engine.html#Access Logs"><u><font color=#0000ff>Engine</font></u></a>, <a href="http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/host.html#Access Logs"><u><font color=#0000ff>Host</font></u></a>, or <a href="http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/context.html#Access Logs"><u><font color=#0000ff>Context</font></u></a>,来记录自己的日志</div>
<div>详情参考：</div>
<div><a href="http://jakarta.apache.org/tomcat/tomcat-5.5-doc/config/valve.html"><u><font color=#0000ff>http://jakarta.apache.org/tomcat/tomcat-5.5-doc/config/valve.html</font></u></a></div>
<div><a href="http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/logger.html"><u><font color=#0000ff>http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/logger.html</font></u></a></div>
<div><a href="http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/host.html#Access Logs"><u><font color=#0000ff>http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/host.html#Access%20Logs</font></u></a></div>
<div>而且还可以配合<u><font color=#800080>awstats来进行日志统计分析：</font></u> <a href="http://www.chedong.com/tech/awstats.html"><u><font color=#0000ff>http://www.chedong.com/tech/awstats.html</font></u></a></div>
<div>&nbsp;</div>
<div>15.限制ip，限制主机访问等。</div>
<div>如果想禁止指定的ip或者主机名来拒绝某些机器访问，或者指定某些机器来访问。</div>
<div>也支持分别按<a href="http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/engine.html#Access Logs"><u><font color=#0000ff>Engine</font></u></a>, <a href="http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/host.html#Access Logs"><u><font color=#0000ff>Host</font></u></a>, or <a href="http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/context.html#Access Logs"><u><font color=#0000ff>Context</font></u></a>,进行以下配置：</div>
<div>&lt;Context path="/examples" ...&gt;&nbsp; ...<br>&nbsp; &lt;Valve className="org.apache.catalina.valves.RemoteHostValve"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; allow="*.mycompany.com,www.yourcompany.com"/&gt;<br>&nbsp; &lt;Valve className="org.apache.catalina.valves.RemoteAddrValve"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; deny="192.168.1.*"/&gt;<br>&lt;/Context&gt;<br>参考：</div>
<div><a href="http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/context.html"><u><font color=#0000ff>http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/context.html</font></u></a></div>
<div>&nbsp;</div>
<div>16.发布webapp到网站根目录</div>
<div>1。直接复制到ROOT目录下。</div>
<div>2.因为无法创建无名字的xml文件，并且在xml文件里指定path也是无效的(tomcat靠文件名字来判断的)，</div>
<div>因此必须在server.xml里写下面一段：</div>
<div>&lt;Context docBase="${catalina.home}/vhost/www.lizongbo.com" path="/"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; privileged="true" antiResourceLocking="false" antiJARLocking="false"&gt;<br>&lt;Manager className="org.apache.catalina.session.StandardManager" algorithm="SHA-512" <br>entropy="suijisifuchuansuijisifuchuansuijisifuchuansuijisifuchuan"<br>maxActiveSessions="800" /&gt; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Valve className="org.apache.catalina.valves.FastCommonAccessLogValve"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; directory="logs"&nbsp; prefix="localhost_mytest_access_log." suffix=".txt"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pattern="combined" resolveHosts="true" fileDateFormat="yyyy-MM-dd.HH"/&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </div>
<div>&nbsp;</div>
<div>&lt;/Context&gt;</div>
<div>而且必须把ROOT目录删除掉，否则Tomcat还是优先部署ROOT目录为"/"。</div>
<div>&nbsp;</div>
<div>17.在重新启动Tomcat的webapp的时候，禁止把session写入文件。</div>
<div>修改conf/web.xml</div>
<div>取消注释：</div>
<div>&nbsp;&lt;!----&gt;<br>&nbsp;&nbsp;&nbsp; &lt;Manager pathname="" /&gt;</div>
<div>&nbsp;</div>
<div>18.增强SessiionID的生成算法和长度。</div>
<div>&nbsp;</div>
<div><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Manager className="org.apache.catalina.session.StandardManager" algorithm="SHA-512" sessionIdLength="40"&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/Manager&gt;</div>
<div>&nbsp;</div>
<div>（默认的是MD5,长度是16位。）<br>&nbsp;</div>
<div>19.配置日志：(<a href="http://jakarta.apache.org/tomcat/tomcat-5.5-doc/logging.html"><u><font color=#0000ff>http://jakarta.apache.org/tomcat/tomcat-5.5-doc/logging.html</font></u></a>)</div>
<div>&nbsp;</div>
在D:\jakarta-tomcat-5.5.8\common\classes\新建log4j.properties
<div>&nbsp;</div>
<div>内容：</div>
<div>log4j.rootLogger=debug, R <br>log4j.appender.R=org.apache.log4j.RollingFileAppender <br>log4j.appender.R.File=${catalina.home}/logs/tomcat5.5.log <br>log4j.appender.R.MaxFileSize=10MB <br>log4j.appender.R.MaxBackupIndex=10 <br>log4j.appender.R.layout=org.apache.log4j.PatternLayout <br>log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n <br>log4j.logger.org.apache.catalina=DEBUG, R</div>
<div>log4j.logger.org.apache.catalina.core.ContainerBase.Catalina.localhost=DEBUG, R <br>log4j.logger.org.apache.catalina.core=DEBUG, R <br>log4j.logger.org.apache.catalina.session=DEBUG, R </div>
<div>复制log4j-1.2.9.jar和commons-logging.jar到</div>
<div>D:\jakarta-tomcat-5.5.8\common\lib</div>
<div>&nbsp;</div>
<div>20.使用windows域用户验证 </div>
<div>&nbsp;</div>
<div><a href="http://jcifs.samba.org/src/docs/ntlmhttpauth.html"><u><font color=#0000ff>http://jcifs.samba.org/src/docs/ntlmhttpauth.html</font></u></a></div>
</div>
<img src ="http://www.blogjava.net/13angel/aggbug/122494.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/13angel/" target="_blank">yiraka</a> 2007-06-07 09:20 <a href="http://www.blogjava.net/13angel/archive/2007/06/07/122494.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>風邪</title><link>http://www.blogjava.net/13angel/archive/2007/06/01/121330.html</link><dc:creator>yiraka</dc:creator><author>yiraka</author><pubDate>Fri, 01 Jun 2007 03:57:00 GMT</pubDate><guid>http://www.blogjava.net/13angel/archive/2007/06/01/121330.html</guid><wfw:comment>http://www.blogjava.net/13angel/comments/121330.html</wfw:comment><comments>http://www.blogjava.net/13angel/archive/2007/06/01/121330.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/13angel/comments/commentRss/121330.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/13angel/services/trackbacks/121330.html</trackback:ping><description><![CDATA[来日本一年多一点了,今天第一次感冒,,,,,,,,,,,&nbsp;&nbsp; 值得纪念一下<br><br><img src="http://www.blogjava.net/CuteSoft_Client/CuteEditor/images/emteeth.gif" align=absMiddle border=0><br><br>風邪を引く
<img src ="http://www.blogjava.net/13angel/aggbug/121330.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/13angel/" target="_blank">yiraka</a> 2007-06-01 11:57 <a href="http://www.blogjava.net/13angel/archive/2007/06/01/121330.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java 网站--转</title><link>http://www.blogjava.net/13angel/archive/2007/05/31/121178.html</link><dc:creator>yiraka</dc:creator><author>yiraka</author><pubDate>Thu, 31 May 2007 07:51:00 GMT</pubDate><guid>http://www.blogjava.net/13angel/archive/2007/05/31/121178.html</guid><wfw:comment>http://www.blogjava.net/13angel/comments/121178.html</wfw:comment><comments>http://www.blogjava.net/13angel/archive/2007/05/31/121178.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/13angel/comments/commentRss/121178.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/13angel/services/trackbacks/121178.html</trackback:ping><description><![CDATA[<p><font size=2>CSDN Java 频道 <br>http://java.csdn.net/<br><br>&nbsp;&nbsp;&nbsp; <br>JAVA中文站<br>http://www.java-cn.com/index.html<br><br>&nbsp;&nbsp;&nbsp; <br>中文JAVA技术网<br>http://www.cn-java.com/<br>AVA技术,JAVA编程,JAVA资源,开源项目,JAVA,J2EE,J2ME,XML,WAP,APPLET,EJB,BEA,WEBLOGIC,JAVA论坛,IT技术,网上,编程,数据库开发,人才资源<br><br>&nbsp;&nbsp;&nbsp; <br><br>http://www.open-open.com/index.htm<br>Java开源大全,开源,webwork,hibernate,struts,spring等java热门开源介绍<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>JavaEye深度技术社区<br>http://www.javaeye.com/<br><br>Java编程,Java Web开发,Java企业应用,Java设计模式,Java开源框架,Java应用服务器,Ruby编程, Ruby DSL开发,Ruby on rails实践,JavaScript编程,XMLHTTP AJAX开发,Rich Client讨论,敏捷软件开发XP TDD,软件配置管理,软件测试,项目管理UML,数据库,C#/.net C/C++ Erlang/FP PHP/Linux平台, Spring Struts Webwork框架深入,精通Hibernate<br><br><br>&nbsp;&nbsp;&nbsp; <br>BlogJava - 专注于Java技术 - <br>www.blogjava.net<br>&nbsp;&nbsp;&nbsp; <br><br>&nbsp;&nbsp;&nbsp; <br>J2ME开发网<br>j2medev.com<br>&nbsp;&nbsp;&nbsp; <br><br>&nbsp;&nbsp;&nbsp; <br>JAVA开发者的乐园<br>http://java.ccidnet.com/<br><br>J2EE,JAVA,JSP,EJB,WEBSERVICE,中间件,TOMCAT,WEBLOGIC,JBOSS,基础,架构与模式,MVC框架,SOA,AOP,JDBC,WEB2.0,hibernate,spring经验,ajax,borland技巧,eclipse使用<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>http://www.matrix.org.cn/<br>Matrix Java 是一个与 Java 相关的大型综合开发社区&nbsp;</font><br>&nbsp;</p>
<p>
<table>
    <tbody>
        <tr>
            <td><font size=+0><strong>优秀的java开发网站链接</strong></font><br></td>
        </tr>
        <tr>
            <td>
            <p><span><font size=2>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www-900.ibm.com/developerWorks/cn/java/index.shtml" target=_blank></a><a href="http://www-900.ibm.com/developerWorks/cn/java/index.shtml" target=_blank><font color=#000000>http://www-900.ibm.com/developerWorks/cn/java/index.shtml</font></a>&nbsp;&nbsp;&nbsp;&nbsp;IBM的JAVA专题——永远的蓝色巨人<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.huihoo.com/" target=_blank></a><a href="http://www.huihoo.com/" target=_blank><font color=#000000>http://www.huihoo.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;灰狐动力——Enterprise Open Source<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.jdon.com/" target=_blank></a><a href="http://www.jdon.com/" target=_blank><font color=#000000>http://www.jdon.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;J道——JAVA和J2EE解决之道<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.chinaunix.net/" target=_blank></a><a href="http://www.chinaunix.net/" target=_blank><font color=#000000>http://www.chinaunix.net</font></a>&nbsp;&nbsp;&nbsp;&nbsp;ChinaUnix——我们在努力打造一个Unix时代！<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.theserverside.com/" target=_blank></a><a href="http://www.theserverside.com/" target=_blank><font color=#000000>http://www.theserverside.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;TheServerSide.COM——Your Enterprise Java Community<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.onjava.com/" target=_blank></a><a href="http://www.onjava.com/" target=_blank><font color=#000000>http://www.onjava.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;O'REILLY ON java.com<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.matrix.org.cn/" target=_blank></a><a href="http://www.matrix.org.cn/" target=_blank><font color=#000000>http://www.matrix.org.cn</font></a>&nbsp;&nbsp;&nbsp;&nbsp;Matrix与Java共舞<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.java-source.net/" target=_blank></a><a href="http://www.java-source.net/" target=_blank><font color=#000000>http://www.java-source.net</font></a>&nbsp;&nbsp;&nbsp;&nbsp;JavaSource<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.javaresearch.org/" target=_blank></a><a href="http://www.javaresearch.org/" target=_blank><font color=#000000>http://www.javaresearch.org</font></a>&nbsp;&nbsp;&nbsp;&nbsp;Java研究组织——汇聚技术精英,增进技术交流<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.cn-java.com/" target=_blank></a><a href="http://www.cn-java.com/" target=_blank><font color=#000000>http://www.cn-java.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;中文Java技术网——为Java爱好者服务<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.javalobby.org/" target=_blank></a><a href="http://www.javalobby.org/" target=_blank><font color=#000000>http://www.javalobby.org</font></a>&nbsp;&nbsp;&nbsp;&nbsp;JavaLobby<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.javajia.com/" target=_blank></a><a href="http://www.javajia.com/" target=_blank><font color=#000000>http://www.javajia.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;Java家<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.cnjavaclub.com/" target=_blank></a><a href="http://www.cnjavaclub.com/" target=_blank><font color=#000000>http://www.cnjavaclub.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;中国JAVA俱乐部<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.jspcn.net/" target=_blank></a><a href="http://www.jspcn.net/" target=_blank><font color=#000000>http://www.jspcn.net</font></a>&nbsp;&nbsp;&nbsp;&nbsp;JSP中文网<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.cnjsp.org/" target=_blank></a><a href="http://www.cnjsp.org/" target=_blank><font color=#000000>http://www.cnjsp.org</font></a>&nbsp;&nbsp;&nbsp;&nbsp;中国JSP技术网站<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.xuejava.com/" target=_blank></a><a href="http://www.xuejava.com/" target=_blank><font color=#000000>http://www.xuejava.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;学Java——学习Java的精髓<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://tech.ccidnet.com/" target=_blank></a><a href="http://tech.ccidnet.com/" target=_blank><font color=#000000>http://tech.ccidnet.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;赛迪网技术天地<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.uml.org.cn/" target=_blank></a><a href="http://www.uml.org.cn/" target=_blank><font color=#000000>http://www.uml.org.cn</font></a>&nbsp;&nbsp;&nbsp;&nbsp;UML软件工程组织<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://dev2dev.bea.com.cn/" target=_blank></a><a href="http://dev2dev.bea.com.cn/" target=_blank><font color=#000000>http://dev2dev.bea.com.cn</font></a>&nbsp;&nbsp;&nbsp;&nbsp;BEAdev2dev在线<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.kissjava.com/" target=_blank></a><a href="http://www.kissjava.com/" target=_blank><font color=#000000>http://www.kissjava.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;爪哇流氓<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://java.about.com/" target=_blank></a><a href="http://java.about.com/" target=_blank><font color=#000000>http://java.about.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;来自About.com的Java新闻和技术文章<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.jcp.org/en/home/index" target=_blank></a><a href="http://www.jcp.org/en/home/index" target=_blank><font color=#000000>http://www.jcp.org/en/home/index</font></a>&nbsp;&nbsp;&nbsp;&nbsp;Java Community Process<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.java-cn.com/" target=_blank></a><a href="http://www.java-cn.com/" target=_blank><font color=#000000>http://www.java-cn.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;Java中文站——每一天我们都在进步<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.chedong.com/" target=_blank></a><a href="http://www.chedong.com/" target=_blank><font color=#000000>http://www.chedong.com/</font></a>&nbsp;&nbsp;&nbsp;&nbsp;车东<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.javayou.com/" target=_blank></a><a href="http://www.javayou.com/" target=_blank><font color=#000000>http://www.javayou.com/</font></a>&nbsp;&nbsp;&nbsp;&nbsp;Java自由人<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.j2medev.com/" target=_blank></a><a href="http://www.j2medev.com/" target=_blank><font color=#000000>http://www.j2medev.com/</font></a>&nbsp;&nbsp;&nbsp;&nbsp;J2ME开发网</font></span></p>
            <p><span><font size=2><br><a name=c><u>Java技术论坛</u></a></font></span>&nbsp;</p>
            <p>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://bbs.chinajavaworld.com/" target=_blank></a><a href="http://bbs.chinajavaworld.com/" target=_blank><font color=#000000>http://bbs.chinajavaworld.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;ChinaJavaWorld技术论坛<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.javaworld.com.tw/jute/index.html" target=_blank></a><a href="http://www.javaworld.com.tw/jute/index.html" target=_blank><font color=#000000>http://www.javaworld.com.tw/jute/index.html</font></a>&nbsp;&nbsp;&nbsp;&nbsp;JavaWorld技术论坛<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://forum.javaeye.com/" target=_blank></a><a href="http://forum.javaeye.com/" target=_blank><font color=#000000>http://forum.javaeye.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;Java视线论坛<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.jdon.com/jive/index.jsp" target=_blank></a><a href="http://www.jdon.com/jive/index.jsp" target=_blank><font color=#000000>http://www.jdon.com/jive/index.jsp</font></a>&nbsp;&nbsp;&nbsp;&nbsp;J道论坛<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://gceclub.sun.com.cn/NASApp/sme/jive/index.jsp" target=_blank></a><a href="http://gceclub.sun.com.cn/NASApp/sme/jive/index.jsp" target=_blank><font color=#000000>http://gceclub.sun.com.cn/NASApp/sme/jive/index.jsp</font></a>&nbsp;&nbsp;&nbsp;&nbsp;Sun技术社区论坛<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.cjsdn.com/" target=_blank></a><a href="http://www.cjsdn.com/" target=_blank><font color=#000000>http://www.cjsdn.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;中国Java开发网<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://spring.jactiongroup.net/" target=_blank></a><a href="http://spring.jactiongroup.net/" target=_blank><font color=#000000>http://spring.jactiongroup.net</font></a>&nbsp;&nbsp;&nbsp;&nbsp;SpringFramework中文论坛<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.javafan.net/jive/index.jsp" target=_blank></a><a href="http://www.javafan.net/jive/index.jsp" target=_blank><font color=#000000>http://www.javafan.net/jive/index.jsp</font></a>&nbsp;&nbsp;&nbsp;&nbsp;JavaFan论坛<br><a name=d><u>Java优秀Blog</u></a></p>
            <p><u><img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0></u>&nbsp;<a href="http://blog.csdn.net/casularm" target=_blank></a><a href="http://blog.csdn.net/casularm" target=_blank><font color=#000000>http://blog.csdn.net/casularm</font></a>&nbsp;&nbsp;&nbsp;&nbsp;Casularm Blog<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://hedong.3322.org/" target=_blank></a><a href="http://hedong.3322.org/" target=_blank><font color=#000000>http://hedong.3322.org</font></a>&nbsp;&nbsp;&nbsp;&nbsp;竹笋炒肉<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://blog.csdn.net/baijsp" target=_blank></a><a href="http://blog.csdn.net/baijsp" target=_blank><font color=#000000>http://blog.csdn.net/baijsp</font></a>&nbsp;&nbsp;&nbsp;&nbsp;Java and OpenSource Software<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://leosky.java.mblogger.cn/" target=_blank></a><a href="http://leosky.java.mblogger.cn/" target=_blank><font color=#000000>http://leosky.java.mblogger.cn</font></a>&nbsp;&nbsp;&nbsp;&nbsp;leo的Blog<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://java2guru.java.mblogger.cn/" target=_blank></a><a href="http://java2guru.java.mblogger.cn/" target=_blank><font color=#000000>http://java2guru.java.mblogger.cn</font></a>&nbsp;&nbsp;&nbsp;&nbsp;J2EE Blog<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://blog.csdn.net/chenyun2000" target=_blank></a><a href="http://blog.csdn.net/chenyun2000" target=_blank><font color=#000000>http://blog.csdn.net/chenyun2000</font></a>&nbsp;&nbsp;&nbsp;&nbsp;Open Java Project<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://gigix.blogdriver.com/gigix/index.html" target=_blank></a><a href="http://gigix.blogdriver.com/gigix/index.html" target=_blank><font color=#000000>http://gigix.blogdriver.com/gigix/index.html</font></a>&nbsp;&nbsp;&nbsp;&nbsp;透明思考<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://blog.tomxp.com/Home.html" target=_blank></a><a href="http://blog.tomxp.com/Home.html" target=_blank><font color=#000000>http://blog.tomxp.com/Home.html</font></a>&nbsp;&nbsp;&nbsp;&nbsp;东波的Blog<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://blog.csdn.net/liaoxingya276" target=_blank></a><a href="http://blog.csdn.net/liaoxingya276" target=_blank><font color=#000000>http://blog.csdn.net/liaoxingya276</font></a>&nbsp;&nbsp;&nbsp;&nbsp;liaoxingya的Blog<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://blog.csdn.net/arielxp" target=_blank></a><a href="http://blog.csdn.net/arielxp" target=_blank><font color=#000000>http://blog.csdn.net/arielxp</font></a>&nbsp;&nbsp;&nbsp;&nbsp;!Java<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.donews.net/yahoo163/" target=_blank></a><a href="http://www.donews.net/yahoo163/" target=_blank><font color=#000000>http://www.donews.net/yahoo163/</font></a>&nbsp;&nbsp;&nbsp;&nbsp;BlogJava<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://blog.csdn.net/asklxf/" target=_blank></a><a href="http://www.crackj2ee.com/blog/default.asp" target=_blank><font color=#000000>http://www.crackj2ee.com/blog/default.asp</font></a>&nbsp;&nbsp;&nbsp;&nbsp;雪峰的Blog<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://painisk.blogchina.com/" target=_blank></a><a href="http://painisk.blogchina.com/" target=_blank><font color=#000000>http://painisk.blogchina.com</font></a>&nbsp;&nbsp;&nbsp;&nbsp;和疯Blog<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://agilejava.blogbus.com/index.html" target=_blank></a><a href="http://agilejava.blogbus.com/index.html" target=_blank><font color=#000000>http://agilejava.blogbus.com/index.html</font></a>&nbsp;&nbsp;&nbsp;&nbsp;agile &amp; sungny<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://blogger.org.cn/blog/blog.asp?name=hongrui" target=_blank></a><a href="http://blogger.org.cn/blog/blog.asp?name=hongrui" target=_blank><font color=#000000>http://blogger.org.cn/blog/blog.asp?name=hongrui</font></a>&nbsp;&nbsp;&nbsp;&nbsp;邢红瑞的Blog<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://blog.csdn.net/buaawhl" target=_blank></a><a href="http://blog.csdn.net/buaawhl" target=_blank><font color=#000000>http://blog.csdn.net/buaawhl</font></a>&nbsp;&nbsp;&nbsp;&nbsp;buaawhl的专栏<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.blogjava.net/rosen" target=_blank></a><a href="http://www.blogjava.net/rosen" target=_blank><font color=#000000>http://www.blogjava.net/rosen</font></a>&nbsp;&nbsp;&nbsp;&nbsp;成都心情（Full Speed）<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://www.blogjava.net/bluedavy/" target=_blank></a><a href="http://www.blogjava.net/bluedavy" target=_blank><font color=#000000>http://www.blogjava.net/bluedavy</font></a>&nbsp;&nbsp;&nbsp;&nbsp;Programmer's Life<br>&nbsp;<img height=23 alt="" src="http://www.javafan.net/images/keyarticle.gif" width=16 border=0>&nbsp;<a href="http://blog.nona.name/" target=_blank></a><a href="http://blog.nona.name/" target=_blank><font color=#000000>http://blog.nona.name</font></a>&nbsp;&nbsp;&nbsp;&nbsp;冰云@Blogging</p>
            </td>
        </tr>
    </tbody>
</table>
</p>
<a href="http://www.javaalmanac.com/"><font color=#78afd3>http://www.javaalmanac.com</font></a> Java开发者在线年鉴，可以迅速查到许多经典的代码<br><a href="http://www.onjava.com/"><font color=#78afd3>http://www.onjava.com</font></a> O'Reilly's的Java网站，每周都有新的文章 <br><a href="http://java.sun.com/"><font color=#78afd3>http://java.sun.com</font></a> Sun公司的Java网站 <br><a href="http://gceclub.sun.com.cn/"><font color=#78afd3>http://gceclub.sun.com.cn/</font></a> Sun公司的中文讨论网站 <br><a href="http://www.developer.com/java"><font color=#78afd3>http://www.developer.com/java</font></a> 由Gamelan.com维护的Java网站 <br><a href="http://www.java.net/"><font color=#78afd3>http://www.java.net</font></a> Sun公司主持的java交流论坛 <br><a href="http://www.builder.com/"><font color=#78afd3>http://www.builder.com</font></a> Cnet's的以java技术文章为主的网站Builder.com <br><a href="http://www.ibm.com/developerworks/java"><font color=#78afd3>http://www.ibm.com/developerworks/java</font></a> IBM开发者网站Java技术专区 <br><a href="http://www.javaworld.com/"><font color=#78afd3>http://www.javaworld.com</font></a> 一个比较早的java网站，每周更新 <br><a href="http://www.devx.com/java"><font color=#78afd3>http://www.devx.com/java</font></a> DevX维护的一个Java技术文章网站 <br><a href="http://www.fawcette.com/javapro"><font color=#78afd3>http://www.fawcette.com/javapro</font></a> java pro在线的网站 <br><a href="http://www.sys-con.com/java"><font color=#78afd3>http://www.sys-con.com/java</font></a> Java Developers Journal杂志网站 <br><a href="http://www.javadesktop.org/"><font color=#78afd3>http://www.javadesktop.org</font></a> 由java.net维护的java桌面技术网站 <br><a href="http://www.theserverside.com/"><font color=#78afd3>http://www.theserverside.com</font></a> 以java服务端技术为主的网站<br><a href="http://www.jars.com/"><font color=#78afd3>http://www.jars.com</font></a> Java评论服务，包括各种构架和应用程序 <br><a href="http://www.jguru.com/"><font color=#78afd3>http://www.jguru.com</font></a> 一个互动性的java资源网 <br><a href="http://www.javaranch.com/"><font color=#78afd3>http://www.javaranch.com</font></a> 为java初学者办的网站 <br><a href="http://www.ibiblio.org/javafaq/javafaq.html"><font color=#78afd3>http://www.ibiblio.org/javafaq/javafaq.html</font></a> 收集了comp.lang.java新闻组的问题和答案 <br><a href="http://java.sun.com/docs/books/tutorial"><font color=#78afd3>http://java.sun.com/docs/books/tutorial</font></a> Sun公司的java官方指南 <br><a href="http://www.javablogs.com/"><font color=#78afd3>http://www.javablogs.com</font></a> 以java技术为主的blog网站 <br><a href="http://java.about.com/"><font color=#78afd3>http://java.about.com</font></a> about.com的java技术专区，java的新闻和文章 <br><a href="http://www.javalobby.org/"><font color=#78afd3>http://www.javalobby.org/</font></a> java爱好者网站，提供blog，软件下载等服<br>
<img src ="http://www.blogjava.net/13angel/aggbug/121178.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/13angel/" target="_blank">yiraka</a> 2007-05-31 15:51 <a href="http://www.blogjava.net/13angel/archive/2007/05/31/121178.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>学了一阵子基础,做做题目. 记录--5.31</title><link>http://www.blogjava.net/13angel/archive/2007/05/31/121171.html</link><dc:creator>yiraka</dc:creator><author>yiraka</author><pubDate>Thu, 31 May 2007 06:59:00 GMT</pubDate><guid>http://www.blogjava.net/13angel/archive/2007/05/31/121171.html</guid><wfw:comment>http://www.blogjava.net/13angel/comments/121171.html</wfw:comment><comments>http://www.blogjava.net/13angel/archive/2007/05/31/121171.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/13angel/comments/commentRss/121171.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/13angel/services/trackbacks/121171.html</trackback:ping><description><![CDATA[<p>1.简单的一题,错了.<br>自动转型<br>class Test {<br>&nbsp;void test(int i){<br>&nbsp;&nbsp;System.out.println("i");<br>&nbsp;}<br>&nbsp;void test(String s){<br>&nbsp;&nbsp;System.out.println("s");<br>&nbsp;}</p>
<p>&nbsp;public static void main(String[] args){<br>&nbsp;&nbsp;Test t=new Test();<br>&nbsp;&nbsp;char ch='y';</p>
<p>&nbsp;&nbsp;t.test(y);<br>&nbsp;}<br>}</p>
<p>运行结果为"i",在编译自动把字符型转换为整型!!<br><br>2.Reader/Writer只处理Unicode字符的输入输出。float和double可以通过stream进行I/O<br><br>3.线程<br>public class Z {&nbsp; <br>public static void main(String[] args) {&nbsp; <br>　　new Z();&nbsp; <br>　　}&nbsp; <br>　　&nbsp; <br>　　Z() {&nbsp; <br>　　 Z alias1 = this;&nbsp; <br>　　 Z alias2 = this;&nbsp; <br>　　 synchronized(alias1) {&nbsp; <br>　　try {&nbsp; <br>　　 alias2.wait();&nbsp; <br>　　 System.out.println(&#8220;DONE WAITING&#8221;);&nbsp; <br>　　 }&nbsp; <br>　　 catch (InterruptedException e) {&nbsp; <br>　　 System.out.println(&#8220;INTERR UPTED&#8221;);&nbsp; <br>　　 }&nbsp; <br>　　 catch (Exception e) {&nbsp; <br>　　System.out.println(&#8220;OTHER EXCEPTION&#8221;);&nbsp; <br>　　}&nbsp; <br>　　finally {&nbsp; <br>　　 System.out.println (&#8220;FINALLY&#8221;);&nbsp; </p>
<p>　　}&nbsp; <br>　　}&nbsp; <br>　　 System.out.println(&#8220;ALL DONE&#8221;);&nbsp; <br>　　}&nbsp; <br>　　}&nbsp; <br>alias1,alias2引用同一个对象,当执行wait()方法时,线程放弃对象锁,因无notifyAll()和notify()方法,{这个方法是把对象的等待池中的线程放入对象的锁池,以便获得对象锁},所以对象一直处于等待的状态什么也不打印)<br><br>13 <br>class&nbsp;Person&nbsp;{ <br>private&nbsp;int&nbsp;a; <br>public&nbsp;int&nbsp;change(int&nbsp;m){&nbsp;return&nbsp;m;&nbsp;} <br>} <br><br>public&nbsp;class&nbsp;Teacher&nbsp;extends&nbsp;Person&nbsp;{ <br>public&nbsp;int&nbsp;b; <br>public&nbsp;static&nbsp;void&nbsp;main(String&nbsp;arg[]){ <br>Person&nbsp;p&nbsp;=&nbsp;new&nbsp;Person(); <br>Teacher&nbsp;t&nbsp;=&nbsp;new&nbsp;Teacher(); <br>int&nbsp;i; <br>//&nbsp;point&nbsp;x <br>} <br>} <br><br>A.&nbsp;i&nbsp;=&nbsp;m; <br>B.&nbsp;i&nbsp;=&nbsp;b; <br>C.&nbsp;i&nbsp;=&nbsp;p.a; <br>D.&nbsp;i&nbsp;=&nbsp;p.change(30); <br>E.&nbsp;i&nbsp;=&nbsp;t.b.&nbsp;<br>A.m局域变量,等于未定义.B.在静态方法中不能使用非静态成员变量,可通过类的实例的引用来调用.<br>如i=t.b<br>C.a是私有成员.<br><br><br></p>
<img src ="http://www.blogjava.net/13angel/aggbug/121171.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/13angel/" target="_blank">yiraka</a> 2007-05-31 14:59 <a href="http://www.blogjava.net/13angel/archive/2007/05/31/121171.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>学习java要看些什么书呢?</title><link>http://www.blogjava.net/13angel/archive/2007/05/31/121122.html</link><dc:creator>yiraka</dc:creator><author>yiraka</author><pubDate>Thu, 31 May 2007 04:30:00 GMT</pubDate><guid>http://www.blogjava.net/13angel/archive/2007/05/31/121122.html</guid><wfw:comment>http://www.blogjava.net/13angel/comments/121122.html</wfw:comment><comments>http://www.blogjava.net/13angel/archive/2007/05/31/121122.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/13angel/comments/commentRss/121122.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/13angel/services/trackbacks/121122.html</trackback:ping><description><![CDATA[《Practical Java》<br>《Effective Java》<br>《Java Threads, 3rd Edition》讲线程<br>《Agile Java》中文版<br>《重构 改善既有代码的设计》 <br>《测试驱动开发 by Example》 <br>《Expert One-on-One J2EE Design and Development》 <br>《Expert One-on-One J2EE Development without EJB》 <br>《企业应用架构模式》<br>&lt;Head First系列 &gt;<br>&lt;敏捷软件开发&gt;<br>《解析极限编程 拥抱变化》 <br>&lt;java解惑&gt;<br><span style="COLOR: #000000">&lt;</span><a href="http://www.china-pub.com/computers/common/info.asp?id=16303" target=_blank><span style="COLOR: #000000">Java 并发编程—设计原则与模式（第二版）</span></a><span style="COLOR: #000000">&gt;<br>&lt;</span><a href="http://www.china-pub.com/computers/common/info.asp?id=684" target=_blank><span style="COLOR: #000000">设计模式：可复用面向对象软件的基础</span></a><span style="COLOR: #000000">&gt;<br>&lt;</span><a href="http://www.china-pub.com/computers/common/info.asp?id=19923" target=_blank><span style="COLOR: #000000">企业应用架构模式</span></a><span style="COLOR: #000000"> &gt;</span><br>&lt;<a name=N10156>UML Distilled (Martin Fowler)</a> &gt;<br><span style="COLOR: #000000">&lt;The Pragmatic Programmer: From Journeyman to Master &gt;</span><br>&lt;卓越编程之道&gt;<br><br>
<img src ="http://www.blogjava.net/13angel/aggbug/121122.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/13angel/" target="_blank">yiraka</a> 2007-05-31 12:30 <a href="http://www.blogjava.net/13angel/archive/2007/05/31/121122.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>