<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>皇马啸西风的一亩三分地</title>
    <description>上帝给了我们七情六欲,我们却把它们变成色情和暴力......</description>
    <link>http://liuwei1981.javaeye.com</link>
    <language>UTF-8</language>
    <copyright>Copyright 2003-2008, JavaEye.com</copyright>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <generator>JavaEye - 做最棒的软件开发交流社区</generator>
      <item>
        <title>Struts2标签 数据标签---action标签</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/211742" style="color:red;">http://liuwei1981.javaeye.com/blog/211742</a>&nbsp;
          发表时间: 2008年07月04日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 使用action标签,可以允许在jsp页面中直接调用Action,在调用Action时候,可以指定需要被调用的Action的name和namespace.如果指定了executeResult参数的属性值为true,该标签会把Action的处理结果(视图资源)包含到本页面中.</p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 使用action标签指定属性有:</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
<pre name="code" class="java">id: 可选属性,作为该Action的引用ID

name:必选属性,指定调用Action

namespace:可选属性,指定该标签调用Action所属namespace

executeResult:可选属性,指定是否将Action的处理结果包含到本页面中.默认值为false,不包含.

ignoreContextParam:可选参数,指定该页面的请求参数是否需要传入调用的Action中,默认值是false,即传入参数.
</pre>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp; 使用样式:</p>
<p>&nbsp;&nbsp; 已配置Action,名称为textAction</p>
<p>&nbsp; </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 该action的执行结果传入本页面中.&nbsp; </p>
<pre name="code" class="java">&lt;s:action name="textAction" executeResult="true"/&gt;</pre>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 该action的执行结果传入本页面中.&nbsp;,但阻止本页面请求参数传入调用action&nbsp;&nbsp;&nbsp; </p>
<pre name="code" class="java">&lt;s:action="testAction" executeResult="true" gnoreContextParam="true"/&gt;</pre>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 该action的执行结果禁止传入本页面中.&nbsp; </p>
<pre name="code" class="java">&lt;s:action="testAction" /&gt;</pre>
<p>&nbsp;&nbsp;&nbsp; </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/211742#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 04 Jul 2008 17:57:34 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/211742</link>
        <guid>http://liuwei1981.javaeye.com/blog/211742</guid>
      </item>
      <item>
        <title>Struts2标签 控制标签－－subset标签</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/211234" style="color:red;">http://liuwei1981.javaeye.com/blog/211234</a>&nbsp;
          发表时间: 2008年07月03日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp; subset标签用于去得集合的子集，该标签的底层通过org.apache.struts2.util.Subset.IteratorFilter类提供实现.</p>
<p>&nbsp;&nbsp;&nbsp; 使用subset标签可以指定的属性有:</p>
<p>&nbsp;&nbsp;&nbsp; </p>
<pre name="code" class="java"> count:    可选属性,指定子集中元素的个数.在不指定该属性情况下,默认取得源集合的全部元素

source: 可选属性,指定源集合.若不指定,默认取得ValueStack栈顶的集合.

start:可选属性,指定子集从源集合中的第几个元素开始截取.默认从第一个开始截取,默认值为0

decider:可选属性,指定由开发者自己决定是否选中该元素.


</pre>
<p>&nbsp;&nbsp;&nbsp; 例如,往页面传入一个list集合,集合中有5个元素,那么:</p>
<p>&nbsp;&nbsp;&nbsp; </p>
<pre name="code" class="java">&lt;s:subset source="list" start="1",count="3"&gt;
&lt;s:iterator status="st"&gt;
&lt;/s:iterator&gt;
&lt;/s:subset/&gt;</pre>
<p>&nbsp;</p>
<p>就会将list集合中的从第二个元素开始,只取出3个元素.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/211234#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Thu, 03 Jul 2008 19:22:18 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/211234</link>
        <guid>http://liuwei1981.javaeye.com/blog/211234</guid>
      </item>
      <item>
        <title>Struts2标签 控制标签－－merge标签</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/210251" style="color:red;">http://liuwei1981.javaeye.com/blog/210251</a>&nbsp;
          发表时间: 2008年07月01日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp; merge标签用于将多个集合拼接成一个集合,使用merge,与append形成的集合元素完全相同,但集合中的元素顺序不同</p>
<p>&nbsp;&nbsp;&nbsp; 要合并的两个集合:list1 list2</p>
<p>&nbsp;&nbsp;&nbsp; list1集合中的元素: lst1obj1,list1obj2,list1obj3</p>
<p>&nbsp;&nbsp;&nbsp; list2集合中的元素: list2obj1,list2obj2,list2obj3</p>
<p>&nbsp;&nbsp;&nbsp; 使用append拼接,新集合的元素顺序:&nbsp;&nbsp;&nbsp; </p>
<pre name="code" class="java">list1obj1
list1obj2
list1obj3
list2obj1
list2obj2
list2obj3
</pre>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp; 使用merge拼接,新集合的元素顺序:</p>
<p>&nbsp;&nbsp;&nbsp; </p>
<pre name="code" class="java">list1obj1
list2obj1
list1obj2
list2obj2
list1obj3
list2obj3</pre>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;使用方式与append大致相同.</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/210251#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 01 Jul 2008 18:24:29 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/210251</link>
        <guid>http://liuwei1981.javaeye.com/blog/210251</guid>
      </item>
      <item>
        <title>Struts2标签 控制标签－－generator标签</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/209898" style="color:red;">http://liuwei1981.javaeye.com/blog/209898</a>&nbsp;
          发表时间: 2008年06月30日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp; 使用generator标签,可以指定字符串按照指定的分隔符分隔成多个字串,临时生成的多个字串可以使用iterator标签来迭代输出.</p>
<p>&nbsp;&nbsp; 使用generator标签可以指定如下的属性:</p>
<p>&nbsp;&nbsp; </p>
<pre name="code" class="java">count :该属性是一个可选的属性,指定生成集合中元素的总数
seperator:这个是必填属性,该属性指定用于解析字符串的分隔符.
val:必填属性,该属性指定被解析的字符串
converter:可选属性,该属性指定一个转换器,负责将集合中的每个字符串转换成对象.
id:可选属性,若指定,生成的集合放在pageContext属性中.</pre>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/209898#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 30 Jun 2008 18:52:35 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/209898</link>
        <guid>http://liuwei1981.javaeye.com/blog/209898</guid>
      </item>
      <item>
        <title>Struts2标签 控制标签－－append标签</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/209476" style="color:red;">http://liuwei1981.javaeye.com/blog/209476</a>&nbsp;
          发表时间: 2008年06月29日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp; append标签用于将多个集合对象拼接起来,组成一个新的集合,通过这种拼接,从而允许通过一个&lt;s:iterator../&gt;标签就完成多个集合的迭代.</p>
