- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
WebSphere快速入门36
WebSphere快速入门(36)· Servlet2:JKToys Login和Toy Display Servlets
在这个练习里你将学会在一个 web 会话里用户在许多 HTML 页面和 servlets 里移动时维护信息,完成一个事务。
按照这个练习,你将能用 HttpSession 类存储在会话里持续的信息。你还将学习怎样阻止在浏览器里缓存页面,来防止缓存的页面显示前一个会话或查询的错误信息。在这个练习里,你将建立三个 servlets :
· Login
· DisplayToys
· TotalPurchase
这个三个 servlets 的组合将满足用户的需求。对每一个方法,大多数答案代码可以在一个叫 cutAndPaste 的方法里找到。这将使你在敲键盘敲烦的时候能 ”cut-and-paste” 。
· 第一部分:修改 Login servlet 来保存会话数据
1. 在 VAJ 选择 com.ibm.waslab.Servlet2 包。从这个包里选择 LoginSevlet 。在 doPost() 里定位包含下面文字的代码行:
//Enter code here to retrieve the customer number form the form data
2. 在那个下面输入以下的代码。这个代码调用 getCustomerNumber() 方法来提取输入到 HTML 表格里的客户号。如果 Login 按钮被按下时客户号码为空,这个方法抛出一个 InvalidParameterException; 你用 outputLoginFailedMessage() 显示一个错误消息来处理这个异常。
String customerNumber=null;
try
{
customerNumber=getCustomerNumber(req);
}
catch (InvalidParameterException e)
{
//Output failure message
outputLoginFailedMessage(out,”You did not enter your customer number.”);
return;
}
3. 保存方法。你将得到错误,因为 getCustomerNumber() 和 outputLoginFailedMessage() 方法还没有被编码。带着错误保存方法,继续下一步。
4. 创建 getCustomerNumber() 方法。这个方法比前一个练习里的同名方法简单得多,因为只有一个字段要从表格里取出来。以下行表示这个方法:
private String getCustomerNumber(HttpServletRequest req) throws
InvalidParameterException{
String paramValue=(String)
req.getParameterValues(“CUSTNO”)[0];
//check for missing parameters
if(paramValue.length()==0)
throws(new InvalidParameterException(“Required parameter missing”));
return paramValue;
}
保存这个方法,返回到 doPost() 。
5. 在 doPost() 方法的下一行,调用 locate() 方法来取出对应输入的客户号码的记录:
//Look for this customer in the database
JKToysCustomer customer=locate(customerNumber);
如果没有在数据库里发现客户,返回一个 null 客户对象,否则的话它包含先前为这个客户号码保存在数据库里的信息。
6. 如果客户号码没有在数据库里找到,你需要提供一个合适的消息。在 locate() 调用下面输入这些行:
//customer will be null if customer not found in the database
if(customer= =null)
{
//Output failure message
outputLoginFailedMessage(out,”The customer number you entered was not found in our database.”);
return;
}
7. 继续下面的代码,处理客户号码在数据库里找到的情况:
else
{
//create
您可能关注的文档
- 人教版化学选修四 3-3-1盐溶液呈现不同酸碱性的原因.doc
- 东莞羊毛衫加工厂教你怎样防止羊毛衫缩水.doc
- 简约型运营体系 成长型房企首选.docx
- 庆典节目筛选安排.doc
- 舵机供电模块.pdf
- 同济大学高数课件ch2_1.ppt
- 经典建筑的影响调查.doc
- 高级英语阅读命题分析及应试技巧.docx
- 江苏省新型农村合作医疗参合率多因素分析.pdf
- 第5章 电子演示文稿PowerPoint2007.pptx
- 2024年云阳县公务员考试行测试卷历年真题及答案详解(有一套).docx
- 2024年垫江县公务员考试行测试卷历年真题及答案详解(名师系列).docx
- 2024年巴音郭楞蒙古自治州公务员考试行测试卷历年真题精选答案详解.docx
- 2024年毕节地区公务员考试行测试卷历年真题含答案详解.docx
- 2024年怀化市公务员考试行测真题及一套完整答案详解.docx
- 2023年龙岩市公务员考试行测试卷历年真题及答案详解(名校卷).docx
- 2024年咸宁市公务员考试行测试卷历年真题及完整答案详解.docx
- 2024年云浮市公务员考试行测试卷历年真题带答案详解.docx
- 2024年七台河市公务员考试行测试卷历年真题及答案详解(典优).docx
- 2024年大理州公务员考试行测真题及答案详解(全优).docx
文档评论(0)