??xml version="1.0" encoding="utf-8" standalone="yes"?>欧美18免费视频,国产在线观看精品一区,一本色道久久综合亚洲91http://www.aygfsteel.com/phe441/zh-cnSat, 17 May 2025 20:08:35 GMTSat, 17 May 2025 20:08:35 GMT60Apache Tomcat Realm Configurationhttp://www.aygfsteel.com/phe441/archive/2009/03/11/259027.htmllandrillandrilWed, 11 Mar 2009 02:33:00 GMThttp://www.aygfsteel.com/phe441/archive/2009/03/11/259027.htmlhttp://www.aygfsteel.com/phe441/comments/259027.htmlhttp://www.aygfsteel.com/phe441/archive/2009/03/11/259027.html#Feedback0http://www.aygfsteel.com/phe441/comments/commentRss/259027.htmlhttp://www.aygfsteel.com/phe441/services/trackbacks/259027.html
参照Q?http://tomcat.apache.org/tomcat-6.0-doc/realm-howto.html


landril 2009-03-11 10:33 发表评论
]]>
Apache Tomcat Configuration Reference--The Context Containerhttp://www.aygfsteel.com/phe441/archive/2009/03/10/258845.htmllandrillandrilTue, 10 Mar 2009 08:36:00 GMThttp://www.aygfsteel.com/phe441/archive/2009/03/10/258845.htmlhttp://www.aygfsteel.com/phe441/comments/258845.htmlhttp://www.aygfsteel.com/phe441/archive/2009/03/10/258845.html#Feedback0http://www.aygfsteel.com/phe441/comments/commentRss/258845.htmlhttp://www.aygfsteel.com/phe441/services/trackbacks/258845.html
参照Q?http://tomcat.apache.org/tomcat-5.5-doc/config/context.html

landril 2009-03-10 16:36 发表评论
]]>
Apache Tomcat Share Library and Class Loaderhttp://www.aygfsteel.com/phe441/archive/2009/03/10/258834.htmllandrillandrilTue, 10 Mar 2009 08:22:00 GMThttp://www.aygfsteel.com/phe441/archive/2009/03/10/258834.htmlhttp://www.aygfsteel.com/phe441/comments/258834.htmlhttp://www.aygfsteel.com/phe441/archive/2009/03/10/258834.html#Feedback0http://www.aygfsteel.com/phe441/comments/commentRss/258834.htmlhttp://www.aygfsteel.com/phe441/services/trackbacks/258834.html

参照文档Q?http://tomcat.apache.org/tomcat-6.0-doc/class-loader-howto.html



landril 2009-03-10 16:22 发表评论
]]>
有用的网址记录http://www.aygfsteel.com/phe441/archive/2009/03/10/258825.htmllandrillandrilTue, 10 Mar 2009 08:09:00 GMThttp://www.aygfsteel.com/phe441/archive/2009/03/10/258825.htmlhttp://www.aygfsteel.com/phe441/comments/258825.htmlhttp://www.aygfsteel.com/phe441/archive/2009/03/10/258825.html#Feedback0http://www.aygfsteel.com/phe441/comments/commentRss/258825.htmlhttp://www.aygfsteel.com/phe441/services/trackbacks/258825.htmlhttp://java.sun.com/products/jsp/download.html - JavaServer Pages (JSP) Specfication, Version 2.0.
http://java.sun.com/products/servlet/download.html - Servlet API Specification, Version 2.4.
http://www.cvshome.org. - CVS
http://tomcat.apache.org/tomcat-6.0-doc/class-loader-howto.html - Apache Tomcat 6.0 Class Loader HOW-TO

landril 2009-03-10 16:09 发表评论
]]>
netscape 中用iframeQ对form中target的?/title><link>http://www.aygfsteel.com/phe441/archive/2008/06/11/207169.html</link><dc:creator>landril</dc:creator><author>landril</author><pubDate>Wed, 11 Jun 2008 10:08:00 GMT</pubDate><guid>http://www.aygfsteel.com/phe441/archive/2008/06/11/207169.html</guid><wfw:comment>http://www.aygfsteel.com/phe441/comments/207169.html</wfw:comment><comments>http://www.aygfsteel.com/phe441/archive/2008/06/11/207169.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.aygfsteel.com/phe441/comments/commentRss/207169.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/phe441/services/trackbacks/207169.html</trackback:ping><description><![CDATA[<p>我有下面一D늨序:(x)<br /> 1.jsp?<br /> <form name="form1" method="post" action="2.jsp" target="heart"><br />     <input type="submit" name="download"/><br /> </form><br /> <iframe marginwidth=0 marginheight=0 name="heart" frameborder="no" scrolling="no" width=0 height=0 style="display:none"></p> <p>2.jsp中只做一些java处理Q没有html之类的东西输出,而处理后的D回iframeQ但我现在点?yn)L钮后Q弹出新的空白窗?.jsp?nbsp;  <br />   请高手指教如何修改,使得点击按钮后在iframe内显C?.jspQ而不?x)弹出新的空白窗?.jsp?/p> <p>另外我通过试发现Q在IE6,IE7,NETSCAPE7.1q几个浏览器中,都实C(jin)我所希望的功能(点击按钮后,D回到iframe,但不弹出新的I白H口2.jspQ,可是NETSCAPE7.02却不行,不知道是Z么?/p> <p>请高手指教,先谢谢各位了(jin)?/p> <img src ="http://www.aygfsteel.com/phe441/aggbug/207169.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/phe441/" target="_blank">landril</a> 2008-06-11 18:08 <a href="http://www.aygfsteel.com/phe441/archive/2008/06/11/207169.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>tomcat5.5.17+jstl1.2+servlet2.5+jsp2.1配置http://www.aygfsteel.com/phe441/archive/2007/07/06/128560.htmllandrillandrilFri, 06 Jul 2007 05:35:00 GMThttp://www.aygfsteel.com/phe441/archive/2007/07/06/128560.htmlhttp://www.aygfsteel.com/phe441/comments/128560.htmlhttp://www.aygfsteel.com/phe441/archive/2007/07/06/128560.html#Feedback0http://www.aygfsteel.com/phe441/comments/commentRss/128560.htmlhttp://www.aygfsteel.com/phe441/services/trackbacks/128560.htmltomcat5.5.17+jstl1.2+servlet2.5+jsp2.1配置