<p>&nbsp;&nbsp; 使用&lt;s:append../&gt;标签需要指定一个id属性,该属性确定拼接生成的新集合名称.&lt;s:append../&gt;标签接受多个&lt;s:param.../&gt;子标签,每个子标签指定一个集合,append标签负责将多个集合拼接成一个集合.</p>
<p>&nbsp;&nbsp; 例如页面接受了几个集合对象:list1,list2,list3</p>
<p>&nbsp;&nbsp; 在页面中可以这样写:</p>
<p>&nbsp;</p>
<pre name="code" class="java">&lt;s:append id="newList"&gt;
  &lt;s:param value="list1"/&gt;
  &lt;s:param value="list2"/&gt;
  &lt;s:param value="list3"/&gt;
&lt;/s:append&gt;

&lt;s:iterator value="#newList"&gt;
&lt;/s:iterator&gt;</pre>
<p>&nbsp;</p>
<p>这样,页面会循环输出list1,list2和list3中全部的数据.</p>
<p>&nbsp;&nbsp; </p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/209476#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 29 Jun 2008 17:11:39 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/209476</link>
        <guid>http://liuwei1981.javaeye.com/blog/209476</guid>
      </item>
      <item>
        <title>Struts2标签 控制标签－－iterator标签</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/208962" style="color:red;">http://liuwei1981.javaeye.com/blog/208962</a>&nbsp;
          发表时间: 2008年06月28日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp; iterator标签主要用于对集合进行迭代，这里的集合包括List、Set和数组，也包括Map类型的对象。</p>
<p>&nbsp;&nbsp;&nbsp; 使用&lt;s:iterator../&gt;标签对集合进行迭代输出，可以选择指定的属性有：</p>
<p>&nbsp;&nbsp;&nbsp; </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;</p>
<pre name="code" class="java">1.value  指定被迭代的集合。通常被迭代的集合使用ONGL表达式指定。在没有指定value属性的情况下，</pre>
<pre name="code" class="java">             使用ValueSatack栈顶的集合。

2.id       指定集合里的元素的ID

3.         status 指定迭代时的IteratorStatus实例。通过该实例就可以判断当前迭代元素的属性。</pre>
<pre name="code" class="java">            这个实例包括的方法有：

</pre>
<p>&nbsp;&nbsp;&nbsp;&nbsp;</p>
<pre name="code" class="java"> int getCount():返回当前迭代了几个元素
 
 int getIndex():返回当前迭代元素的索引
  
 boolean isEven(): 返回当前被迭代元素的索引是否是偶数
 
 boolean isOdd():  返回当前被迭代元素的索引是否是奇数

 boolean isFirst():  返回当前被迭代元素是否是第一个元素
 
 boolean isLast():  返回当前被迭代元素是否是最好一个元素
</pre>
<p>&nbsp;</p>
<p>&nbsp;&nbsp; 使用iterator标签迭代Map对象,Map对象的每个Key-value被当成一个集合元素使用&lt;s:property../&gt;标签,通过指定value的属性为key和value来实现.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/208962#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 28 Jun 2008 16:24:02 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/208962</link>
        <guid>http://liuwei1981.javaeye.com/blog/208962</guid>
      </item>
      <item>
        <title>Struts2标签 控制标签－－if/elseif/else标签</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/208780" style="color:red;">http://liuwei1981.javaeye.com/blog/208780</a>&nbsp;
          发表时间: 2008年06月27日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp;&nbsp; if/elseif/else这3个标签都是用于进行分支控制，根据一个Boolean表达式的值，来决定是否输出标签体的内容等。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; if/elseif/else这3个标签中，只有&lt;s:if../&gt;标签可以单独使用，后面的&lt;s:elseif../&gt; &lt;s:else../&gt;都不可以单独使用，必须与&lt;s:if../&gt;结合使用，其中&lt;s:if../&gt;标签可以与多个&lt;s:elseif../&gt;标签结合使用，并可以结合一个&lt;s:else../&gt;标签使用，如下所示：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; </p>
<pre name="code" class="java">&lt;s:if test="Boolean表达式"&gt;
  输出标签内容
&lt;/s:if&gt;
&lt;s:elseif test="Boolean表达式"&gt;
 输出标签内容
&lt;/s:elseif&gt;
&lt;!--允许重复出现elseif标签--&gt;
....
&lt;s:else&gt;
 输出标签内容
&lt;/s:else&gt;</pre>
<p>&nbsp;</p>
<p>以上标签组合方式，对应了Java语言的控制分支结构。</p>
<p>除了以上的使用方式之外，&lt;if../&gt;&nbsp; &lt;elseif../&gt; &lt;else../&gt;标签都可以指定一个ID属性，该属性指定了所指元素的id，这个属性在实际应用中并没有太大的实际意义。</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/208780#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 27 Jun 2008 18:35:17 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/208780</link>
        <guid>http://liuwei1981.javaeye.com/blog/208780</guid>
      </item>
      <item>
        <title>Web2.0摄影作品网站开发要注意的东西</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/206970" style="color:red;">http://liuwei1981.javaeye.com/blog/206970</a>&nbsp;
          发表时间: 2008年06月23日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp; 准备做一个web2.0的摄影作品展示网站,网站的用户群定位是摄影爱好者,参考了一些资料,做这个类型网站需要注意的东西.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.数据库设计,在最初的设计,要考虑当网站发展后,访问量增加后,如何做数据库的扩展和集群.数据结构设计要合理,要遵循数据库设计规范.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这么做最大的好处是后期DB的集群,多web集群,但单独的一台数据库,最终网站的性能瓶颈都在数据库,一旦web集群不能解决网站性能,需要做db集群以解决DB性能瓶颈时候,好的设计优势就体现出来了,并且要设计好程序架构,保持好的扩展性,以备应付以后的网站发展瓶颈.</p>
