• hello2 source anaylis


    首先,我们先来看一看这一段的整体代码,

    代码如下:

    @WebServlet("/greeting")
    public class GreetingServlet extends HttpServlet {
    
        @Override
        public void doGet(HttpServletRequest request,
                HttpServletResponse response)
                throws ServletException, IOException {
    
            response.setContentType("text/html");
            response.setBufferSize(8192);
            try (PrintWriter out = response.getWriter()) {
                out.println("<html lang="en">"
                        + "<head><title>Servlet Hello</title></head>");
    
                // then write the data of the response
                out.println("<body  bgcolor="#ffffff">"
                    + "<img src="duke.waving.gif" "
                    + "alt="Duke waving his hand">"
                    + "<form method="get">"
                    + "<h2>Hello, my name is Duke. What's yours?</h2>"
                    + "<input title="My name is: "type="text" "
                    + "name="username" size="25">"
                    + "<p></p>"
                    + "<input type="submit" value="Submit">"
                    + "<input type="reset" value="Reset">"
                    + "</form>");
    
                String username = request.getParameter("username");
                if (username != null && username.length()> 0) {
                    RequestDispatcher dispatcher =
                        getServletContext().getRequestDispatcher("/response");
    
                    if (dispatcher != null) {
                        dispatcher.include(request, response);
                    }
                }
                out.println("</body></html>");
            }
        }

    对里面的部分代码分析:

    String username = request.getParameter("username");  //获取通过URL或者form传递过来的数据并赋值给username
    if (username != null && username.length() > 0) {    //对数据进行验证,满足不为空和长度大于0的条件
    RequestDispatcher dispatcher =
    getServletContext().getRequestDispatcher("/response");    
     //获取jsp上下文里边存储了各变量的信息(值),把一个命令发送到浏览器,让浏览器对指定的URL提出请求(此处的URL只能使用绝对路径)
    if (dispatcher != null) {
    dispatcher.include(request, response);    //如果接收到的客户端的请求不为空时,记录保留request和response,以后不能再修改response里表示状态的信息。 
    }
    }

  • 相关阅读:
    080626 雨(近期目标)
    6月25日 多云
    火一样的冷
    sgu107. 987654321 problem 简单打表 难度:0
    快速切题 sgu 111.Very simple problem 大数 开平方 难度:0 非java:1
    sgu114. Telecasting station 难度:1
    109. Magic of David Copperfield II 构造 难度:2
    sgu108. Selfnumbers 2 滚动数组 打表 难度:1
    快速切题 sgu115. Calendar 模拟 难度:0
    快速切题 sgu117. Counting 分解质因数
  • 原文地址:https://www.cnblogs.com/xasdh/p/10588264.html
Copyright © 2020-2023  润新知