在此我用的环境是:(x)
tomcat5.5.17
jstl1.2
servlet2.5
jsp2.1

我以一个简单的例子hello1来说明吧Q发布工E时最重要的就是目录结构了(jin)Qhello1是根目录Q放在tomcat中的webapps里,先看看目录结构:(x)
hello1\index.jsp
hello1\response.jsp
hello1\WEB-INF\lib\javaee.jar
hello1\WEB-INF\lib\jsf-api.jar
hello1\WEB-INF\lib\jsf-impl.jar
hello1\WEB-INF\lib\jstl-1.2.jar
hello1\WEB-INF\web.xml

如果你按照以上目录发布工E,抛出以下异常Q?br>(1)  java.lang.NoClassDefFoundError: javax/el/ExpressionFactory
(2)  或打开面后显C:(x)

HTTP Status 404 - /hello1/


type Status report

message /hello1/

description The requested resource (/hello1/) is not available.


Apache Tomcat/5.5.17


则将javaee.jar包再copy一份放在tomcat目录的common\lib下就不会(x)?jin)?br>关于用到的javaee.jar、jsf-api.jar、jsf-impl.jar、jstl-1.2.jarq四个包可以通过myeclipse中获得,如果你安装了(jin)myeclipse5.5的话Q我安装的是MyEclipse 5.5.1 GAQ这四个包的所在的目录是:(x)MyEclipse 5.5.1 GA\eclipse\plugins\com.genuitec.eclipse.j2eedt.core_5.5.1\data\libraryset\EE_5\

到此Q再l出具体的文件代码吧?br>(1)  hello1\index.jsp

<%@ taglib uri="<%@ taglib uri="

<html>
<head><title>Hello</title></head>
<body bgcolor="white">
<h2>Hello, my name is Duke. What's yours?</h2>
<form method="get">
<input type="text" name="username" size="25">
<p></p>
<input type="submit" value="Submit">
<input type="reset" value="Reset">
</form>

<c:if test="${fn:length(param.username) > 0}" >
  <
%@include file="response.jsp" %>
</c:if>
</body>
</html>

(2)  hello1\response.jsp

<h2><font color="black">Hello, ${param.username}!</font></h2>

(3)  hello1\WEB-INF\web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>

<web-app xmlns="         xmlns:xsi="         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee web-app_2_5.xsd"
         version="2.5">

<jsp-config> 
 <jsp-property-group>
  <display-name>hello1</display-name>
  <url-pattern>*.jsp</url-pattern>
  <el-ignored>false</el-ignored>
  <scripting-invalid>false</scripting-invalid>
  <is-xml>false</is-xml>
  <!-- <include-prelude>/template/prelude.jspf</include-prelude> -->
  <!-- <include-coda>/template/coda.jspf</include-coda> -->
 </jsp-property-group>
</jsp-config>
</web-app>


成功之后面昄为:(x)

Hello, my name is Duke. What's yours?

 

Hello, afdfadsfads!



