http://www.doc88.com/p-1092124402412.html
学习目标:掌握Servlet、创建一个HTTPServlet应用编程接口
一、概述
1.Java Servlet API是javaSoft公司推出的服务器端应用程序接口类库。
2.位于WEB服务器内部的服务器端的Java应用程序
二、特性
1.独立于平台和协议
2.生成动态的Web页面
三、应用
1.担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层
2.扩展服务器的性能
四、运行环境
由支持Java虚拟机的Web服务器进行加载
五、环境
1.提供Servlet接口和类的javax.servlet和javax.servlet.http包
六、实践总结
1.生命周期:
a.创建Servlet--调用init对象
b.创建线程--调用Service方法实例
c.处理HTTP请求方法--由Service方法依据接收到的HTTP请求类型调用doGet、doPost或其他doXxx方法
d.卸载Servlet--调用Servlet的Destroy方法
2.HTTPServlet应用编程接口(GetServletConfig(),GetServletInfo())
2.1 简介:HTTPServlet使用一个HTML表单来发送和接收数据。
2.2 创建HttpServlet(HttpServletRequest)
package learn;
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import static com.sun.org.apache.xalan.internal.xsltc.compiler.util.Util.println;
//创建HttpServlet
//扩展HttpServlet抽象类
public class ServletSample extends HttpServlet{
//重写doGet()
String myName = "";
public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException {
String gmyName;//获取HTTP请求信息
java.util.Enumeration keys = request.getParameterNames();
while(keys.hasMoreElements());{
String key = (String)keys.nextElement();
if(key.equalsIgnoreCase("myName")) {
myName = request.getParameter(key);
}
}
if(myName == ""){
myName = "Hello";
}
response.setContentType("text/html");
response.setHeader("Pragma","No-cache");
response.setDateHeader("Expires",0);
PrintWriter out = response.getWriter();
out.println("<head><title>Just a basic servlet</title></head>");
out.println("<body>");
out.println("<h1>Just a basic servlet</h1>");
out.println("<p>"+myName+",this is a very basic servlet that write san HTML page");
out.println("<p>For instruction son running those sample son your WebSphere应用服务器,"+"open the page:");
out.println("<pre>http://<em>your.server.name</em>/IBMWebAs/samples/index.aspl</pre>");
out.println("where<em>your.server.name</em>is the host name of your WebSphere应用服务器。");
out.println("</body></html>");
out.flush();
}
}
关联知识:
1.公共网关接口CGI脚本
2.WebSphere应用服务器
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。