﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-我的java历程-随笔分类-Jsp&amp;Servlet</title><link>http://www.blogjava.net/phe441/category/18252.html</link><description /><language>zh-cn</language><lastBuildDate>Fri, 06 Jul 2007 18:55:43 GMT</lastBuildDate><pubDate>Fri, 06 Jul 2007 18:55:43 GMT</pubDate><ttl>60</ttl><item><title>tomcat5.5.17+jstl1.2+servlet2.5+jsp2.1配置</title><link>http://www.blogjava.net/phe441/archive/2007/07/06/128560.html</link><dc:creator>landril</dc:creator><author>landril</author><pubDate>Fri, 06 Jul 2007 05:35:00 GMT</pubDate><guid>http://www.blogjava.net/phe441/archive/2007/07/06/128560.html</guid><wfw:comment>http://www.blogjava.net/phe441/comments/128560.html</wfw:comment><comments>http://www.blogjava.net/phe441/archive/2007/07/06/128560.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/phe441/comments/commentRss/128560.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/phe441/services/trackbacks/128560.html</trackback:ping><description><![CDATA[<p>tomcat5.5.17+jstl1.2+servlet2.5+jsp2.1配置<br><br>在此我使用的环境是：<br>tomcat5.5.17<br>jstl1.2<br>servlet2.5<br>jsp2.1<br><br>我以一个简单的例子hello1来说明吧，发布工程时最重要的就是目录结构了，hello1是根目录，放在tomcat中的webapps里，先看看目录结构：<br>hello1\index.jsp<br>hello1\response.jsp<br>hello1\WEB-INF\lib\javaee.jar<br>hello1\WEB-INF\lib\jsf-api.jar<br>hello1\WEB-INF\lib\jsf-impl.jar<br>hello1\WEB-INF\lib\jstl-1.2.jar<br>hello1\WEB-INF\web.xml<br><br>如果你按照以上目录发布工程，抛出以下异常：<br>(1)&nbsp; java.lang.NoClassDefFoundError: javax/el/ExpressionFactory<br>(2)&nbsp; 或打开页面后显示：<br><br></p>
<h1>HTTP Status 404 - /hello1/</h1>
<hr noShade SIZE=1>
<p><strong><font style="BACKGROUND-COLOR: #525d76" color=#ffffff>type</font></strong> Status report</p>
<p><strong><font style="BACKGROUND-COLOR: #525d76" color=#ffffff>message</font></strong> <u>/hello1/</u></p>
<p><strong><font style="BACKGROUND-COLOR: #525d76" color=#ffffff>description</font></strong> <u>The requested resource (/hello1/) is not available.</u></p>
<hr noShade SIZE=1>
<h3>Apache Tomcat/5.5.17</h3>
<p><br>则将javaee.jar包再copy一份放在tomcat目录的common\lib下就不会了。<br>关于用到的javaee.jar、jsf-api.jar、jsf-impl.jar、jstl-1.2.jar这四个包可以通过myeclipse中获得，如果你安装了myeclipse5.5的话，我安装的是MyEclipse 5.5.1 GA，这四个包的所在的目录是：MyEclipse 5.5.1 GA\eclipse\plugins\com.genuitec.eclipse.j2eedt.core_5.5.1\data\libraryset\EE_5\<br><br>到此，再给出具体的文件代码吧。<br>(1)&nbsp; hello1\index.jsp<br><br>&lt;%@ taglib uri="<a href="http://java.sun.com/jsp/jstl/core">http://java.sun.com/jsp/jstl/core</a>" prefix="c" %&gt;<br>&lt;%@ taglib uri="<a href="http://java.sun.com/jsp/jstl/functions">http://java.sun.com/jsp/jstl/functions</a>" prefix="fn" %&gt;</p>
<p>&lt;html&gt;<br>&lt;head&gt;&lt;title&gt;Hello&lt;/title&gt;&lt;/head&gt;<br>&lt;body bgcolor="white"&gt;<br>&lt;h2&gt;Hello, my name is Duke. What's yours?&lt;/h2&gt;<br>&lt;form method="get"&gt;<br>&lt;input type="text" name="username" size="25"&gt;<br>&lt;p&gt;&lt;/p&gt;<br>&lt;input type="submit" value="Submit"&gt;<br>&lt;input type="reset" value="Reset"&gt;<br>&lt;/form&gt;</p>
<p>&lt;c:if test="${fn:length(param.username) &gt; 0}" &gt;<br>&nbsp; &lt;<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#37;&#64;&#105;&#110;&#99;&#108;&#117;&#100;&#101;">%@include</a> file="response.jsp" %&gt;<br>&lt;/c:if&gt;<br>&lt;/body&gt;<br>&lt;/html&gt;<br><br>(2)&nbsp; hello1\response.jsp<br><br>&lt;h2&gt;&lt;font color="black"&gt;Hello, ${param.username}!&lt;/font&gt;&lt;/h2&gt;<br><br>(3)&nbsp; hello1\WEB-INF\web.xml<br><br>&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt; </p>
<p>&lt;web-app xmlns="<a href="http://java.sun.com/xml/ns/javaee">http://java.sun.com/xml/ns/javaee</a>"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xmlns:xsi="<a href="http://www.w3.org/2001/XMLSchema-instance">http://www.w3.org/2001/XMLSchema-instance</a>"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xsi:schemaLocation="<a href="http://java.sun.com/xml/ns/javaee">http://java.sun.com/xml/ns/javaee</a> web-app_2_5.xsd"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; version="2.5"&gt;</p>
<p>&lt;jsp-config&gt;&nbsp;<br>&nbsp;&lt;jsp-property-group&gt;<br>&nbsp;&nbsp;&lt;display-name&gt;hello1&lt;/display-name&gt;<br>&nbsp;&nbsp;&lt;url-pattern&gt;*.jsp&lt;/url-pattern&gt;<br>&nbsp;&nbsp;&lt;el-ignored&gt;false&lt;/el-ignored&gt;<br>&nbsp;&nbsp;&lt;scripting-invalid&gt;false&lt;/scripting-invalid&gt;<br>&nbsp;&nbsp;&lt;is-xml&gt;false&lt;/is-xml&gt;<br>&nbsp;&nbsp;&lt;!-- &lt;include-prelude&gt;/template/prelude.jspf&lt;/include-prelude&gt; --&gt;<br>&nbsp;&nbsp;&lt;!-- &lt;include-coda&gt;/template/coda.jspf&lt;/include-coda&gt; --&gt;<br>&nbsp;&lt;/jsp-property-group&gt; <br>&lt;/jsp-config&gt;<br>&lt;/web-app&gt; </p>
<br>成功之后页面显示为：<br><br>
<h2>Hello, my name is Duke. What's yours?</h2>
<form method=get>
    <input size=25 name=username>
    <p>&#160;</p>
    <input type=submit value=Submit> <input type=reset value=Reset>
