初学Servlet之实现Servlet接口
package app01a;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebServlet;
/**
* 如何访问:
* http://localhost:端口号(使用tomcat没有修改过的是8080)/项目名/下面WebServlet中的urlPatterns
* 如果使用的是web.xml配置文件,那么访问路径就变为:
* http://localhost:端口号(使用tomcat没有修改过的是8080)/项目名/web.xml中该servlet对应的url-pattern
* @author Administrator
*
*/
// 暂时认为servletConfig的内容就是WebServlet中的内容
@WebServlet(name = "MyServlet", urlPatterns = { "/my" })
public class MyServlet implements Servlet{
private transient ServletConfig servletConfig;
/**
* 销毁servlet时,servlet容器就会调用这个方法
*/
@Override
public void destroy() {
// TODO Auto-generated method stub
}
/**
* 这个方法会返回有servlet传给init方法的ServletConfig
*/
@Override
public ServletConfig getServletConfig() {
return servletConfig;
}
/**
* 这个方法会返回Servlet的描述
*/
@Override
public String getServletInfo() {
return "My Servlet";
}
/**
* 第一次请求时调用,在后续请求中不会再调用
*/
@Override
public void init(ServletConfig servletConfig) throws ServletException {
this.servletConfig = servletConfig;
}
/**
* 每当请求servlet时,就会调用这个方法,第一次请求时调用init方法和service方法,后续的请求只调用service方法
*/
@Override
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
String servletName = servletConfig.getServletName();
// 设置响应内容类型
response.setContentType("text/html");
PrintWriter writer = response.getWriter();
writer.print("<html><head></head>" + "<body>Hello from " + servletName + "<br/>" + servletConfig + "</body></html>");
}
}