第五章Servlet 开发
第一节:Hello Servlet !
Web.xml配置servlet名称、映射等,此处略。
package com.java1234.web;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloWorldServlet extends HttpServlet{
/**
*
*/
private static final long serialVersionUID = 1L;
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
System.out.println("get");
this.doPost(request, response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setCharacterEncoding("gbk");
PrintWriter out=response.getWriter();
out.println("<html>");
out.println("<head><title>Hello Servlet !</title></head>");
out.println("Hello Servlet !");
out.println("</html>");
out.close();
}
}
第二节:servlet 生命周期
Servlet 的生命周期,简单的概括这就分为四步:servlet 类加载—>实例化—>服务—>销毁。
第三节:客户端跳转VS 服务器端跳转
1,在Servlet 中获取session,application
2,客户端跳转response.sendRedirect(“目标地址”);
//web.xml配置同上
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setAttribute("requestKey", "request值");
HttpSession session=request.getSession(); // 获取session
session.setAttribute("sessionKey", "session值");
ServletContext application=this.getServletContext(); // 获取application
application.setAttribute("applicationKey", "application值");
response.sendRedirect("target.jsp"); // 客户端跳转/重定向
}
//target.jsp
目标地址
request值:<%=request.getAttribute(“requestKey”) %>
session值:<%=session.getAttribute(“sessionKey”) %>
application值:<%=application.getAttribute(“applicationKey”) %>
(sendRedirect重定向不携带request参数)

本文介绍Servlet的基础应用,包括HelloServlet示例代码、Servlet的生命周期以及客户端与服务器端跳转的区别。通过具体示例展示了如何使用Servlet处理HTTP请求。
293






