JSPServletLab AssignmentI.docx

上传人:b****8 文档编号:10019882 上传时间:2023-02-08 格式:DOCX 页数:24 大小:438.52KB
下载 相关 举报
JSPServletLab AssignmentI.docx_第1页
第1页 / 共24页
JSPServletLab AssignmentI.docx_第2页
第2页 / 共24页
JSPServletLab AssignmentI.docx_第3页
第3页 / 共24页
JSPServletLab AssignmentI.docx_第4页
第4页 / 共24页
JSPServletLab AssignmentI.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

JSPServletLab AssignmentI.docx

《JSPServletLab AssignmentI.docx》由会员分享,可在线阅读,更多相关《JSPServletLab AssignmentI.docx(24页珍藏版)》请在冰豆网上搜索。

JSPServletLab AssignmentI.docx

JSPServletLabAssignmentI

1.Writeaservletthatprints"HelloWorld"

Selveletcode:

packagemyPackage.huangcaiwang;

importjava.io.*;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

publicclassHelloWorldextendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

response.setContentType("text/html");

PrintWriterout=response.getWriter();

out.print("

Helloworld

");

}

}

XMLCode(web.xml):

HelloWorld

myPackage.huangcaiwang.HelloWorld

HelloWorld

/HelloWorld

Output:

2.Writeaservletthatknowstowhomit'ssayinghello,ThisservletmustbecalledfromanHTMLpagetakingusernameasinput.(Usebothgetandpostmethod)

HTMLcode:

myInput.html

UserName:



Selveletcode:

packagemyPackage.huangcaiwang;

importjava.io.*;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

publicclassWhoSayingHelloextendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

response.setContentType("text/html");

PrintWriterout=response.getWriter();

Stringname=request.getParameter("name");

out.print("

"+name+"issayingHello
");

out.println("usingthedoGETmethod

");

}

publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

response.setContentType("text/html");

PrintWriterout=response.getWriter();

Stringname=request.getParameter("name");

out.print("

"+name+"issayingHello
");

out.println("usingthedoPOSTmethod

");

}

}

XMLCode(web.xml):

WhoSayingHello

myPackage.WhoSayingHello

WhoSayingHello

/WhoSayingHello

Output:

Changethecode“method=”get””into“method=”post””inhtml,thenshowtheoutput:

3.Writeaservletthatcountsanddisplaysthenumberoftimesithasbeenaccessedsincethelastserverreboot(Manythreads,oneservletinstance).

Selveletcode:

packagemyPackage.huangcaiwang;

importjava.io.*;

importjavax.servlet.ServletConfig;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

publicclassCountsextendsHttpServlet{

staticintcounts=0;

publicvoidinit(ServletConfigconfig)throwsServletException

{

super.init(config);

}

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

++counts;

response.setContentType("text/html");

PrintWriterout=response.getWriter();

out.print("

thispagehasbeenaccessed"+counts+"times

");

}

}

XMLCode(web.xml):

Counts

myPackage.huangcaiwang.Counts

Counts

/Counts

Output:

Everytimewhenyourefresh,thecouts’stimespulsone,thenoutput:

4.Writeaservletthatprintsthenameandvalueforallofitsinitparameters.

Selveletcode:

packagemyPackage.huangcaiwang;

importjava.io.IOException;

importjava.io.PrintWriter;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

publicclassGetInitParametersextendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

response.setContentType("text/html");

PrintWriterout=response.getWriter();

java.util.Enumerationparams=this.getServletConfig().getInitParameterNames();

while(params.hasMoreElements()){

Stringname=params.nextElement().toString();

Stringvalue=this.getServletConfig().getInitParameter(name);

out.println(name+"="+value);

out.println("
");

}

}

}

XMLCode(web.xml):

GetInitParameters

myPackage.huangcaiwang.GetInitParameters

class

Ecom612

GetInitParameters

/GetInitParameters

Output:

5.Writeaservletthatdisplaysinformationaboutitsserver(TheprocessiscalledSnooping).

