String username = request.getParameter("username");
/*
* 把得到的用户名字给 username
*/
if (username != null && username.length()> 0) {//若username不为 空 并且长度大于零则
RequestDispatcher dispatcher =
getServletContext().getRequestDispatcher("/response");
/*
*定义要发送给服务器的请求
*cnotext为一直包装
*该路径名必须以 "/" 开头,并相对于当前上下文根进行解释。
*如果 ServletContext
无法返回 RequestDispatcher
,则此方法返回 null
。
*/
if (dispatcher != null) {
dispatcher.include(request, response);
/*
*利用include()方法将HTTP请求转送给其他Servlet(/response)后,
*被调用的Servlet虽然可以处理这个HTTP请求,但是最后的主导权仍然是在当前的Servlet。
*/
}
}
@WebServlet("/response")//url映射
public class ResponseServlet extends HttpServlet {
@Override//重写doGet方法
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {//抛出可能出现servlet和IO异常
try (PrintWriter out = response.getWriter()) {//捕获可能发生的异常
// then write the data of the response
String username = request.getParameter("username");在请求中取得username参数的值
if (username != null && username.length()> 0) {
out.println("<h2>Hello, " + username + "!</h2>");//在前段页面打印username值
}
}
}
——————————————参考“霸波儿儿奔“的“Hello2 源码分析”