zoukankan      html  css  js  c++  java
  • Hello2 源码解析

    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 源码分析”
  • 相关阅读:
    读《大道至简》第二章有感
    读大道至简之感
    C#学习笔记二:并行编程基础:在 PLINQ 和 TPL 中的 Lambda 表达式
    C#学习笔记一:委托、匿名函数、Lambda 表达式
    VS2013 最常用 和 不是最常用的快捷键备忘
    EntityFramework初上手
    C#的值类型,引用类型,栈,堆,ref,out
    python批量下载图片
    django部署for新浪SAE
    Linux下安装搜狗拼音输入法
  • 原文地址:https://www.cnblogs.com/LeshengW/p/10602829.html
Copyright © 2011-2022 走看看