<p>&nbsp;&nbsp; </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.做摄影作品网站,图片的的贮存尤为重要.&nbsp;网站的设计,要考虑用户和最终的文件的海量问题.如果图片全部贮存在web服务器的一个分区上,即使设计考虑到每个用户一个目录,但当网站访问量到了一定数量,磁盘的IO高的惊人.文件系统也是一个数据库,单独的大文件无所谓,关键是几百G的零碎文件,大量的读写操作,最终的结果是系统崩溃,数据丢失,文件系统的一个链断了,用户的数据全部丢失!并且文件系统的损害,RAID不能恢复.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; web2.0前期的设计要考虑应付海量贮存的考虑,使用分布式文件贮存.</p>
<p>&nbsp; </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.用户文件上传.web上传的时候,由于数据传输的原因,线程是保持连接的,就需要吧上传和其他的消耗资源的应用分离独立出来,做异步分布式上传.</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/206970#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 23 Jun 2008 08:44:43 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/206970</link>
        <guid>http://liuwei1981.javaeye.com/blog/206970</guid>
      </item>
      <item>
        <title>飞鱼编辑器eWebEditor 空提交导致TOMCAT崩溃</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/206405" style="color:red;">http://liuwei1981.javaeye.com/blog/206405</a>&nbsp;
          发表时间: 2008年06月20日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp;&nbsp; 前几天新上线项目,tomcat服务器莫名关闭的问题终于发现问题的原因了.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #ff0000;">问题在于最新使用的富文本编辑器----飞鱼编辑器.</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 这几天一直在分析发生问题的原因与情景,发现:</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 网站前台访问不会发生tomcat自动关闭退出的原因,一旦网站后台维护人员进行信息更新,发生tomcat关闭原因.因为在周末两天,服务器一直运行正常,一到工作日,星期一上午就发生了tomcat自动关闭退出问题.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;把精力放到后台,一开始怀疑是上传过大的文件,导致服务器自动关闭退出,但经过了压力测试,在服务器允许的文件大小之内,上传是不会导致服务器自动关闭退出的.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 结果在一次无意测试,发现了tomcat自动关闭,检查提交信息,发现是最近更换的富文本编辑器 飞鱼编辑器提交了空内容,结果服务器立刻自动关闭.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 检查飞鱼编辑器,发现了upload.jsp页面的这一段代码:</p>
<pre name="code" class="java">if(sTemp.equals("")) 
{ 
System.exit(0); 
} </pre>
<p>&nbsp;<img src="../../images/smiles/icon_mad.gif" alt="" />怪不得,一提交空值,tomcat就关闭退出,一开始还以为是spring哪里出了问题,把上面代码改成:</p>
<p>&nbsp;&nbsp; </p>
<pre name="code" class="java">if(sTemp.equals("")) 
{ 
sTemp=" "} </pre>
<p>&nbsp;再次提交空值,ok,系统正常,服务器也没有再次发生自动关闭的状况.</p>
<p>&nbsp;</p>
<p>&nbsp;顺便,把这个页面的System.out全部注释掉,本来在log4j配置里,只输出error信息,结果自从使用了这个编辑器,服务器后台一直大段的打印提交的内容值,到查日志的时候,十分影响阅读.</p>
<p>&nbsp;</p>
<p>&nbsp; 本来,这个系统最初使用的编辑器是tinymec,而且汉化也全部做好了,使用起来也丝毫不逊色于飞鱼,结果是用户以前使用的一套asp系统,一直使用飞鱼编辑器,强烈要求使用这个编辑器,才发生了这样一个郁闷的错误.</p>
<p>&nbsp; 终于解决了.&nbsp;</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/206405#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 20 Jun 2008 17:33:45 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/206405</link>
        <guid>http://liuwei1981.javaeye.com/blog/206405</guid>
      </item>
      <item>
        <title>dwr使用中过程中出现进程死锁导致服务器死机</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/205112" style="color:red;">http://liuwei1981.javaeye.com/blog/205112</a>&nbsp;
          发表时间: 2008年06月18日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp; </p>
<div id="message_body">
<p>&nbsp;&nbsp;&nbsp; 我的项目中使用了dwr2.0版本,在最初使用的时候出现了如下的报错： 例外被抛出且未被接住,一直找不到解决的方法,在javaeye上找到<a href="../../../blog/147795"><span style="color: #108ac6;">dwr应用时请注意（初学者）</span></a>&nbsp;,使用了博主提供的解决方案jar包,终于能正常使用了.&nbsp;</p>
<p>&nbsp;&nbsp; 但最近dwr出现了一个问题,造成服务器多次出现死锁,然后由于服务器分配资源耗尽,导致tomcat死机,查看日志,输入多次以下错误,最后tomcat被关闭:</p>
<p>ERROR: 2008-06-18 07:12:11,912: CommonsLoggingOutput[line:75]: DefaultScriptSessionManager.invalidate): removeCount=0 when invalidating: DefaultScriptSession[id=${scriptSessionId}403]</p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp; 查找解决方法,但是找到的唯一的匹配方法是删除多余的dwr包,检查过web配置,只有一个dwr包,,现在服务器几乎是一到下午四点左右就死机,需要重启,十分郁闷.</p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp; 后来有一篇文章说,在dwr2.0.2以前的版本会出现这种错误,原因在于DefaultScriptSessionManager这个类中的一个方法,它的一个循环处理应该放到同步线程处理当中.</p>
<p>&nbsp;&nbsp; 我原来使用的dwr包是2.0.4,但看过博主提供的解决jar包,这个类是修改的2.0.2以前的版本.</p>
<p>&nbsp;&nbsp; 找到2.0.4中的类,讲DefaultScriptSessionManager类覆盖了博主的解决jar包,重新覆盖了jar包.</p>
<p>&nbsp;&nbsp; 服务器运行了一段时间,没有出现以上错误,但由于还没有到错误发生的特定时间,还没办法确认修改是否有效.</p>
<p>&nbsp;</p>
<p>&nbsp; &nbsp; 附件是我修改了DefaultScriptSessionManager的dwr的jar包.</p>
<p>&nbsp;&nbsp;&nbsp; 如果修改无效的话,附件就处理掉,呵呵.</p>
</div>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/205112#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 18 Jun 2008 13:58:11 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/205112</link>
        <guid>http://liuwei1981.javaeye.com/blog/205112</guid>
      </item>
      <item>
        <title>新项目完成上线</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/203748" style="color:red;">http://liuwei1981.javaeye.com/blog/203748</a>&nbsp;
          发表时间: 2008年06月15日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp; 最近一段时间一直在忙着完成这个项目,是一个政府门户网站,开发时间由于一些特殊原因,非常短,很快完成后,在前几天正式上线试运行,工作也主要是完成用户提出的新的修改要求,修正一些bug.</p>
<p>&nbsp; 运行还不错,这几天主要就是检测服务器运行状态,保证服务运行正常.</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/203748#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 15 Jun 2008 17:53:47 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/203748</link>
        <guid>http://liuwei1981.javaeye.com/blog/203748</guid>
      </item>
      <item>
        <title>Spring+Struts2+Hibernate,tomcat5.5不定时自动关闭</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/203513" style="color:red;">http://liuwei1981.javaeye.com/blog/203513</a>&nbsp;
          发表时间: 2008年06月15日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp; 最近完成一个网站,使用了Spring+Struts2+Hibernate3.2框架,spring整合了struts2和hibernate,由spring管理struts的Action类和heibernate.</p>
<p>&nbsp;&nbsp; 在项目完成后,部署上线,在前几天运转正常,但在昨天,突然发现tomcate服务器会不定时的自动关闭,查看日志,没有发生大的错误,但服务器就是莫名其妙的自动关闭了.</p>
<p>&nbsp;&nbsp; 仔细查看日志,发现了这样一段:</p>
<p>&nbsp;&nbsp; </p>
<pre name="code" class="xml"> Closing Spring root WebApplicationContext
 support.XmlWebApplicationContext (doClose:823) - </pre>