landril 2007-07-06 13:35 发表评论
]]>
敏捷软g开发有?/title><link>http://www.aygfsteel.com/phe441/archive/2007/05/18/118311.html</link><dc:creator>landril</dc:creator><author>landril</author><pubDate>Fri, 18 May 2007 04:27:00 GMT</pubDate><guid>http://www.aygfsteel.com/phe441/archive/2007/05/18/118311.html</guid><wfw:comment>http://www.aygfsteel.com/phe441/comments/118311.html</wfw:comment><comments>http://www.aygfsteel.com/phe441/archive/2007/05/18/118311.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/phe441/comments/commentRss/118311.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/phe441/services/trackbacks/118311.html</trackback:ping><description><![CDATA[<p>敏捷软g开发有?/p> <p>1.个体和交互胜q过E和工具<br>  一个优U的团队成员未必是一个技术一的E序员,可能是技术一般的E序员,但他能很好的与他人合作,沟通,合作Q良好的沟通以?qing)交互能力比单纯的编E更重要?br>2.可以工作的Y件胜q面面俱到的文档<br>  一个可以工作的软g需要具有文档,用文档可以传辄l的原理?qing)结构,以?qing)对系l及(qing)设计决策q行描述。但q多的文档也q不是一件好事,首先~制需要花大量的时_(d)保持各文档同步,文档与代码之间的同步更是一仉事,如果没有做到同步Q那么会(x)形成误导Q后果将更严重?br>  对于团队来说Q需要编写和l护一份描q系l原理及(qing)l构的文档,描述pȝ原理Q结构和设计原理。关于培训新员工Q则其与业务及(qing)软g均熟(zhn)的老员工坐在一P实时指导Qƈl合代码?br>3.客户合作胜过合同谈判<br>  与客L(fng)密的l合在一P短周期的向客hCY件的q行情况。得到客L(fng)反馈q及(qing)时跟q进行更攏V?br>4.响应变化胜过遵@计划<br>  做短旉的详l计划,长时间的_略计划Q时间越长计划越_略</p> <p> 短周期,持箋(hu)的交付能工作软gl客P得到客户的反馈?br> 以h为本Q给成员自信Q激励成员来沟徏目Q信L个h都成完成?br> 以能够满_户需求的数量来度量Y件的q度?br> 使团队成员(sh)持高度集中的_֊Q饱满的_Q不要ؓ(f)?jin)多做一点工作而借用明于的精力?br> 最好的架构Q需求,设计?gu)于团队?br> 每隔一D|_(d)团队Ҏ(gu)有效的工作进行反省,对组l方式,规则Q关pȝq行调整Q达到更有效的工作方?br></p> <p><br><br>极限~程</p> <p>1.客户做ؓ(f)团队开发h员,客户可以是和开发团队同一家公司的一l业务分析师或市(jng)ZӞ可以是用户团体委z用户代表?br>2.每两周交付(sh)ơ可以工作的软gQP代计划(两周做一ơ,重复周期Q,发布计划Q一ơ做大概三个月的发布计划Q做一ơ长周期的交付?br>3.验收试<br>4.l对~程Q两个h使用一台电(sh)脑,一个控刉盘,一个检查代码的错误?qing)可以改q的地方Q结对的关系每天改变?sh)ơ,每个团队成员应该和其他所有团队成在一起工作过Q这栯够促(j)q业务知识及(qing)技术知识在团队中的快速传播,且能大大减少~陷率?br>5.试驱动的开发,~写所有品代码的目的都是Z(jin)使测试通过Q测试用例和代码一h化,基本是几分钟一ơ。结果,一个非常完整的试用例集就和代码一L(fng)成v来?br>6.每个l对都有对Q何一个模块的(g)出(check outQ权Q及(qing)修改权力Q没有程序员Ҏ(gu)一个特定的模块单独负责?br>7.团队人员?sh)持E_适中的开发速度Q不允许加班?br>8.开攄工作I间Q积极讨论的工作环境。生产率?x)成倍的提高?br>9.单的设计开发,考虑能够工作的最单的方式Q如能够能页面完成的׃能EJBQ不用数据库。不能出现重复的代码Q一ơ就够?br>10.团队l常性地对代码进行重构?nbsp;</p> <p><br> </p> <img src ="http://www.aygfsteel.com/phe441/aggbug/118311.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/phe441/" target="_blank">landril</a> 2007-05-18 12:27 <a href="http://www.aygfsteel.com/phe441/archive/2007/05/18/118311.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle启动服务Ӟ启动之后又立卌动停?/title><link>http://www.aygfsteel.com/phe441/archive/2007/05/04/115312.html</link><dc:creator>landril</dc:creator><author>landril</author><pubDate>Fri, 04 May 2007 06:58:00 GMT</pubDate><guid>http://www.aygfsteel.com/phe441/archive/2007/05/04/115312.html</guid><wfw:comment>http://www.aygfsteel.com/phe441/comments/115312.html</wfw:comment><comments>http://www.aygfsteel.com/phe441/archive/2007/05/04/115312.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/phe441/comments/commentRss/115312.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/phe441/services/trackbacks/115312.html</trackback:ping><description><![CDATA[<p>我用的是windows 2003的系l,oracle9iQ启动以下这两个服务后会(x)自动停止Q?br>OracleOraHome90Agent<br>OracleOraHome90TNSListener<br><br>日志昄Q?br><br>OracleOraHome90AgentQ?br><br>-------------- [OracleOraHome90Agent] ------------<br>Sending initial service status..<br>Commandline is "E:\oracle\ora90\bin\dbsnmpwd.bat" -agent_name OracleOraHome90Agent <br>2. WAIT_OBJECT_0: Agent exited with retCode 0.<br>Agent failed to startup.<br>Check E:\oracle\ora90\network\log\OracleOraHome90Agent.nohup for details<br><br><br>OracleOraHome90TNSListenerQ?br><br>TNSLSNR for 32-bit Windows: Version 9.0.1.1.1 - Production on 04-5?-2007 14:50:30</p> <p>Copyright (c) 1991, 2001, Oracle Corporation.  All rights reserved.</p> <p>pȝ参数文g为E:\oracle\ora90\network\admin\listener.ora<br>写入E:\oracle\ora90\network\log\listener.log的日志信?br>写入E:\oracle\ora90\network\trace\listener.trc的跟t信?br>跟踪U别当前?</p> <p>?pid=4092 开?br>监听Q?DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)))<br>监听该对象时出错: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ygogo98sla5i4oh)(PORT=1521)))<br>TNS-12545: 因目标主机或对象不存在,q接p|<br> TNS-12560: TNS: 协议适配器错?br>  TNS-00515: 因目标主机或对象不存在,q接p|<br>   32-bit Windows Error: 1004: Unknown error<br>不再监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)))<br><br>原因是我安装?jin)oracle之后Q又修改?jin)主机?br>解决Ҏ(gu)Q?br><br>一、直接修?listener.ora<br>路径是:(x) oracle安装目录\ora90\network\ADMIN\listener.ora<br>修改HOST Z机名或者IP</p> <p>二、通过 Net ManagerQ在 监听E序\LISTENER 下直接修改主机即?</p> <img src ="http://www.aygfsteel.com/phe441/aggbug/115312.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/phe441/" target="_blank">landril</a> 2007-05-04 14:58 <a href="http://www.aygfsteel.com/phe441/archive/2007/05/04/115312.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>?x)话跟踪技?-session的?/title><link>http://www.aygfsteel.com/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.aygfsteel.com/phe441/archive/2007/04/28/114429.html</guid><wfw:comment>http://www.aygfsteel.com/phe441/comments/114429.html</wfw:comment><comments>http://www.aygfsteel.com/phe441/archive/2007/04/28/114429.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.aygfsteel.com/phe441/comments/commentRss/114429.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/phe441/services/trackbacks/114429.html</trackback:ping><description><![CDATA[  <p><span>?x)话跟踪技?/span><span>--session</span><span>的?/span></p> <p> </p> <p><span>?x)话跟踪Q?/span></p> <p><span><span>1?nbsp;</span></span><span>使用隐藏表单字段</span></p> <p><span><INPUT TYPE=”HIDDEN” NAME=”session” VALUE=”landril”</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>?x)?/span><span>HttpSession</span></p> <p> </p> <p><span><span>一?/span></span><span>使用</span><span>session</span><span>的简单步?/span></p> <p><span>获取</span><span>HttpSession</span><span>Q?/span><span>request.getSession()</span><span>Ҏ(gu)Q对象,查找与该?x)话相关的信息?/span><span>session.getAttribute()</span><span>Q,存储?x)话中的信息Q?/span><span>session.setAttribute()</span><span>Q,删除?x)话中的数据Q?/span><span>session.removeAttribute()</span><span>Q,删除当前?x)话Q?/span><span>session.invalidate()</span><span>Q?/span></p> <p><span>?/span><span>session</span><span>中,可以存储L数量的键值对Q通过键即可获取相应的|即用:(x)</span><span>session.getAttribute(“key”);</span><span>?/span></p> <p> </p> <p><span><span>二?/span></span><span>session</span><span>的常用方?/span></p> <p><span><span>1?nbsp;</span></span><span>getAttribute()</span><span>Q从</span><span>session</span><span>中获取以前存储的?/span></p> <p><span><span>2?nbsp;</span></span><span>getAttributeNames()</span><span>Q返?/span><span>session</span><span>中所有属性的名称</span></p> <p><span><span>3?nbsp;</span></span><span>setAttribute()</span><span>Q将键与值关联v来,存储q?/span><span>session</span></p> <p><span><span>4?nbsp;</span></span><span>removeAttribute()</span><span>Q删?/span><span>session</span><span>中存储的对应键的?/span></p> <p><span><span>5?nbsp;</span></span><span>invalidate()</span><span>Q删除整?/span><span>session</span><span>?qing)其存储的键?/span></p> <p><span><span>6?nbsp;</span></span><span>logout()</span><span>Q注销当前用户</span></p> <p><span><span>7?nbsp;</span></span><span>getId()</span><span>Q获取每?/span><span>session</span><span>对应的唯一</span><span>ID</span></p> <p><span><span>8?nbsp;</span></span><span>getCreationTime()</span><span>Q获?/span><span>session</span><span>创徏的时?/span></p> <p><span><span>9?nbsp;</span></span><span>getLastAccessedTime()</span><span>Q获?/span><span>session</span><span>最后被讉K的时?/span></p> <p><span><span>10?span>              </span></span></span><span>getMaxInactiveInterval()</span><span>Q在用户没有讉K的情况下Q会(x)话在被自动废弃之前应该保持多长时?/span></p> <p> </p> <p><span><span>三?/span></span><span>使用</span><span>session</span><span>的一个例子,拥有购物车的在线商店</span></p> <p> </p> <p><span>1</span><span>?/span><span>CatalogPage.java</span></p> <p align=left><strong> </strong></p> <p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p> <p align=left> </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> </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> </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> </p> <p align=left><span><span>    </span></span><strong><span>private</span></strong><span> CatalogItem[] </span><span>items</span><span>;</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>private</span></strong><span> String[] </span><span>itemIds</span><span>;</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>private</span></strong><span> String </span><span>title</span><span>;</span></p> <p align=left> </p> <p align=left><span><span>    </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>       </span></span><strong><span>this</span></strong><span>.</span><span>itemIds</span><span> = itemIds;</span></p> <p align=left><span><span>       </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>       </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i < </span><span>items</span><span>.</span><span>length</span><span>; i++) {</span></p> <p align=left><span><span>           </span></span><span>items</span><span>[i] = Catalog.<em>getItem</em>(itemIds[i]);</span></p> <p align=left><span><span>       </span>}</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </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>       </span></span><strong><span>this</span></strong><span>.</span><span>title</span><span> = title;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </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>           </span></span><strong><span>throws</span></strong><span> ServletException, IOException {</span></p> <p align=left><span><span>       </span></span></p> <p align=left><span><span>       </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>           </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>           </span></span><strong><span>return</span></strong><span>;</span></p> <p align=left><span><span>       </span>}</span></p> <p align=left><span><span>       </span></span></p> <p align=left><span><span>       </span>response.setContentType(</span><span>"text/html"</span><span>);</span></p> <p align=left><span><span>       </span>PrintWriter out = response.getWriter();</span></p> <p align=left><span><span>       </span>out.println(</span><span>"<html><head><title>"</span><span>+</span><span>title</span><span>+</span><span>"</title></head><body><h3>"</span><span>+</span><span>title</span><span>+</span><span>"</h3>"</span><span>);</span></p> <p align=left><span><span>       </span>CatalogItem item;</span></p> <p align=left><span><span>       </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i < </span><span>items</span><span>.</span><span>length</span><span>; i++) {</span></p> <p align=left><span><span>           </span>out.println(</span><span>"<hr>"</span><span>);</span></p> <p align=left><span><span>           </span>item = </span><span>items</span><span>[i];</span></p> <p align=left><span><span>           </span></span><strong><span>if</span></strong><span>(item == </span><strong><span>null</span></strong><span>)</span></p> <p align=left><span><span>              </span>out.println(</span><span>"Unknow itemId: "</span><span>+</span><span>itemIds</span><span>[i]);</span></p> <p align=left><span><span>           </span></span><strong><span>else</span></strong><span>{</span></p> <p align=left><span><span>              </span>out.println();</span></p> <p align=left><span><span>              </span>String formURL = request.getContextPath()+</span><span>"/orderPage"</span><span>;</span></p> <p align=left><span><span>              </span>formURL = response.encodeURL(formURL);</span></p> <p align=left><span><span>              </span></span></p> <p align=left><span><span>              </span>out.println(</span><span>"<form action='"</span><span>+formURL+</span><span>"'>"</span><span>);</span></p> <p align=left><span><span>              </span>out.println(</span><span>"<input type='hidden' name='itemId' value='"</span><span>+item.getItemId()+</span><span>"'>"</span><span>);</span></p> <p align=left><span><span>              </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>              </span>out.println(</span><span>"<input type='submit' value='add to shopping cart'></form></body></html>"</span><span>);</span></p> <p align=left><span><span>           </span>}</span></p> <p align=left><span><span>       </span>}</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left><span>}</span></p> <p> </p> <p><span>2</span><span>?/span><span>ComputerBook</span><span>.java</span></p> <p> </p> <p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p> <p align=left> </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>    </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> init(){</span></p> <p align=left><span><span>       </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>       </span>setItems(ids);</span></p> <p align=left><span><span>       </span>setTitle(</span><span>"Japanese Book"</span><span>);</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left><span>}</span></p> <p> </p> <p><span>3</span><span>?/span><span>JapaneseBook.java</span></p> <p> </p> <p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p> <p align=left> </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>    </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> init(){</span></p> <p align=left><span><span>       </span>String[] ids = {</span><span>"book5"</span><span>,</span><span>"book6"</span><span>};</span></p> <p align=left><span><span>       </span>setItems(ids);</span></p> <p align=left><span><span>       </span>setTitle(</span><span>"Computer Book"</span><span>);</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left><span>}</span></p> <p> </p> <p><span>4</span><span>?/span><span>OrderPage</span><span>.java</span></p> <p> </p> <p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p> <p align=left> </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> </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> </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> </p> <p align=left><span><span>    </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>           </span></span><strong><span>throws</span></strong><span> ServletException, IOException {</span></p> <p align=left><span><span>       </span>HttpSession session = request.getSession();</span></p> <p align=left><span><span>       </span>ShoppingCart cart;</span></p> <p align=left><span><span>       </span></span><strong><span>synchronized</span></strong><span>(session){</span></p> <p align=left><span><span>           </span>cart = (ShoppingCart)session.getAttribute(</span><span>"shop"</span><span>);</span></p> <p align=left><span><span>           </span></span><strong><span>if</span></strong><span>(cart == </span><strong><span>null</span></strong><span>){</span></p> <p align=left><span><span>              </span>cart = </span><strong><span>new</span></strong><span> ShoppingCart();</span></p> <p align=left><span><span>              </span>session.setAttribute(</span><span>"shop"</span><span>, cart);</span></p> <p align=left><span><span>           </span>}</span></p> <p align=left><span><span>           </span>String itemId = request.getParameter(</span><span>"itemId"</span><span>);</span></p> <p align=left><span><span>           </span></span><strong><span>if</span></strong><span>(itemId != </span><strong><span>null</span></strong><span>){</span></p> <p align=left><span><span>              </span>String num = request.getParameter(</span><span>"num"</span><span>);</span></p> <p align=left><span><span>              </span></span><strong><span>if</span></strong><span>(num == </span><strong><span>null</span></strong><span>)</span></p> <p align=left><span><span>                  </span>cart.addItem(itemId);</span></p> <p align=left><span><span>              </span></span><strong><span>else</span></strong><span>{</span></p> <p align=left><span><span>                  </span></span><strong><span>int</span></strong><span> numItems;</span></p> <p align=left><span><span>              </span></span><strong><span>try</span></strong><span> {</span></p> <p align=left><span><span>                  </span>numItems = Integer.<em>parseInt</em>(num);</span></p> <p align=left><span><span>              </span>} </span><strong><span>catch</span></strong><span> (NumberFormatException e) {</span></p> <p align=left><span><span>                  </span>numItems = 1;</span></p> <p align=left><span><span>              </span>}</span></p> <p align=left><span><span>              </span>cart.setNum(itemId, numItems);</span></p> <p align=left><span><span>              </span>}</span></p> <p align=left><span><span>           </span>}</span></p> <p align=left><span><span>       </span>}</span></p> <p align=left><span><span>       </span></span></p> <p align=left><span><span>       </span>response.setContentType(</span><span>"text/html"</span><span>);</span></p> <p align=left><span><span>       </span>PrintWriter out = response.getWriter();</span></p> <p align=left><span><span>       </span>String title = </span><span>"Your Order"</span><span>;</span></p> <p align=left><span><span>       </span>out.println(</span><span>"<html><head><title>"</span><span>+title+</span><span>"</title></head><body><h3>"</span><span>+title+</span><span>"</h3>"</span><span>);</span></p> <p align=left><span><span>       </span></span><strong><span>synchronized</span></strong><span>(session){</span></p> <p align=left><span><span>           </span>List<ItemOrder> itemOrders = cart.getItemOrders();</span></p> <p align=left><span><span>           </span></span><strong><span>if</span></strong><span>(itemOrders.size() == 0)</span></p> <p align=left><span><span>              </span>out.println(</span><span>"No items"</span><span>);</span></p> <p align=left><span><span>           </span></span><strong><span>else</span></strong><span>{</span></p> <p align=left><span><span>              </span>out.println(</span><span>"<table border=1><tr><th>Item ID<th>Short Description<th>Long Description<th>Unit Price<th>Number<th>Total Price"</span><span>);</span></p> <p align=left><span><span>              </span>ItemOrder order;</span></p> <p align=left><span><span>              </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i < itemOrders.size(); i++) {</span></p> <p align=left><span><span>                  </span>order = (ItemOrder)itemOrders.get(i);</span></p> <p align=left><span><span>              </span><span>    </span>out.println(</span><span>"<tr><td>"</span><span>+order.getItemId()+</span><span>"<td>"</span><span>+order.getSDesc()+</span><span>"<td>"</span><span>+order.getLDesc()+</span><span>"<td>"</span><span>+order.getUnitPrice()+</span><span>"<td>"</span><span>);</span></p> <p align=left><span><span>                  </span>out.println(</span><span>"<form><input type='hidden' name='itemId' value='"</span><span>+order.getItemId()+</span><span>"'>"</span><span>);</span></p> <p align=left><span><span>                  </span>out.println(</span><span>"<input type='text' name='num' size=3 value='"</span><span>+order.getNum()+</span><span>"'>"</span><span>);</span></p> <p align=left><span><span>                  </span>out.println(</span><span>"<input type='submit' value='update order'></form><td>"</span><span>);</span></p> <p align=left><span><span>                  </span>out.println(order.getTotalPrice());</span></p> <p align=left><span><span>           </span><span>    </span>}</span></p> <p align=left><span><span>              </span></span></p> <p align=left><span><span>              </span>String checkURL = response.encodeURL(request.getContextPath()+</span><span>"/check.html"</span><span>);</span></p> <p align=left><span><span>              </span>out.println(</span><span>"</table><form action='"</span><span>+checkURL+</span><span>"'>"</span><span>);</span></p> <p align=left><span><span>              </span>out.println(</span><span>"<input type='submit' value='submit'></form></body></html>"</span><span>);</span></p> <p align=left><span><span>           </span>}</span></p> <p align=left><span><span>       </span>}</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left><span>}</span></p> <p> </p> <p><span>5</span><span>?/span><span>ShoppingCart.java</span></p> <p> </p> <p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p> <p align=left> </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> </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>    </span></span><strong><span>private</span></strong><span> List<<span>ItemOrder</span>> </span><span>itemOrders</span><span>;</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> ShoppingCart() {</span></p> <p align=left><span><span>       </span></span><span>itemOrders</span><span> = </span><strong><span>new</span></strong><span> ArrayList<<span>ItemOrder</span>>();</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left><span><span>    </span></span></p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> List<<span>ItemOrder</span>> getItemOrders(){</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><span>itemOrders</span><span>;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left><span><span>    </span></span></p> <p align=left><span><span>    </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>       </span><span>ItemOrder</span> order;</span></p> <p align=left><span><span>       </span></span><strong><span>for</span></strong><span>(</span><strong><span>int</span></strong><span> i=0;i<</span><span>itemOrders</span><span>.size();i++){</span></p> <p align=left><span><span>           </span>order = (<span>ItemOrder</span>)</span><span>itemOrders</span><span>.get(i);</span></p> <p align=left><span><span>           </span></span><strong><span>if</span></strong><span>(itemId.equals(order.getItemId())){</span></p> <p align=left><span><span>              </span>order.addNum();</span></p> <p align=left><span><span>              </span></span><strong><span>return</span></strong><span>;</span></p> <p align=left><span><span>           </span>}</span></p> <p align=left><span><span>       </span>}</span></p> <p align=left><span><span>       </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>       </span></span><span>itemOrders</span><span>.add(newOrd);</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left><span><span>    </span></span></p> <p align=left><span><span>    </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>       </span><span>ItemOrder</span> order;</span></p> <p align=left><span><span>       </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i < </span><span>itemOrders</span><span>.size(); i++) {</span></p> <p align=left><span><span>           </span>order = (<span>ItemOrder</span>)</span><span>itemOrders</span><span>.get(i);</span></p> <p align=left><span><span>           </span></span><strong><span>if</span></strong><span>(itemId.equals(order.getItemId())){</span></p> <p align=left><span><span>              </span></span><strong><span>if</span></strong><span>(num <=0)</span></p> <p align=left><span><span>                  </span></span><span>itemOrders</span><span>.remove(i);</span></p> <p align=left><span><span>              </span></span><strong><span>else</span></strong></p> <p align=left><span><span>                  </span>order.setNum(num);</span></p> <p align=left><span><span>           </span>}</span></p> <p align=left><span><span>           </span></span><strong><span>return</span></strong><span>;</span></p> <p align=left><span><span>       </span>}</span></p> <p align=left><span><span>       </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>       </span></span><span>itemOrders</span><span>.add(newOrd);</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left><span>}</span></p> <p> </p> <p><span>6</span><span>?/span><span>CatalogItem</span><span>.java</span></p> <p> </p> <p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p> <p align=left> </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>    </span></span><strong><span>private</span></strong><span> <span>String</span> </span><span>itemId</span><span>;</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>private</span></strong><span> <span>String</span> </span><span>sDesc</span><span>;</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>private</span></strong><span> <span>String</span> </span><span>lDesc</span><span>;</span></p> <p align=left> </p> <p align=left><span><span>    </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> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> <span>String</span> getItemId() {</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><span>itemId</span><span>;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </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>       </span></span><strong><span>this</span></strong><span>.</span><span>itemId</span><span> = itemId;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> <span>String</span> getLDesc() {</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><span>lDesc</span><span>;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </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>       </span></span><span>lDesc</span><span> = desc;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> </span><strong><span>float</span></strong><span> getPrice() {</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><span>price</span><span>;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </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>       </span></span><strong><span>this</span></strong><span>.</span><span>price</span><span> = price;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> <span>String</span> getSDesc() {</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><span>sDesc</span><span>;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </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>       </span></span><span>sDesc</span><span> = desc;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </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>       </span></span><strong><span>super</span></strong><span>();</span></p> <p align=left><span><span>       </span></span><strong><span>this</span></strong><span>.</span><span>itemId</span><span> = itemId;</span></p> <p align=left><span><span>       </span></span><span>sDesc</span><span> = desc;</span></p> <p align=left><span><span>       </span></span><span>lDesc</span><span> = desc2;</span></p> <p align=left><span><span>       </span></span><strong><span>this</span></strong><span>.</span><span>price</span><span> = price;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left><span>}</span></p> <p> </p> <p><span>7</span><span>?/span><span>ItemOrder.java</span></p> <p> </p> <p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p> <p align=left> </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>    </span></span><strong><span>private</span></strong><span> <span>CatalogItem</span> </span><span>item</span><span>;</span></p> <p align=left> </p> <p align=left><span><span>    </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> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> ItemOrder(<span>CatalogItem</span> item) {</span></p> <p align=left><span><span>       </span>setItem(item);</span></p> <p align=left><span><span>       </span>setNum(1);</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> <span>CatalogItem</span> getItem() {</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><span>item</span><span>;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </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>       </span></span><strong><span>this</span></strong><span>.</span><span>item</span><span> = item;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> </span><strong><span>int</span></strong><span> getNum() {</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><span>num</span><span>;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </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>       </span></span><strong><span>this</span></strong><span>.</span><span>num</span><span> = num;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> String getItemId() {</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><span>item</span><span>.getItemId();</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> String getSDesc() {</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><span>item</span><span>.getSDesc();</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> String getLDesc() {</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><span>item</span><span>.getLDesc();</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> </span><strong><span>float</span></strong><span> getUnitPrice() {</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><span>item</span><span>.getPrice();</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> addNum() {</span></p> <p align=left><span><span>       </span>setNum(</span><span>num</span><span> + 1);</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> </span><strong><span>void</span></strong><span> cancelOrder() {</span></p> <p align=left><span><span>       </span>setNum(0);</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span><span>    </span></span><strong><span>public</span></strong><span> </span><strong><span>float</span></strong><span> getTotalPrice() {</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><span>num</span><span> * getUnitPrice();</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left> </p> <p align=left><span>}</span></p> <p> </p> <p><span>8</span><span>?/span><span>Catalog.java</span></p> <p align=left><strong> </strong></p> <p align=left><strong><span>package</span></strong><span> com.landril.session;</span></p> <p align=left> </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>    </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>           </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>Q?/span><span>Hibernate"</span><span>, 57),</span></p> <p align=left><span><span>           </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>Q?/span><span>Spring"</span><span>, 36),</span></p> <p align=left><span><span>           </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>Q?/span><span>Tomcat"</span><span>, 23),</span></p> <p align=left><span><span>           </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>Q?/span><span>Jboss"</span><span>, 35),</span></p> <p align=left><span><span>           </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>Q?/span><span>Japanese1"</span><span>, 35),</span></p> <p align=left><span><span>           </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>Q?/span><span>Japanese2"</span><span>, 23) };</span></p> <p align=left> </p> <p align=left><span><span>    </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>       </span><span>CatalogItem</span> item;</span></p> <p align=left><span><span>       </span></span><strong><span>if</span></strong><span> (itemId == </span><strong><span>null</span></strong><span>)</span></p> <p align=left><span><span>           </span></span><strong><span>return</span></strong><span> </span><strong><span>null</span></strong><span>;</span></p> <p align=left><span><span>       </span></span><strong><span>for</span></strong><span> (</span><strong><span>int</span></strong><span> i = 0; i < </span><em><span>items</span></em><span>.</span><span>length</span><span>; i++) {</span></p> <p align=left><span><span>           </span>item = </span><em><span>items</span></em><span>[i];</span></p> <p align=left><span><span>           </span></span><strong><span>if</span></strong><span> (itemId.equals(item.getItemId()))</span></p> <p align=left><span><span>              </span></span><strong><span>return</span></strong><span> item;</span></p> <p align=left><span><span>       </span>}</span></p> <p align=left><span><span>       </span></span><strong><span>return</span></strong><span> </span><strong><span>null</span></strong><span>;</span></p> <p align=left><span><span>    </span>}</span></p> <p align=left><span>}</span></p> <p align=left> </p> <p><span>9</span><span>?/span><span>check.html</span></p> <p> </p> <p align=left><span><</span><span>html</span><span>></span></p> <p align=left><span><</span><span>head</span><span>></span></p> <p align=left><span><</span><span>title</span><span>></span><span>checking out</span><span></</span><span>title</span><span>></span></p> <p align=left><span></</span><span>head</span><span>></span></p> <p align=left><span><</span><span>body</span><span>></span></p> <p align=left><span>Checking out</span></p> <p><span></</span><span>body</span><span>></span></p> <img src ="http://www.aygfsteel.com/phe441/aggbug/114429.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/phe441/" target="_blank">landril</a> 2007-04-28 21:33 <a href="http://www.aygfsteel.com/phe441/archive/2007/04/28/114429.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Servlet基础知识?qing)常用?/title><link>http://www.aygfsteel.com/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.aygfsteel.com/phe441/archive/2007/04/28/114427.html</guid><wfw:comment>http://www.aygfsteel.com/phe441/comments/114427.html</wfw:comment><comments>http://www.aygfsteel.com/phe441/archive/2007/04/28/114427.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/phe441/comments/commentRss/114427.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/phe441/services/trackbacks/114427.html</trackback:ping><description><![CDATA[  <p><span>Servlet</span><span>基础知识?qing)常用?/span></p> <p> </p> <p><span><span>一?/span></span><span>Servlet</span><span>生命周期</span></p> <p><span>服务器加?/span><span>Servlet</span><span>Q创?/span><span>Servlet</span><span>cȝ实例Q调?/span><span>Servlet</span><span>?/span><span>init()</span><span>Ҏ(gu)Q处理客L(fng)的服务调用(如果收到hQ调?/span><span>service()</span><span>Ҏ(gu)Q?/span><span>service()</span><span>Ҏ(gu)处理hq将l果q回客户端,{待下一下请求,重复Q,</span><span>Servlet</span><span>在服务器调用</span><span>destroy()</span><span>Ҏ(gu)后被卸蝲</span></p> <p> </p> <p><span><span>二?/span></span><span>?x)话跟踪技?/span></p> <p><span><span>1?nbsp;</span></span><span>使用隐藏表单字段</span></p> <p><span><INPUT TYPE=”HIDDEN” NAME=”session” VALUE=”landril”</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>?x)?/span><span>HttpSession</span></p> <p> </p> <p><span>ServletRequest</span><span>Q用于将h的信息传送给</span><span>Servlet</span></p> <p><span>ServletResponse</span><span>Q提供服务器对客L(fng)h的响?/span></p> <p><span>RequestDispatcher</span><span>Q接收用L(fng)的请求ƈ其发送到M资源Q?/span><span>RequestDispatcher</span><span>对象用作资源的封装器Q通过路径或名U指?/span></p> <p><span>ServletConfig</span><span>Q定?/span><span>Servlet</span><span>配置对象Q可以从</span><span>web.xml</span><span>文g中获取初始化参数的g?qing)?/span><span>ServletContext</span><span>对象的引?/span></p> <p><span>ServletContext</span><span>Q让</span><span>Servlet</span><span>查找有关</span><span>Servlet</span><span>引擎?qing)其环境的信?/span></p> <img src ="http://www.aygfsteel.com/phe441/aggbug/114427.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/phe441/" target="_blank">landril</a> 2007-04-28 21:32 <a href="http://www.aygfsteel.com/phe441/archive/2007/04/28/114427.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ͽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank">ӽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ʡ</a>| <a href="http://" target="_blank">̫</a>| <a href="http://" target="_blank">ݳ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͨ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank">ƺ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ȫ</a>| <a href="http://" target="_blank">ϰ</a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͺ</a>| <a href="http://" target="_blank">հ</a>| <a href="http://" target="_blank">â</a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Դ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>