Hints:

-publicStringServletRequest.getServerName()

publicintServletRequest.getServerPort()

publicStringServletContext.getServerInfo()

publicObjectServletContext.getAttribute(Stringname)

Selveletcode:

packagemyPackage.huangcaiwang;

importjava.io.IOException;

importjava.io.PrintWriter;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

publicclassSoonpingextendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

response.setContentType("text/html");

PrintWriterout=response.getWriter();

StringserverName=request.getServerName();

intserverPort=request.getServerPort();

StringServerInfo=getServletContext().getServerInfo();

getServletContext().setAttribute("Color","red");

Objectattribute=getServletContext().getAttribute("Color");

out.print("informationaboutmyserverareasfollows:

");

out.println("
");

out.print("serverName:

"+serverName);

out.print("
");

out.print("serverPort:

"+serverPort);

out.print("
");

out.print("ServerInfo:

"+ServerInfo);

out.print("
");

out.print("attribute:

"+attribute);

out.print("
");

}

}

XMLCode(web.xml):

Soonping

myPackage.huangcaiwang.Soonping

Soonping

/Soonping

Output:

6.Writeaservletthatsnoopstheserver'sservletandJavaversion.

Selveletcode:

packagemyPackage.huangcaiwang;

importjava.io.IOException;

importjava.io.PrintWriter;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

importmyPackage.huangcaiwang.VersionDetector;

publicclassSnoopVersionextendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

response.setContentType("text/html");

PrintWriterout=response.getWriter();

out.println("ServletVersion:

"+VersionDetector.getServletVersion());

out.println("
");

out.println("JavaVersion:

"+VersionDetector.getJavaVersion());

}

}

JavacodeofVersionDetectorclass:

packagemyPackage.huangcaiwang;

//Copyright(C)2000-2001byJasonHunter.

//Allrightsreserved.Useofthisclassislimited.

//PleaseseetheLICENSEformoreinformation.

/***

*AclasstodeterminethecurrentServletAPIversionnumber,andthe

*currentJDKversionnumber.Itlooksattheavailableclassesand

*variablestomakethedetermination.TheclasscandetectServlet

*APIversionsupto2.2,andJDKversionsupto1.3.

*

*Itcanbeusedlikethis:

*

*StringservletVersion=VersionDetector.getServletVersion();

*StringjavaVersion=VersionDetector.getJavaVersion();

*@authorJasonHunter,Copyright©2000

*@version1.3,2002/04/22,addeddetectionofJDK1.5andServletAPI2.4

*@version1.2,2001/04/11,addeddetectionofJDK1.4

*@version1.1,2000/09/22,addeddetectionofServletAPI2.3

*@version1.0,2000/02/08

*/

publicclassVersionDetector{

staticStringservletVersion;

staticStringjavaVersion;

/***

*DeterminestheServletAPIversionnumber.

*@returnaStringrepresentationoftheservletversion

*/

publicstaticStringgetServletVersion(){

if(servletVersion!

=null){

returnservletVersion;

}

//Determinetheservletversionbylookingatavailableclasses

//andvariables

//javax.servlet.http.HttpSessionwasintroducedinServletAPI2.0

//javax.servlet.RequestDispatcherwasintroducedinServletAPI2.1

//javax.servlet.http.HttpServletResponse.SC_EXPECTATION_FAILEDwas

//introducedinServletAPI2.2

//javax.servlet.FilterisslatedtobeintroducedinServletAPI2.3

//CountupversionsuntilaNoClassDefFoundErrororNoSuchFieldException

//endsthetry

Stringver=null;

try{

ver="1.0";

Class.forName("javax.servlet.http.HttpSession");

ver="2.0";

Class.forName("javax.servlet.RequestDispatcher");

ver="2.1";

Class.forName("javax.servlet.http.HttpServletResponse")

.getDeclaredField("SC_EXPECTATION_FAILED");

ver="2.2";

Class.forName("javax.servlet.Filter");

ver="2.3";

Class.forNam

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 远程网络教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1