<pre name="code" class="xml">Closing org.springframework.web.context.support.XmlWebApplicationContext</pre>
<pre name="code" class="xml">@1a6684f: display name [Root WebApplicationContext]; startup date [Sat Jun 14 14:32:40 CST 2008]; </pre>
<pre name="code" class="xml">root of context hierarchy
support.DefaultListableBeanFactory (destroySingletons:340) - </pre>
<pre name="code" class="xml">Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory</pre>
<pre name="code" class="xml">@24de7d: defining beans [dataSource,sessionFactory,</pre>
<pre name="code" class="xml">transactionManager,org.springframework.aop.config.internalAutoProxyCreator,</pre>
<pre name="code" class="xml">ServiceMethods,org.springframework.aop.support.DefaultBeanFactoryPointcutAdvisor#0,</pre>
<pre name="code" class="xml">txAdvice,hibernateTemplate,commonService,</pre>
<pre name="code" class="xml">baseService,org.springframework.aop.support.DefaultBeanFactoryPointcutAdvisor#1,</pre>
<pre name="code" class="xml">purviewService,staticService,complainService,userService,linkService,departmentService,</pre>
<pre name="code" class="xml">sequenceService,newsService,categoryService,imageService,GovpubService,TypeService,</pre>
<pre name="code" class="xml">WorkGuideService,ApplyService,AddonsService,</pre>
<pre name="code" class="xml">QyxxService,org.springframework.aop.support.DefaultBeanFactoryPointcutAdvisor#2,</pre>
<pre name="code" class="xml">mailSender,mailMessage,mailService,indexAction,newsAction,complainAction,complainMngAction,</pre>
<pre name="code" class="xml">staticAction,loginAction,linkAction,sysmngAction,movmentAction,creditPubAction,speTopicAction,</pre>
<pre name="code" class="xml">partPoliticAction,conAlertAction,govCultureAction,workStudyAction,departmentAction,userAction,</pre>
<pre name="code" class="xml">imageAction,noticeAction,GovpubAction,OfficeAction,WorkGuideAction,GovpubIndexAction,ApplyAction,</pre>
<pre name="code" class="xml">qyxxAction,org.springframework.aop.support.DefaultBeanFactoryPointcutAdvisor#3,newsDwr,</pre>
<pre name="code" class="xml">categoryDwr,deptDwr,userDwr,linkDwr]; root of factory hierarchy
hibernate3.LocalSessionFactoryBean (destroy:981) - Closing Hibernate SessionFactory
impl.SessionFactoryImpl (close:769) - closing</pre>
<p>&nbsp;显然是spring自动关闭了web容器,并将其管理的hibernate的session关闭,日志最后的关闭的bean类都是网站配置使用的action和service类.</p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp; 在google了这方面的问题,没有找到类似的,只有在javaeye上找到一篇问题相同的提问blog,没有人留言解答.十分郁闷.</p>
<p>&nbsp;&nbsp; 初步猜测,是服务器资源紧张导致tomcat自动关闭,在其中的一个service类中,找到了一个查询方法,使用了synchronized修饰关键字,这个方法根据用户输入的条件数据,大概就几万的数据量,且该功能在网站上使用非常频繁,是不是这个原因导致资源用尽服务器自动关闭?</p>
<p>&nbsp;&nbsp; 把方法都去掉这个修饰关键字,网站运行没有发生以上错误,但发生错误的环境已经不再了(发生错误的时候,网站后台用户正在频繁点击录入数据),不知道是否解决这个问题,还会不会再次发生.</p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp; 不知道有没有人遇到在ssh开发框架web应用中,发生过tomcat莫名关闭的问题,希望有哪位大虾给予回答.</p>
<p>&nbsp;&nbsp; </p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/203513#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 15 Jun 2008 16:50:49 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/203513</link>
        <guid>http://liuwei1981.javaeye.com/blog/203513</guid>
      </item>
      <item>
        <title>把网站改成黑白色调</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/195408" style="color:red;">http://liuwei1981.javaeye.com/blog/195408</a>&nbsp;
          发表时间: 2008年05月21日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp;&nbsp; 这两天很多网站都将网站改成了黑白色调，来哀悼四川汶川地震的遇难者。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 我们公司的两个主营网站，作为商业网站，颜色和样式都很艳丽，所以，需要立刻修改样式。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 找到了这样的样式：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; </p>
<pre name="code" class="html">break-all;filter:gray  </pre>
<p>&nbsp;&nbsp; 这段代码的解释是增加灰色的滤镜，这样不需要修改图片和网站的样式，就实现了网站改成了黑白色调。</p>
<p>&nbsp;&nbsp; 虽然这段代码只针对IE有效，但我们的两个网站也不是靠流量，而且基本上点击量都来自于IE用户。</p>
<p>&nbsp;&nbsp;&nbsp; 修改css样式后，发现对flash没有起作用，又找到这样的代码</p>
<p>&nbsp;&nbsp;&nbsp; </p>
<pre name="code" class="html">&lt;param value="false" name="menu"/&gt;
&lt;param value="opaque" name="wmode"/</pre>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp; 将这段代码加到&lt;objec&gt;&lt;/objec&gt;中，flash也不需要修改就呈现出了黑白色调。</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/195408#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 21 May 2008 19:39:54 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/195408</link>
        <guid>http://liuwei1981.javaeye.com/blog/195408</guid>
      </item>
      <item>
        <title>java解惑------增量操作</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/192230" style="color:red;">http://liuwei1981.javaeye.com/blog/192230</a>&nbsp;
          发表时间: 2008年05月12日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp;&nbsp;下面的程序对一个变量重复的进行增量操作，然后打印它的值，那么打印输出是什么？</p>
