一、什么是servlet
Servlet是一种小型的Java程序,它扩展了Web服务器的功能。作为一种服务器端的应用,当被请求时开始执行。Servlet提供的功能大多与JSP类似,不过实现的方式不同。JSP通常是大多数HTML代码中嵌入少量的Java代码,而servlets全部由Java写成并且生成HTML。
说白了,就是和ASP.NET中的一般处理程序类似。是个特殊的Java类,可以处理request和response请求响应的类。
二、如何使用
需要在web.xml中进行配置:
<web-app>
<servlet>
<servlet-name>myservlet</servlet-name>
<servlet-class>LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>myservlet</servlet-name>
<url-pattern>loginServlet</url-pattern>
</servlet-mapping>
</web-app>
然后servlet类要继承HttpServlet:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class LoginServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException,
IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
System.out.println("username=" + username);
System.out.println("password=" + password);
response.setContentType("text/html;charset=GB18030");
//response.getWriter().println("Login Success!!!");
//response.getWriter().println("登录成功!!!");
response.getWriter().println("<html>");
response.getWriter().println("<head>");
response.getWriter().println("<title>登录信息</title>");
response.getWriter().println("</head>");
response.getWriter().println("<body>");
response.getWriter().println("欢迎【" + username + "】用户登录成功!!!");
response.getWriter().println("</body>");
response.getWriter().println("</html>");
}
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException,
IOException {
doGet(request, response);
}
}
这是展示了servlet是如何工作的,可以简单的对get提交或者post提交的request进行处理并响应。但是现在用tomcat或者其他的容器进行管理,还有jsp的应用,则不需要像上面代码这样实现servlet类了。