</form>
<h2><font color=black>Hello, afdfadsfads!</font></h2>
<img src ="http://www.blogjava.net/phe441/aggbug/128560.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/phe441/" target="_blank">landril</a> 2007-07-06 13:35 <a href="http://www.blogjava.net/phe441/archive/2007/07/06/128560.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>会话跟踪技术--session的使用</title><link>http://www.blogjava.net/phe441/archive/2007/04/28/114429.html</link><dc:creator>landril</dc:creator><author>landril</author><pubDate>Sat, 28 Apr 2007 13:33:00 GMT</pubDate><guid>http://www.blogjava.net/phe441/archive/2007/04/28/114429.html</guid><wfw:comment>http://www.blogjava.net/phe441/comments/114429.html</wfw:comment><comments>http://www.blogjava.net/phe441/archive/2007/04/28/114429.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/phe441/comments/commentRss/114429.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/phe441/services/trackbacks/114429.html</trackback:ping><description><![CDATA[&nbsp;
<p><span>会话跟踪技术</span><span>--session</span><span>的使用</span></p>
<p>&nbsp;</p>
<p><span>会话跟踪：</span></p>
<p><span><span>1、&nbsp;</span></span><span>使用隐藏表单字段</span></p>
<p><span>&lt;INPUT TYPE=&#8221;HIDDEN&#8221; NAME=&#8221;session&#8221; VALUE=&#8221;landril&#8221;</span></p>
<p><span><span>2、&nbsp;</span></span><span>URL</span><span>重写</span></p>
<p><span>http://host/path/file.jsp?sessionid=landril</span></p>
<p><span><span>3、&nbsp;</span></span><span>持久</span><span>Cookie</span></p>
<p><span><span>4、&nbsp;</span></span><span>会话</span><span>HttpSession</span></p>
<p>&nbsp;</p>
<p><span><span>一、</span></span><span>使用</span><span>session</span><span>的简单步骤</span></p>
<p><span>获取</span><span>HttpSession</span><span>（</span><span>request.getSession()</span><span>方法）对象，查找与该会话相关的信息（</span><span>session.getAttribute()</span><span>），存储会话中的信息（</span><span>session.setAttribute()</span><span>），删除会话中的数据（</span><span>session.removeAttribute()</span><span>），删除当前会话（</span><span>session.invalidate()</span><span>）</span></p>
<p><span>在</span><span>session</span><span>中，可以存储任意数量的键值对，通过键即可获取相应的值，即使用：</span><span>session.getAttribute(&#8220;key&#8221;);</span><span>。</span></p>
<p>&nbsp;</p>
<p><span><span>二、</span></span><span>session</span><span>的常用方法</span></p>
<p><span><span>1、&nbsp;</span></span><span>getAttribute()</span><span>：从</span><span>session</span><span>中获取以前存储的值</span></p>
<p><span><span>2、&nbsp;</span></span><span>getAttributeNames()</span><span>：返回</span><span>session</span><span>中所有属性的名称</span></p>
<p><span><span>3、&nbsp;</span></span><span>setAttribute()</span><span>：将键与值关联起来，存储进</span><span>session</span></p>
<p><span><span>4、&nbsp;</span></span><span>removeAttribute()</span><span>：删除</span><span>session</span><span>中存储的对应键的值</span></p>
<p><span><span>5、&nbsp;</span></span><span>invalidate()</span><span>：删除整个</span><span>session</span><span>及其存储的键值</span></p>
<p><span><span>6、&nbsp;</span></span><span>logout()</span><span>：注销当前用户</span></p>
<p><span><span>7、&nbsp;</span></span><span>getId()</span><span>：获取每个</span><span>session</span><span>对应的唯一</span><span>ID</span></p>
<p><span><span>8、&nbsp;</span></span><span>getCreationTime()</span><span>：获取</span><span>session</span><span>创建的时间</span></p>
<p><span><span>9、&nbsp;</span></span><span>getLastAccessedTime()</span><span>：获取</span><span>session</span><span>最后被访问的时间</span></p>
<p><span><span>10、<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span>getMaxInactiveInterval()</span><span>：在用户没有访问的情况下，会话在被自动废弃之前应该保持多长时间</span></p>
<p>&nbsp;</p>
<p><span><span>三、</span></span><span>使用</span><span>session</span><span>的一个例子，拥有购物车的在线商店</span></p>
<p>&nbsp;</p>
<p><span>1</span><span>、</span><span>CatalogPage.java</span></p>
<p align=left><strong>&nbsp;</strong></p>
<p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>import</span></strong><span> java.io.IOException;</span></p>
<p align=left><strong><span>import</span></strong><span> java.io.PrintWriter;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>import</span></strong><span> javax.servlet.ServletException;</span></p>
<p align=left><strong><span>import</span></strong><span> javax.servlet.http.HttpServlet;</span></p>
<p align=left><strong><span>import</span></strong><span> javax.servlet.http.HttpServletRequest;</span></p>
<p align=left><strong><span>import</span></strong><span> javax.servlet.http.HttpServletResponse;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>public</span></strong><span> </span><strong><span>class</span></strong><span> CatalogPage </span><strong><span>extends</span></strong><span> HttpServlet {</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>private</span></strong><span> CatalogItem[] </span><span>items</span><span>;</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>private</span></strong><span> String[] </span><span>itemIds</span><span>;</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>private</span></strong><span> String </span><span>title</span><span>;</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>protected</span></strong><span> </span><strong><span>void</span></strong><span> setItems(String[] itemIds) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>this</span></strong><span>.</span><span>itemIds</span><span> = itemIds;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span>items</span><span> = </span><strong><span>new</span></strong><span> CatalogItem[itemIds.</span><span>length</span><span>];</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i &lt; </span><span>items</span><span>.</span><span>length</span><span>; i++) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span>items</span><span>[i] = Catalog.<em>getItem</em>(itemIds[i]);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>protected</span></strong><span> </span><strong><span>void</span></strong><span> setTitle(String title) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>this</span></strong><span>.</span><span>title</span><span> = title;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> doGet(HttpServletRequest request, HttpServletResponse response)</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>throws</span></strong><span> ServletException, IOException {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span>(</span><span>items</span><span> == </span><strong><span>null</span></strong><span>){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>response.sendError(response.</span><em><span>SC_NOT_FOUND</span></em><span>,</span><span>"Missing Items:"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>response.setContentType(</span><span>"text/html"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>PrintWriter out = response.getWriter();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;html&gt;&lt;head&gt;&lt;title&gt;"</span><span>+</span><span>title</span><span>+</span><span>"&lt;/title&gt;&lt;/head&gt;&lt;body&gt;&lt;h3&gt;"</span><span>+</span><span>title</span><span>+</span><span>"&lt;/h3&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>CatalogItem item;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i &lt; </span><span>items</span><span>.</span><span>length</span><span>; i++) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;hr&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>item = </span><span>items</span><span>[i];</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span>(item == </span><strong><span>null</span></strong><span>)</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"Unknow itemId: "</span><span>+</span><span>itemIds</span><span>[i]);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>else</span></strong><span>{</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>String formURL = request.getContextPath()+</span><span>"/orderPage"</span><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>formURL = response.encodeURL(formURL);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;form action='"</span><span>+formURL+</span><span>"'&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;input type='hidden' name='itemId' value='"</span><span>+item.getItemId()+</span><span>"'&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><strong><span>new</span></strong><span> String(item.getSDesc().getBytes(</span><span>"utf-8"</span><span>),</span><span>"GBK"</span><span>)+</span><span>"$"</span><span>+item.getPrice()+item.getLDesc());</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;input type='submit' value='add to shopping cart'&gt;&lt;/form&gt;&lt;/body&gt;&lt;/html&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span>}</span></p>
<p>&nbsp;</p>
<p><span>2</span><span>、</span><span>ComputerBook</span><span>.java</span></p>
<p>&nbsp;</p>
<p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>public</span></strong><span> </span><strong><span>class</span></strong><span> <span>ComputerBook</span> </span><strong><span>extends</span></strong><span> CatalogPage{</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> init(){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>String[] ids = {</span><span>"book1"</span><span>,</span><span>"book2"</span><span>,</span><span>"book3"</span><span>,</span><span>"book4"</span><span>};</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>setItems(ids);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>setTitle(</span><span>"Japanese Book"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span>}</span></p>
<p>&nbsp;</p>
<p><span>3</span><span>、</span><span>JapaneseBook.java</span></p>
<p>&nbsp;</p>
<p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>public</span></strong><span> </span><strong><span>class</span></strong><span> JapaneseBook </span><strong><span>extends</span></strong><span> CatalogPage{</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> init(){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>String[] ids = {</span><span>"book5"</span><span>,</span><span>"book6"</span><span>};</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>setItems(ids);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>setTitle(</span><span>"Computer Book"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span>}</span></p>
<p>&nbsp;</p>
<p><span>4</span><span>、</span><span>OrderPage</span><span>.java</span></p>
<p>&nbsp;</p>
<p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>import</span></strong><span> java.io.IOException;</span></p>
<p align=left><strong><span>import</span></strong><span> java.io.PrintWriter;</span></p>
<p align=left><strong><span>import</span></strong><span> java.util.List;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>import</span></strong><span> javax.servlet.ServletException;</span></p>
<p align=left><strong><span>import</span></strong><span> javax.servlet.http.HttpServlet;</span></p>
<p align=left><strong><span>import</span></strong><span> javax.servlet.http.HttpServletRequest;</span></p>
<p align=left><strong><span>import</span></strong><span> javax.servlet.http.HttpServletResponse;</span></p>
<p align=left><strong><span>import</span></strong><span> javax.servlet.http.HttpSession;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>public</span></strong><span> </span><strong><span>class</span></strong><span> <span>OrderPage</span> </span><strong><span>extends</span></strong><span> HttpServlet {</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> doGet(HttpServletRequest request, HttpServletResponse response)</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>throws</span></strong><span> ServletException, IOException {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>HttpSession session = request.getSession();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>ShoppingCart cart;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>synchronized</span></strong><span>(session){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>cart = (ShoppingCart)session.getAttribute(</span><span>"shop"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span>(cart == </span><strong><span>null</span></strong><span>){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>cart = </span><strong><span>new</span></strong><span> ShoppingCart();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>session.setAttribute(</span><span>"shop"</span><span>, cart);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>String itemId = request.getParameter(</span><span>"itemId"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span>(itemId != </span><strong><span>null</span></strong><span>){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>String num = request.getParameter(</span><span>"num"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span>(num == </span><strong><span>null</span></strong><span>)</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>cart.addItem(itemId);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>else</span></strong><span>{</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>int</span></strong><span> numItems;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>try</span></strong><span> {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>numItems = Integer.<em>parseInt</em>(num);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>} </span><strong><span>catch</span></strong><span> (NumberFormatException e) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>numItems = 1;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>cart.setNum(itemId, numItems);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>response.setContentType(</span><span>"text/html"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>PrintWriter out = response.getWriter();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>String title = </span><span>"Your Order"</span><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;html&gt;&lt;head&gt;&lt;title&gt;"</span><span>+title+</span><span>"&lt;/title&gt;&lt;/head&gt;&lt;body&gt;&lt;h3&gt;"</span><span>+title+</span><span>"&lt;/h3&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>synchronized</span></strong><span>(session){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>List&lt;ItemOrder&gt; itemOrders = cart.getItemOrders();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span>(itemOrders.size() == 0)</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"No items"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>else</span></strong><span>{</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;table border=1&gt;&lt;tr&gt;&lt;th&gt;Item ID&lt;th&gt;Short Description&lt;th&gt;Long Description&lt;th&gt;Unit Price&lt;th&gt;Number&lt;th&gt;Total Price"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>ItemOrder order;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i &lt; itemOrders.size(); i++) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>order = (ItemOrder)itemOrders.get(i);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;tr&gt;&lt;td&gt;"</span><span>+order.getItemId()+</span><span>"&lt;td&gt;"</span><span>+order.getSDesc()+</span><span>"&lt;td&gt;"</span><span>+order.getLDesc()+</span><span>"&lt;td&gt;"</span><span>+order.getUnitPrice()+</span><span>"&lt;td&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;form&gt;&lt;input type='hidden' name='itemId' value='"</span><span>+order.getItemId()+</span><span>"'&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;input type='text' name='num' size=3 value='"</span><span>+order.getNum()+</span><span>"'&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;input type='submit' value='update order'&gt;&lt;/form&gt;&lt;td&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(order.getTotalPrice());</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>String checkURL = response.encodeURL(request.getContextPath()+</span><span>"/check.html"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;/table&gt;&lt;form action='"</span><span>+checkURL+</span><span>"'&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;input type='submit' value='submit'&gt;&lt;/form&gt;&lt;/body&gt;&lt;/html&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span>}</span></p>
<p>&nbsp;</p>
<p><span>5</span><span>、</span><span>ShoppingCart.java</span></p>
<p>&nbsp;</p>
<p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>import</span></strong><span> java.util.ArrayList;</span></p>
<p align=left><strong><span>import</span></strong><span> java.util.List;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>public</span></strong><span> </span><strong><span>class</span></strong><span> ShoppingCart {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>private</span></strong><span> List&lt;<span>ItemOrder</span>&gt; </span><span>itemOrders</span><span>;</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> ShoppingCart() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span>itemOrders</span><span> = </span><strong><span>new</span></strong><span> ArrayList&lt;<span>ItemOrder</span>&gt;();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> List&lt;<span>ItemOrder</span>&gt; getItemOrders(){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><span>itemOrders</span><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>synchronized</span></strong><span> </span><strong><span>void</span></strong><span> addItem(String itemId){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>ItemOrder</span> order;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>for</span></strong><span>(</span><strong><span>int</span></strong><span> i=0;i&lt;</span><span>itemOrders</span><span>.size();i++){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>order = (<span>ItemOrder</span>)</span><span>itemOrders</span><span>.get(i);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span>(itemId.equals(order.getItemId())){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>order.addNum();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>ItemOrder</span> newOrd = </span><strong><span>new</span></strong><span> <span>ItemOrder</span>(Catalog.<em>getItem</em>(itemId));</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span>itemOrders</span><span>.add(newOrd);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>synchronized</span></strong><span> </span><strong><span>void</span></strong><span> setNum(String itemId,</span><strong><span>int</span></strong><span> num){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>ItemOrder</span> order;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i &lt; </span><span>itemOrders</span><span>.size(); i++) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>order = (<span>ItemOrder</span>)</span><span>itemOrders</span><span>.get(i);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span>(itemId.equals(order.getItemId())){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span>(num &lt;=0)</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span>itemOrders</span><span>.remove(i);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>else</span></strong></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>order.setNum(num);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>ItemOrder</span> newOrd = </span><strong><span>new</span></strong><span> <span>ItemOrder</span>(Catalog.<em>getItem</em>(itemId));</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span>itemOrders</span><span>.add(newOrd);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span>}</span></p>
<p>&nbsp;</p>
<p><span>6</span><span>、</span><span>CatalogItem</span><span>.java</span></p>
<p>&nbsp;</p>
<p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>public</span></strong><span> </span><strong><span>class</span></strong><span> CatalogItem {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>private</span></strong><span> <span>String</span> </span><span>itemId</span><span>;</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>private</span></strong><span> <span>String</span> </span><span>sDesc</span><span>;</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>private</span></strong><span> <span>String</span> </span><span>lDesc</span><span>;</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>private</span></strong><span> </span><strong><span>float</span></strong><span> </span><span>price</span><span>;</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> <span>String</span> getItemId() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><span>itemId</span><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> setItemId(<span>String</span> itemId) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>this</span></strong><span>.</span><span>itemId</span><span> = itemId;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> <span>String</span> getLDesc() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><span>lDesc</span><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> setLDesc(<span>String</span> desc) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span>lDesc</span><span> = desc;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>float</span></strong><span> getPrice() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><span>price</span><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> setPrice(</span><strong><span>float</span></strong><span> price) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>this</span></strong><span>.</span><span>price</span><span> = price;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> <span>String</span> getSDesc() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><span>sDesc</span><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> setSDesc(<span>String</span> desc) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span>sDesc</span><span> = desc;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> CatalogItem(<span>String</span> itemId, <span>String</span> desc, <span>String</span> desc2, </span><strong><span>float</span></strong><span> price) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>super</span></strong><span>();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>this</span></strong><span>.</span><span>itemId</span><span> = itemId;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span>sDesc</span><span> = desc;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span>lDesc</span><span> = desc2;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>this</span></strong><span>.</span><span>price</span><span> = price;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span>}</span></p>
<p>&nbsp;</p>
<p><span>7</span><span>、</span><span>ItemOrder.java</span></p>
<p>&nbsp;</p>
<p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>public</span></strong><span> </span><strong><span>class</span></strong><span> ItemOrder {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>private</span></strong><span> <span>CatalogItem</span> </span><span>item</span><span>;</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>private</span></strong><span> </span><strong><span>int</span></strong><span> </span><span>num</span><span>;</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> ItemOrder(<span>CatalogItem</span> item) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>setItem(item);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>setNum(1);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> <span>CatalogItem</span> getItem() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><span>item</span><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> setItem(<span>CatalogItem</span> item) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>this</span></strong><span>.</span><span>item</span><span> = item;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>int</span></strong><span> getNum() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><span>num</span><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> setNum(</span><strong><span>int</span></strong><span> num) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>this</span></strong><span>.</span><span>num</span><span> = num;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> String getItemId() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><span>item</span><span>.getItemId();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> String getSDesc() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><span>item</span><span>.getSDesc();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> String getLDesc() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><span>item</span><span>.getLDesc();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>float</span></strong><span> getUnitPrice() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><span>item</span><span>.getPrice();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> addNum() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>setNum(</span><span>num</span><span> + 1);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> cancelOrder() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>setNum(0);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>float</span></strong><span> getTotalPrice() {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><span>num</span><span> * getUnitPrice();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span>}</span></p>
<p>&nbsp;</p>
<p><span>8</span><span>、</span><span>Catalog.java</span></p>
<p align=left><strong>&nbsp;</strong></p>
<p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p>
<p align=left>&nbsp;</p>
<p align=left><strong><span>public</span></strong><span> </span><strong><span>class</span></strong><span> Catalog {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>private</span></strong><span> </span><strong><span>static</span></strong><span> <span>CatalogItem</span>[] </span><em><span>items</span></em><span> = {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>new</span></strong><span> <span>CatalogItem</span>(</span><span>"book1"</span><span>, </span><span>"Hibernate"</span><span>, </span><span>"Hibernate</span><span>，</span><span>Hibernate"</span><span>, 57),</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>new</span></strong><span> <span>CatalogItem</span>(</span><span>"book2"</span><span>, </span><span>"Spring"</span><span>, </span><span>"Spring</span><span>，</span><span>Spring"</span><span>, 36),</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>new</span></strong><span> <span>CatalogItem</span>(</span><span>"book3"</span><span>, </span><span>"Tomcat"</span><span>, </span><span>"Tomcat</span><span>，</span><span>Tomcat"</span><span>, 23),</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>new</span></strong><span> <span>CatalogItem</span>(</span><span>"book4"</span><span>, </span><span>"Jboss"</span><span>, </span><span>"Jboss</span><span>，</span><span>Jboss"</span><span>, 35),</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>new</span></strong><span> <span>CatalogItem</span>(</span><span>"book5"</span><span>, </span><span>"Japanese1"</span><span>, </span><span>"Japanese1</span><span>，</span><span>Japanese1"</span><span>, 35),</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>new</span></strong><span> <span>CatalogItem</span>(</span><span>"book6"</span><span>, </span><span>"Japanese2"</span><span>, </span><span>"Japanese2</span><span>，</span><span>Japanese2"</span><span>, 23) };</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>static</span></strong><span> <span>CatalogItem</span> getItem(String itemId) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>CatalogItem</span> item;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span> (itemId == </span><strong><span>null</span></strong><span>)</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><strong><span>null</span></strong><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i &lt; </span><em><span>items</span></em><span>.</span><span>length</span><span>; i++) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>item = </span><em><span>items</span></em><span>[i];</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span> (itemId.equals(item.getItemId()))</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> item;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><strong><span>null</span></strong><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span>}</span></p>
<p align=left>&nbsp;</p>
<p><span>9</span><span>、</span><span>check.html</span></p>
<p>&nbsp;</p>
<p align=left><span>&lt;</span><span>html</span><span>&gt;</span></p>
<p align=left><span>&lt;</span><span>head</span><span>&gt;</span></p>
<p align=left><span>&lt;</span><span>title</span><span>&gt;</span><span>checking out</span><span>&lt;/</span><span>title</span><span>&gt;</span></p>
<p align=left><span>&lt;/</span><span>head</span><span>&gt;</span></p>
<p align=left><span>&lt;</span><span>body</span><span>&gt;</span></p>
<p align=left><span>Checking out</span></p>
<p><span>&lt;/</span><span>body</span><span>&gt;</span></p>
<img src ="http://www.blogjava.net/phe441/aggbug/114429.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/phe441/" target="_blank">landril</a> 2007-04-28 21:33 <a href="http://www.blogjava.net/phe441/archive/2007/04/28/114429.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Servlet基础知识及常用类</title><link>http://www.blogjava.net/phe441/archive/2007/04/28/114427.html</link><dc:creator>landril</dc:creator><author>landril</author><pubDate>Sat, 28 Apr 2007 13:32:00 GMT</pubDate><guid>http://www.blogjava.net/phe441/archive/2007/04/28/114427.html</guid><wfw:comment>http://www.blogjava.net/phe441/comments/114427.html</wfw:comment><comments>http://www.blogjava.net/phe441/archive/2007/04/28/114427.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/phe441/comments/commentRss/114427.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/phe441/services/trackbacks/114427.html</trackback:ping><description><![CDATA[&nbsp;
<p><span>Servlet</span><span>基础知识及常用类</span></p>
<p>&nbsp;</p>
<p><span><span>一、</span></span><span>Servlet</span><span>生命周期</span></p>
<p><span>服务器加载</span><span>Servlet</span><span>，创建</span><span>Servlet</span><span>类的实例，调用</span><span>Servlet</span><span>的</span><span>init()</span><span>方法，处理客户端的服务调用（如果收到请求，调用</span><span>service()</span><span>方法，</span><span>service()</span><span>方法处理请求并将结果返回客户端，等待下一下请求，重复），</span><span>Servlet</span><span>在服务器调用</span><span>destroy()</span><span>方法后被卸载</span></p>
<p>&nbsp;</p>
<p><span><span>二、</span></span><span>会话跟踪技术</span></p>
<p><span><span>1、&nbsp;</span></span><span>使用隐藏表单字段</span></p>
<p><span>&lt;INPUT TYPE=&#8221;HIDDEN&#8221; NAME=&#8221;session&#8221; VALUE=&#8221;landril&#8221;</span></p>
<p><span><span>2、&nbsp;</span></span><span>URL</span><span>重写</span></p>
<p><span>http://host/path/file.jsp?sessionid=landril</span></p>
<p><span><span>3、&nbsp;</span></span><span>持久</span><span>Cookie</span></p>
<p><span><span>4、&nbsp;</span></span><span>会话</span><span>HttpSession</span></p>
<p>&nbsp;</p>
<p><span>ServletRequest</span><span>：用于将请求的信息传送给</span><span>Servlet</span></p>
<p><span>ServletResponse</span><span>：提供服务器对客户端请求的响应</span></p>
<p><span>RequestDispatcher</span><span>：接收用户端的请求并将其发送到任何资源，</span><span>RequestDispatcher</span><span>对象用作资源的封装器，通过路径或名称指定</span></p>
<p><span>ServletConfig</span><span>：定义</span><span>Servlet</span><span>配置对象，可以从</span><span>web.xml</span><span>文件中获取初始化参数的值以及对</span><span>ServletContext</span><span>对象的引用</span></p>
<p><span>ServletContext</span><span>：让</span><span>Servlet</span><span>查找有关</span><span>Servlet</span><span>引擎及其环境的信息</span></p>
<img src ="http://www.blogjava.net/phe441/aggbug/114427.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/phe441/" target="_blank">landril</a> 2007-04-28 21:32 <a href="http://www.blogjava.net/phe441/archive/2007/04/28/114427.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Cookie的使用</title><link>http://www.blogjava.net/phe441/archive/2007/04/10/109601.html</link><dc:creator>landril</dc:creator><author>landril</author><pubDate>Tue, 10 Apr 2007 04:37:00 GMT</pubDate><guid>http://www.blogjava.net/phe441/archive/2007/04/10/109601.html</guid><wfw:comment>http://www.blogjava.net/phe441/comments/109601.html</wfw:comment><comments>http://www.blogjava.net/phe441/archive/2007/04/10/109601.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/phe441/comments/commentRss/109601.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/phe441/services/trackbacks/109601.html</trackback:ping><description><![CDATA[&nbsp;
<p><span>Cookie</span><span>的使用</span></p>
<p>&nbsp;</p>
<p><span>一、</span><span>cookie</span><span>的作用</span></p>
<p><span>在我们平常写的</span><span>B/S</span><span>程序中，会经常用到</span><span>cookie</span><span>，主要有以下一些作用：</span></p>
<p><span>1、&nbsp;</span><span>记录用户名和密码</span></p>
<p><span>以及该用户需要保存的一些信息，如购物购站，使用</span><span>cookie</span><span>，可以让用户自动登录到站点等。</span></p>
<p><span>2、&nbsp;</span><span>定制站点</span></p>
<p><span>可以使用</span><span>cookie</span><span>来记录用户的偏好。</span></p>
<p><span>3、&nbsp;</span><span>定向广告</span></p>
<p><span>可以使用</span><span>cookie</span><span>来记录用记经常访问的主题，并向他们显示与这些主题相关的广告。</span></p>
<p>&nbsp;</p>
<p><span>二、</span><span>向客户程序发送</span><span>cookie</span></p>
<p><span>1、&nbsp;</span><span>创建</span><span>cookie</span><span>对象</span></p>
<p><span>Cookie c = new Cookie(&#8220;userId&#8221;,&#8221;landril&#8221;);</span></p>
<p><span>2、&nbsp;</span><span>设置最大时效，默认该</span><span>cookie</span><span>是存储在浏览器的内在中，用户关闭浏览器则被删除，下面的方法是将</span><span>cookie</span><span>存储在硬盘上。</span></p>
<p><span>c.setMaxAge(60*60*24);//</span><span>一天，如果设置为</span><span>0</span><span>则是删除该</span><span>cookie</span></p>
<p><span>3、&nbsp;</span><span>将</span><span>cookie</span><span>放入到</span><span>HTTP</span><span>响应报头，可以使用</span><span>HttpServletResponse</span><span>的</span><span>addCookie</span><span>方法，此方法不修改之前指定的</span><span>Set-Cookie</span><span>报头，而是创建新的报头。</span></p>
<p><span>response.addCookie(c);</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span>注意：设置</span><span>cookie</span><span>的步骤为创建</span><span>cookie</span><span>对象，设置最大时效，将</span><span>cookie</span><span>放入响应报头，即发送到客户程序，记住一定要将</span><span>cookie</span><span>发送到客户程序</span></p>
<p>&nbsp;</p>
<p><span>三、</span><span>从客户端读取</span><span>cookie</span></p>
<p><span>1、&nbsp;</span><span>调用</span><span>HttpServletRequest</span><span>的</span><span>getCookies</span><span>得到一个</span><span>Cookie</span><span>对象的数组</span></p>
<p><span>2、&nbsp;</span><span>对数组进行循环，调用</span><span>cookie</span><span>的</span><span>getName</span><span>方法，获取具体的</span><span>cookie</span><span>的值</span></p>
<p><span>Cookie[] cookies = request.getCookies();</span></p>
<p><span>if(cookies != null){</span></p>
<p><span>for(int i=0;i&lt;cookies.length;i++){</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Cookie c = cookies[i];</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>if(&#8220;userId&#8221;.equals(c.getName())){</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>System.out.println(c.getValue());</span></p>
<p><span>}</span></p>
<p><span>}</span></p>
<p><span>}</span></p>
<p>&nbsp;</p>
<p><span>四、</span><span>cookie</span><span>的常用方法</span></p>
<p><span>1、&nbsp;</span><span>setComment()/getComment()</span><span>：指定或查找与该</span><span>cookie</span><span>相关的注释</span></p>
<p><span>2、&nbsp;</span><span>setDomain()/getDomain()</span><span>：设置或读取该</span><span>cookie</span><span>适用的域</span></p>
<p><span>3、&nbsp;</span><span>setMaxAge()/getMaxAge()</span><span>：操作</span><span>cookie</span><span>保留的时间，多长时间后过期</span></p>
<p><span>4、&nbsp;</span><span>getName()</span><span>：读取</span><span>cookie</span><span>的名称</span></p>
<p><span>5、&nbsp;</span><span>setPath()/getPath()</span><span>：设置或取得</span><span>cookie</span><span>适用的路径</span></p>
<p><span>cookie.setPath(&#8220;/&#8221;);</span><span>指定服务器的所有页面都应该收到该</span><span>cookie</span></p>
<p><span>6、&nbsp;</span><span>setSource()/getSource()</span><span>：指定</span><span>cookie</span><span>是否只能通过加密连接（</span><span>SSL</span><span>）</span></p>
<p><span>默认</span><span>false</span><span>，表示</span><span>cookie</span><span>适用所有连接</span></p>
<p><span>7、&nbsp;</span><span>setValue()/getValue()</span><span>：指定或获取</span><span>cookie</span><span>的值</span></p>
<p>&nbsp;</p>
<p><span>五、</span><span>使用</span><span>cookie</span></p>
<p>&nbsp;</p>
<p><span>1</span><span>、</span><span>RepeatServlet.java</span></p>
<p align=left><strong><span>public</span></strong><span> </span><strong><span>class</span></strong><span> RepeatServlet </span><strong><span>extends</span></strong><span> HttpServlet {</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> doGet(HttpServletRequest request, HttpServletResponse response)</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>throws</span></strong><span> ServletException, IOException {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>boolean</span></strong><span> <span>newa</span> = </span><strong><span>true</span></strong><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>Cookie[] cookies = request.getCookies();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span>(cookies != </span><strong><span>null</span></strong><span>){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i &lt; cookies.</span><span>length</span><span>; i++) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>Cookie c = cookies[i];</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span> ((c.getName().equals(</span><span>"repeat"</span><span>)) &amp;&amp; (c.getValue().equals(</span><span>"true"</span><span>))) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>newa</span> = </span><strong><span>false</span></strong><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>break</span></strong><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>String title;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span> (<span>newa</span>) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>Cookie rtn = </span><strong><span>new</span></strong><span> Cookie(</span><span>"repeat"</span><span>,</span><span>" true"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>rtn.setMaxAge(60*60*24*365);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>response.addCookie(rtn);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>title = </span><span>"First Welcome"</span><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>} </span><strong><span>else</span></strong><span> {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>title = </span><span>"Welcom Back"</span><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>response.setContentType(</span><span>"text/html"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>PrintWriter out = response.getWriter();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;html&gt;&lt;body&gt;&lt;h3&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>out.println(title);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;/h3&gt;&lt;/body&gt;&lt;/html&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> doPose(HttpServletRequest request, HttpServletResponse response)</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>throws</span></strong><span> ServletException, IOException {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>doGet(request,response);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span>}</span></p>
<p align=left>&nbsp;</p>
<p align=left><span>2</span><span>、</span><span>CookieUtil.java</span></p>
<p align=left><strong><span>public</span></strong><span> </span><strong><span>class</span></strong><span> CookieUtil{</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>static</span></strong><span> String getValue(HttpServletRequest request,String cName,String value){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>Cookie[] cookies = request.getCookies();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span>(cookies != </span><strong><span>null</span></strong><span>){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i &lt; cookies.</span><span>length</span><span>; i++) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>Cookie cookie = cookies[i];</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span> (cName.equals(cookie.getName())) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> cookie.getValue();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> value;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>static</span></strong><span> <span>Cookie</span> getCookie(HttpServletRequest request,String cName){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>Cookie[] cookies = request.getCookies();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span>(cookies != </span><strong><span>null</span></strong><span>){</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i &lt; cookies.</span><span>length</span><span>; i++) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>Cookie cookie = cookies[i];</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>if</span></strong><span> (cName.equals(cookie.getName())) {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> cookie;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>return</span></strong><span> </span><strong><span>null</span></strong><span>;</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span>}</span></p>
<p>&nbsp;</p>
<p><span>3</span><span>、</span><span>AccessCountServle.java </span><span>记录访问数</span></p>
<p align=left><strong><span>public</span></strong><span> </span><strong><span>class</span></strong><span> AccessCountServlet </span><strong><span>extends</span></strong><span> HttpServlet {</span></p>
<p align=left>&nbsp;</p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> doGet(HttpServletRequest request, <span>HttpServletResponse</span> response)</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>throws</span></strong><span> ServletException, IOException {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>String acount = CookieUtil.<em>getValue</em>(request, </span><span>"acc"</span><span>, </span><span>"1"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><strong><span>int</span></strong><span> count = Integer.<em>parseInt</em>(acount);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>Cookie cookie = </span><strong><span>new</span></strong><span> Cookie(</span><span>"acc"</span><span>,String.<em>valueOf</em>(count+1));</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>cookie.setMaxAge(60*60*24*365);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>response.addCookie(cookie);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>response.setContentType(</span><span>"text/html"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>PrintWriter out = response.getWriter();</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;html&gt;&lt;body&gt;Hello,the number is&lt;h3&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>out.println(count);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>out.println(</span><span>"&lt;/h3&gt;&lt;/body&gt;&lt;/html&gt;"</span><span>);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> doPost(HttpServletRequest request, <span>HttpServletResponse</span> response)</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span></span><strong><span>throws</span></strong><span> ServletException, IOException {</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp; </span>doGet(request,response);</span></p>
<p align=left><span><span>&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p align=left><span>}</span></p>
<img src ="http://www.blogjava.net/phe441/aggbug/109601.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/phe441/" target="_blank">landril</a> 2007-04-10 12:37 <a href="http://www.blogjava.net/phe441/archive/2007/04/10/109601.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>