<p>&nbsp;&nbsp;&nbsp; </p>
<pre name="code" class="java">public class Increment{
    public static void main(String[]  args){
      int j=0;
      for(int i=0;i&lt;100;i++){
         j = j++;
      }
      System.out.println(j);
   }
}</pre>
<p>&nbsp;&nbsp; 乍一看，这个程序输出是100，但实际运行后，输出为0.</p>
<p>&nbsp;&nbsp; 问题就是在增量操作的语句上：</p>
<p>&nbsp;</p>
<pre name="code" class="java">         j = j++;
</pre>
<p>&nbsp;</p>
<p>&nbsp;&nbsp; 当++操作符被置于一个变量值之后，其作用是一个后缀增量操作符：表达式j++的值等于j在执行增量操作之前的初始值，因此，这个语句首先保存j的值，然后将j设置为其值加一，最后将j复位到它的初始值，换句话说，这个赋值操作等价于下面的语句序列：</p>
<p>&nbsp;&nbsp;&nbsp; </p>
<pre name="code" class="java">int tmp = j;
j = j + 1;
j = tmp;</pre>
<p>&nbsp;</p>
<p>程序重复100次之后，j的值还是等于它在循环之前的值，即0；</p>
<p>修正这个程序只需从循环中移除无关的赋值操作，只留下：</p>
<pre name="code" class="java">for(int i=0;i&lt;100;i++){
   j++;
}</pre>
<p>&nbsp;</p>
<p>不要在单个的表达式中对相同的变量赋值超过一次。</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/192230#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 12 May 2008 14:30:51 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/192230</link>
        <guid>http://liuwei1981.javaeye.com/blog/192230</guid>
      </item>
      <item>
        <title>struts2 redirect-action 传递参数</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/191329" style="color:red;">http://liuwei1981.javaeye.com/blog/191329</a>&nbsp;
          发表时间: 2008年05月09日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在做一个系统，使用struts2框架，在提交一个请求后，将获取的数据对象再要生成一个序列号，为了防止刷新生成冗余序列号，就在请求处理完成后，直接重定向到显示该信息的action中：</p>
<pre name="code" class="xml">&lt;action name="enterpreinfo" class="preinfoBusinessAction"	method="enterPreinfoSub"&gt;
  &lt;result name="success" type="redirect-action"&gt;
     showpreinfo?preinfo.order_number=${preinfo.order_number}&amp;amp;preinfo.company_name=${preinfo.company_name}
  &lt;/result&gt;
 &lt;result name="error" type="redirect"&gt;
	&lt;param name="location"&gt;/error.jsp&lt;/param&gt;
 &lt;/result&gt;
&lt;/action&gt;</pre>
<p>&nbsp;因为使用了redirect-action，所以要注意不能将showpreinf？preinfo.order_number=${preinfo.order_number}写成showpreinf.action？preinfo.order_number=${preinfo.order_number}</p>
<p>在这个配置文件里，多个参数的连接符使用了"&amp;amp;"，但XML的语法规范，应该使用"&amp;amp;"代替"&amp;"，原理和HTML中的转义相同，开始没有注意，在struts分析配置文件时，总是报出这样的错误：</p>
<pre name="code" class="java">The reference to entity "preinfo" must end with the ';' delimiter.
</pre>
<p>&nbsp;</p>
<p>进行上面说明的替换后，就正常了。</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/191329#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 09 May 2008 10:23:06 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/191329</link>
        <guid>http://liuwei1981.javaeye.com/blog/191329</guid>
      </item>
      <item>
        <title>避孕套（程序员笑话）转</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/191041" style="color:red;">http://liuwei1981.javaeye.com/blog/191041</a>&nbsp;
          发表时间: 2008年05月08日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp; 一个笑话，挺有意思的</p>
<p>&nbsp; 有一天，软件工业一蹶不振，软件业三大巨头Sun、IBM和微软都决定改做避孕套生意，他们生成的避孕套分别命名为Java避孕套、IBM避孕套和MS避孕套。</p>
<p>&nbsp; 一个使用Java避孕套的顾客来到Sun公司投诉，说戴着不合适，Sun公司回答说要等国际标准组织的ISO制定相应的标准才行，并吹牛说那时他们生成的避孕套将适合每个男人。</p>
<p>&nbsp;&nbsp; 顾客只好转而使用IBM避孕套。可他发现等他读完随套附上的说明书后，它的妻子已经睡着了，他自己也忘了为什么要用IBM避孕套。</p>
<p>&nbsp; 最后，他只好换用MS避孕套。出乎意料的是，MS避孕套非常好用，他很愉快的连续使用了好几个月，突然发现他妻子怀孕了。他非常生气，气势汹汹的找到微软公司，微软的回答是：补丁马上就好！</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/191041#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Thu, 08 May 2008 13:46:12 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/191041</link>
        <guid>http://liuwei1981.javaeye.com/blog/191041</guid>
      </item>
      <item>
        <title>jsp获取当前访问url</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/190686" style="color:red;">http://liuwei1981.javaeye.com/blog/190686</a>&nbsp;
          发表时间: 2008年05月07日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>最近在做一个服务网站的专用服务接口（为网站的大客户），就是为这些客户专做一个web系统，简化客户的操作，每一个客户需求不同，需要对系统做调整和部署，客户访问使用二级域名的方式，比如客户是aaa，二级域名就是aaa. 我的服务web域名.com。</p>
<p>现在在一个tomcat里部署所有的客户专业服务接口系统，这个tomcat和公共服务网站部署不同位置，不是80端口，使用apache（80端口）将该tomcat进行整合，分配二级域名。</p>
<p>现在就是每次在一个公共jsp页面中获取用户访问的url，截取二级域名，根据域名转发到不同的系统中。找到了这样一个方法：</p>
<p>&lt;%<br />&nbsp;String&nbsp; realPath1&nbsp; =&nbsp; "http://"&nbsp; +&nbsp; request.getServerName()&nbsp; +&nbsp; ":"&nbsp; +&nbsp; request.getServerPort()&nbsp; +&nbsp; request.getContextPath()+request.getServletPath().substring(0,request.getServletPath().lastIndexOf("/")+1);&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("web&nbsp; URL&nbsp; 路径:"+realPath1);</p>
<p>%&gt;</p>
<p>有不少资料说，request.getRequestURL()方法可以直接获取访问域名，但实际检测，输出的是该网站资源在服务器的逻辑路径和文件名，这个方法获完整的获取过来，现在就是截取二级域名，进行跳转处理了</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/190686#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 07 May 2008 17:58:38 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/190686</link>
        <guid>http://liuwei1981.javaeye.com/blog/190686</guid>
      </item>
      <item>
        <title>java解惑--动物庄园</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/190085" style="color:red;">http://liuwei1981.javaeye.com/blog/190085</a>&nbsp;
          发表时间: 2008年05月06日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <pre name="code" class="java"> 下面的java程序打印结果是什么？</pre>
<pre name="code" class="java">public class AnimalFarm{
   public static void main(String[] args){
        final String pig = "length: 10";
        final String dog = "length: "+pig.length();
        System.out.println("Animal are equal:" +pig == dog);  
    }
}</pre>
<p>&nbsp;&nbsp;&nbsp;&nbsp;对这个程序进行表面分析后，可能会认为它应该打印Animal are equal： true。毕竟，pig和dog都是final的String类型变量，他们都被初始化为字符串序列&ldquo;length：10&rdquo;。换句话说，被pig和dog引用的字符串是且永远是彼此相等的。然而，==操作符并不测试两个对象是否相等，它测试的是两个对象的引用是否相同。在本例中，他们并非引用到同一个对象。</p>
<p>&nbsp;&nbsp; String类型的编译期常量是内存限定的，任何两个String类型的常量表达式，如果指定的是相同的字符序列，那么他们就用同一个对象引用来表示。如果常量表达式来初始化pig和dog，那么他们确实会指向相同的对象，但是dog并不是常量表示式初始化的，既然语言已经对在常量表达式中允许出现的操作做了限制，而方法调用又不在其中，那么，这个程序就应该打印 Animal are equal： false。</p>
<p>&nbsp; 实际上仍然不对，运行该程序，就会发现它打印的只是false，并没有其他的东西。它没有打印Aniaml are equal：，它怎么不打印这个字符串常量呢？毕竟要打印它才是正确的，+操作符在这里出现了问题，不论式用着将加法还是字符串链接操作，它都比==操作符优先级高，应此，println方式的参数实际上式按照下面的方式计算的：</p>
<pre name="code" class="java">System.out.println(("Animal are equal:"+pig)==dog);</pre>
<p>&nbsp;&nbsp;&nbsp; 这个布尔表达式的值当然是false有一个能够避免此类错误的方式，<strong>在使用字符串连接操作符时候，总是将不平凡的操作时用括号括起来</strong>。</p>
<p>&nbsp;&nbsp; 如果可以的话，<strong>你的代码应该很少依赖于字符串常量的内存限定机制</strong>。</p>
<p>&nbsp;&nbsp; 在<strong>比较对象引用的时候，应该优先使用equals方法而不是==操作符，除非需要比较的是对象的标识而不是对象的值</strong>。很明显，在按照以上原则修改之后，它将打印true：<br />&nbsp;&nbsp;&nbsp; </p>
<pre name="code" class="java">System.out.println("Animal are equal:" +pig.equals(dog));</pre>
<p>&nbsp;</p>
<p>&nbsp; </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; </p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/190085#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 06 May 2008 11:34:43 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/190085</link>
        <guid>http://liuwei1981.javaeye.com/blog/190085</guid>
      </item>
      <item>
        <title>操作系统没有声音，是因为这个原因，汗！</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/185891" style="color:red;">http://liuwei1981.javaeye.com/blog/185891</a>&nbsp;
          发表时间: 2008年04月23日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 今天打开酷狗音乐准备听听开始今天的工作的时候（最近在做一个系统的需求分析），忽然发现系统没有声音了，点击系统栏下的小喇叭，也没有那熟悉的提示音了，把耳机换到另一条机器上，耳机工作正常，看了耳机没问题，系统的声音又没有了。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 说系统的声音又没有了，是因为上次系统也发生了类似的问题，系统杀毒发现了bhctx.dll病毒，杀毒软件清楚不掉，最后使用文件粉碎器去掉，然后声音又正常了，这次也许是同样的问题。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 检索这个bhctx.dll文件，意外的是，系统中没有这个病毒文件（杀毒软件太慢了，直接搜比较快），又想起昨天下了一个flash文件，运行是不是病毒？360提示我的系统flash播放器有一个漏洞，难道是其他的病毒？</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 查找这个漏洞的资料，然后检查是否中了类似的病毒，没有找到解决方法。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 最后，郁闷的我打开了风雷影音，运行昨天下载的flash小游戏，发现风雷影音的音量调制最小了，然后把声音调大，意外的发现声音又回来了<img src="../../images/smiles/icon_cool.gif" alt="" />。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 看看系统托盘的音量，调制最大，然后吧风雷影音的音量调到没有声音，然后发现系统又没有声音了，点击系统音量，测试声音也听不到。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 郁闷，风雷影音的对系统的声音控制竟然这样有力量？竟然能骗过系统音量？</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/185891#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 23 Apr 2008 14:20:52 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/185891</link>
        <guid>http://liuwei1981.javaeye.com/blog/185891</guid>
      </item>
      <item>
        <title>挺有趣的几张图片</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/182650" style="color:red;">http://liuwei1981.javaeye.com/blog/182650</a>&nbsp;
          发表时间: 2008年04月14日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p><img src="../../upload/picture/pic/11915/9cff31b1-47ac-3094-ba14-e10ca3c6880b.jpg " alt="" /></p>
<p><img src="../../upload/picture/pic/11913/860d9e9d-952d-3846-abb4-5c26addc41c7.jpg " alt="" /></p>
<p><img src="../../upload/picture/pic/11911/a7c1367e-0bc9-38a6-8b26-fa1c572f6cd8.jpg " alt="" /></p>
<p><img src="../../upload/picture/pic/11909/a3cfbed4-fd66-3653-bc51-f6a2a2656cbc.jpg " alt="" /></p>
<p>&nbsp;</p>
<p><img src=" http://liuwei1981.javaeye.com/upload/picture/pic/11907/c41ceddf-64cd-36bb-9994-84ed4ccbde54.jpg " alt="" /></p>
<p>&nbsp;</p>
<p><img src="../../upload/picture/pic/11905/d9a2e44a-fdf4-311e-af21-1b5b01ccf098.jpg " alt="" /></p>
<p>&nbsp;</p>
<p><img src=" http://liuwei1981.javaeye.com/upload/picture/pic/11903/425591f4-454e-3204-9e52-e2c9d1f0aaf5.jpg " alt="" /></p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/182650#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 14 Apr 2008 17:22:03 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/182650</link>
        <guid>http://liuwei1981.javaeye.com/blog/182650</guid>
      </item>
      <item>
        <title>Jeff Hanson -《Jeff Hanson》很不错</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/181584" style="color:red;">http://liuwei1981.javaeye.com/blog/181584</a>&nbsp;
          发表时间: 2008年04月11日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>这张专辑很好听，本人觉得<img src="../../images/smiles/icon_biggrin.gif" alt="" /><img src="../../images/smiles/icon_idea.gif" alt="" />好听到极点。<br /><br />如果事先不知道Jeff Hanson是男生的话，一定会觉得这明明是一个女生在唱歌。<br />Jeff Hanson？你也许说的是Jennifer Hanson（一个著名乡村女歌手）吧？<br /><br />那好！我现在向大家明确的宣布：<br />千万不要被专辑内的声音所迷惑！<br /><span style="font-size: 21pt; line-height: 120%;">他真的是一个男生！！！！</span><br /><br />Jeff Hanson是美国非常著名的音乐制作人，但是，更著名的大概就是他那种过于像女声的假音了吧！<br /><br />不过你听过之后如果还是觉得不能接受的话，<br />那好吧！<br /><br />你就告诉你自己~<br />这个是Jennifer Hanson改行唱民谣摇滚了~<img src="../../images/smiles/icon_biggrin.gif" alt="" /><img src="../../images/smiles/icon_wink.gif" alt="" /></p>
<p>附件是Jeff Hanson的 just like me，试着听听吧</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/181584#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 11 Apr 2008 10:24:42 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/181584</link>
        <guid>http://liuwei1981.javaeye.com/blog/181584</guid>
      </item>
      <item>
        <title>《struts2权威指南》的一个例子的问题</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/180683" style="color:red;">http://liuwei1981.javaeye.com/blog/180683</a>&nbsp;
          发表时间: 2008年04月09日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;最近在做一个项目，用了struts2的框架，以前有过webwork的使用经验，因为当时struts的资料比较少，推荐的比较好的资料就是李刚的《struts2权威指南》，就买了来参考。</p><p>书不错，内容比较全，讲解也不错，感觉还不错。</p><p>最近在看struts2标签部分，一个例子让我郁闷了。</p><p>标签部分的if/else/elseif标签，有这样一个示例：</p><p>&nbsp;</p><p>&lt;s:set name=&quot;age&quot; value=&quot;29&quot;/&gt;</p><p>&lt;s:if test=&quot;$(age &gt; 60)&quot;&gt;</p><p>老年</p><p>&lt;/s:if&gt;</p><p>&lt;s:elseif test=&quot;$(age &gt; 35)&quot;&gt;</p><p>中年</p><p>&lt;/s:elseif&gt;</p><p>&lt;s:elsefi test=&quot;$(age &gt; 15)&quot;&gt;</p><p>青年</p><p>&lt;/s:elseif&gt;</p><p>&lt;s:else&gt;</p><p>少年</p><p>&lt;/s:else&gt;</p><p>运行该例子，报出错误，大意是test的boolean表达式不符合定义的规范。感觉是$符号的关系，去掉后正常，但test的boolean检查无效，也就是age的值取不到</p><p>&nbsp;</p><p>类似的使用方式哪位有运行通过的例子，或者是我使用上的错误？望诸位不吝赐教。</p><p>&nbsp;</p><p>顺便说一句，javaeye编辑器的代码页面好像出了点问题，呵呵，不能录入代码了，所以只能是直接写进去了，hehe.</p><p>&nbsp;</p><p>&nbsp;</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/180683#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 09 Apr 2008 09:01:07 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/180683</link>
        <guid>http://liuwei1981.javaeye.com/blog/180683</guid>
      </item>
      <item>
        <title>程序员的愿望</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/178261" style="color:red;">http://liuwei1981.javaeye.com/blog/178261</a>&nbsp;
          发表时间: 2008年04月01日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>有一天一个程序员见到了上帝。</p><p>上帝：小伙子，我可以满足你的一个愿望。</p><p>程序员：我希望中国队能再次打进世界杯。</p><p>上帝：这个啊，这个不好办，你还说下一个吧！</p><p>程序员：那希望每天都能休息6个小时以上。</p><p>上帝：这个。。。。。。还是让中国队打进世界杯好了。</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/178261#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 01 Apr 2008 08:26:26 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/178261</link>
        <guid>http://liuwei1981.javaeye.com/blog/178261</guid>
      </item>
      <item>
        <title>应用spring应用javamail发送邮件</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/169189" style="color:red;">http://liuwei1981.javaeye.com/blog/169189</a>&nbsp;
          发表时间: 2008年03月07日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>使用spring2.X，来实现javaMail发送邮件，手头上正好有一本《精通spring2.x企业应用开发详解》，按照书上的例子，很快配好了例子和测试demo，</p>
<p>spring的配置文件：</p>
<pre name="code" class="java">&lt;?xml version="1.0" encoding="UTF-8"?&gt;   
&lt;beans xmlns="http://www.springframework.org/schema/beans"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:aop="http://www.springframework.org/schema/aop"
 xmlns:tx="http://www.springframework.org/schema/tx"
 xsi:schemaLocation="
 http://www.springframework.org/schema/beans 
 http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
 http://www.springframework.org/schema/tx
 http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
 http://www.springframework.org/schema/aop
 http://www.springframework.org/schema/aop/spring-aop-2.0.xsd"&gt;

	&lt;bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl"&gt;
		&lt;property name="host" value="smtp.163.com"/&gt;
		&lt;property name="username" value="*******"/&gt;
		&lt;property name="password" value="*******"/&gt;
		&lt;property name="javaMailProperties"&gt;
			&lt;props&gt;
				&lt;prop key="mail.smtp.auth"&gt;true&lt;/prop&gt;
				&lt;prop key="mail.smtp.timeout"&gt;25000&lt;/prop&gt; 
			&lt;/props&gt;
		&lt;/property&gt;
	&lt;/bean&gt;

	&lt;bean id="mailMessage" class="org.springframework.mail.SimpleMailMessage"&gt; 
		&lt;property name="from" value="******@163.com"/&gt; 
		&lt;property name="replyTo" value="******@163.com"/&gt;
		&lt;property name="cc" value="*********@163.com"/&gt;
   &lt;/bean&gt; 

	&lt;bean id="mailService" class="com.service.mail.MailService"&gt;
		&lt;property name="mailSender" ref="mailSender"/&gt;
		&lt;property name="mailMessage" ref="mailMessage"/&gt;
	&lt;/bean&gt;
    
&lt;/beans&gt; </pre>
<p>但是在实际测试的时候，发送邮件总是报出异常错误：org.springframework.mail.MailAuthenticationException: Authentication failed; nested exception is javax.mail.AuthenticationFailedException</p>
<p>这个发送的邮箱是我刚刚注册的，在按照网上找到的解决方法的资料，仍没有解决后，把邮箱改为我之前一直使用的邮箱，结果发送邮件就成功了，郁闷，这算什么问题？。。。。<img title="cool" src="../../images/smiles/icon_cool.gif" border="0" alt="cool" />，有哪位大虾能给个说明么？</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/169189#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 07 Mar 2008 17:19:27 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/169189</link>
        <guid>http://liuwei1981.javaeye.com/blog/169189</guid>
      </item>
      <item>
        <title>apache2.2+tomcat5.5+IIS6虚拟主机多实例配置</title>
        <author>liuwei1981</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuwei1981.javaeye.com">liuwei1981</a>&nbsp;
          链接：<a href="http://liuwei1981.javaeye.com/blog/168982" style="color:red;">http://liuwei1981.javaeye.com/blog/168982</a>&nbsp;
          发表时间: 2008年03月07日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>最近完成了一个apache整合tomcat和iis实现虚拟主主机多实例的配置，现在整理一下。</p>
<p>需求说明：公司有一个web服务器，共部署了两个web应用（拥有独立的域名），使用了一个端口为80的tomcat5.0，配置了多host方式实现了两个web应用同时运行，但因为业务上的原因，需要将两个web应用分别部署到两个tomcat中。同时也向在服务器上部署一个邮件服务器专门用作企业邮箱，就想到了用apache来实现这个需求。</p>
<p>经过了今天是资料收集，部署和测试，现在已经在测试服务器上部署通过，下面是整理的步骤： </p>
<p>1.基本配置：apache2.2，tomcat5.5，iis6，使用了一个受限制的邮件服务器（测试用）。</p>
<p>2.apache的安装测试&nbsp; 安装apache服务器，使用默认推荐配置参数，使用80端口，启动测试通过（<a href="http://127.0.0.1/">http://127.0.0.1</a>,页面显示It Works，安装成功）；</p>
<p>3.安装tomcat5.5服务器共安装两个tomcat服务器，并修改服务端口号（server.xml文件），将配置的tomcat服务器启动，测试是否能够同时正常运行。</p>
<p>4.apache中的tomcat虚拟主机配置4.1apache2.2版本除了增加虚拟主机配置信息外，还需要修改默认目录安全配置，否则无法访问服务：</p>
<pre name="code" class="java">&lt;Directory /&gt;
     Options FollowSymLinks
     AllowOverride None
     Order deny,allow
     Deny from all
     Satisfy all
&lt;/Directory&gt;

</pre>
<p>&nbsp;&nbsp;</p>
<p>修改为：</p>
<p>&nbsp;</p>
<pre name="code" class="java">&lt;Directory /&gt;
     Options FollowSymLinks
     AllowOverride None
&lt;/Directory&gt;

</pre>
<p>&nbsp;&nbsp;</p>
<p>其实就是将后三项配置去掉。</p>
<p>&nbsp;</p>
<p>4.2 打开conf/httpd.conf文件，将Include conf/extra/httpd-vhosts.conf前注释去掉。</p>
<p>4.3 在conf/extra/httpd-vhosts.conf文件中进行虚拟主机配置 </p>
<p>&nbsp;</p>
<pre name="code" class="java">&lt;VirtualHost *:80&gt;
    DocumentRoot D:\www\tomcat51\webapps\ROOT
    ServerName test1.com

    ServerAlias www.test1.com

    DirectoryIndex  index.html  index.html.var  index.jsp
&lt;/VirtualHost&gt;

&lt;VirtualHost *:80&gt;
    DocumentRoot D:\www\tomcat52\webapps\ROOT
    ServerName test2.com

    ServerAlias  www.test2.com
    DirectoryIndex  index.html  index.html.var  index.jsp
&lt;/VirtualHost&gt; 

</pre>
<p>&nbsp;&nbsp;</p>
<p>此时,在www目录下,假若有html文件,应该就已经可以根据不同的虚拟主机访问不同的html文件了. </p>
<p>&nbsp;</p>
<p>4.4 apache服务器整合tomcat服务器</p>
<p>jk connector 配置jk是tomcat和apache之间的连接器,apache和tomcat通过jk来进行通讯，jk支持多个不同的instance转发。jk的调度是根据workers.properties来的。</p>
<p>在自己的engine 中配置jvmRoute值，和workers.properties对应；</p>
<p>&nbsp;</p>
<p>在httpd.conf中</p>
<p>&nbsp;</p>
<pre name="code" class="java">load module:LoadModule jk_module modules/mod_jk-apache.so
JkWorkersFile conf/workers.properties
JkLogFile      logs/mod_jk.log
JkLogLevel     info
JkRequestLogFormat     "%w %V %T %U %q"
</pre>
<p>&nbsp;&nbsp; </p>
<p>conf/workersproperties文件配置：</p>
<p>&nbsp;</p>
<pre name="code" class="java">conf/workerspropertiesworker.list=host2,host1

worker.host1.port=8009
worker.host1.host=host1.com
worker.host1.type=ajp13
worker.host1.lbfactor=1
worker.host1.recycle_timeout 120

worker.host2.port=8010
worker.host2.host=host2.com
worker.host2.type=ajp13
worker.host2.lbfactor=1
worker.host2.recycle_timeout 120 

</pre>
<p>&nbsp;&nbsp;</p>
<p>然后，在每个virtualhost配置里面增加：</p>
<p>&nbsp;</p>
<pre name="code" class="java">&lt;VirtualHost *:80&gt;
     ServerName www.test2.com     ....
     JkMount  /* host1
&lt;/VirtualHost&gt;

</pre>
<p>&nbsp;&nbsp;</p>
<p>这是配置tomcat需要拦截的文件。默认全部都由tomcat拦截处理至此，apache整合tomcat基本完毕，其中一个web应用需要配置tomcat数据源，配置只需在tomcat中的server.xml文件的</p>
<pre name="code" class="java">&lt;host&gt;&lt;/host&gt;

</pre>
<p>&nbsp;中间增加：</p>
<pre name="code" class="java">&lt;Context path="" docBase="${catalina.home}/webapps/creditworld" reloadable="true" debug="0"&gt; 
&lt;Resource name="jdbc/SQLWEBDB" auth="Container"   type="javax.sql.DataSource"  driverClassName="net.sourceforge.jtds.jdbc.Driver"
      url="jdbc:jtds:sqlserver://127.0.0.1:1433;DatabaseName=webdbcredit" username="sa"
      password="sa" maxActive="150" maxIdle="500" maxWait="-1" removeAbandoned="true" removeAbandonedTimeout="60"
   logAbandoned="true"/&gt;
&lt;/Context&gt; 

 

</pre>
<p>&nbsp;</p>
<p>5.apache中的iis虚拟主机配置 安装iis和邮件服务器，并安装邮件服务器说明，将邮件服务器配置到iis中。</p>
<p>&nbsp;</p>
<p>conf/httpd.conf配置修改</p>
<pre name="code" class="java">LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_module modules/mod_proxy.so 

</pre>
<p>&nbsp;&nbsp;</p>
<p>将以上两项配置前的注释去掉。 </p>
<p>&nbsp;</p>
<p>在conf/extra/httpd-vhosts.conf文件中进行虚拟主机配置,iis邮件服务使用90端口</p>
<p>&nbsp;</p>
<pre name="code" class="java">&lt;VirtualHost *:80&gt;
    ProxyPreserveHost On
    DocumentRoot C:\mail\Web
    Alias /WinWebMail  C:\mail\Web
    ServerName www.mailtest.com
    DirectoryIndex  default.asp index.html  index.html
    ProxyPass / http://127.0.0.1:90/
    ProxyPassReverse / http://127.0.0.1:90/
&lt;/VirtualHost&gt;

</pre>
<p>&nbsp;&nbsp;</p>
<p>iis邮件服务器也配置完毕，测试通过。</p>
          <br/>
          <span style="color:red;">
            <a href="http://liuwei1981.javaeye.com/blog/168982#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 07 Mar 2008 10:54:47 +0800</pubDate>
        <link>http://liuwei1981.javaeye.com/blog/168982</link>
        <guid>http://liuwei1981.javaeye.com/blog/168982</guid>
      </item>
  </channel>
</rss>