会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 134534个问题

老师,这是我对servlet的一些理解,麻烦您帮我看下理解的对错。

        在这个视频中,idea通过Tomcat下的catalina.sh,创建了该项目的副本Tomcatimage.png

        在副本Tomcat下,有localhost的host配置项。

image.png

        用户通过网址http://localhost/demo

网址申请访问的时候,连接器会将请求发送到副本Tomcat的engine,engine此时通过解析域名,去找localhost的主机host,找到了副本Tomcat下conf里的配置项

        通过配置里的Context信息

image.png

        链接访问到已经编译好的文件夹

image.png

        在该文件夹下,有配置好的web.xml信息,信息指明了servlet类所在的位置已经访问的网址

image.png

        web服务器先拿网址后半部分与这里的url-pattern进行比对,如对上了,顺着对应类的路径servlet-class找到已编译完成的类文件,完成实例化。

JAVA 全系列/第六阶段:JavaWeb开发/Servlet技术详解(旧) 736楼
JAVA 全系列/第六阶段:JavaWeb开发/Servlet技术详解(旧) 745楼
JAVA 全系列/第六阶段:JavaWeb开发/Servlet技术详解(旧) 746楼

老师,405咋搞,代码我也目测没啥问题,嘶~

图片.png

GetRequestDataServlet.java

package com.servlet.demo;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

public class GetRequestDataServlet extends HttpServlet {

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
        String username = req.getParameter("username");
        
        PrintWriter out = resp.getWriter();
        out.println("<!DOCTYPE HTML>");
        out.println("<HTML>");
        out.println("<HEAD><TITLE>TEST-login</TITLE></HEAD>");
        out.println("<BODY>");
        out.println("TEST-login"+"<br/>");
        out.println("UserName:"+username+"<br/>");
        out.println("</BODY>");
        out.println("</HTML>");

        out.flush();
        out.close();
    }
}

addUser.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <form action="getInfo.do" method="post">
        用户名:<input type="text" name="username"><br>
        <input type="submit" value="ok">
    </form>
</body>
</html>

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <servlet>
        <servlet-name>demoServlet</servlet-name>
        <servlet-class>com.servlet.demo.HelloServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>demoServlet</servlet-name>
        <url-pattern>/demo.do</url-pattern>
    </servlet-mapping>
    
    <servlet>
        <servlet-name>getRequestDataServlet</servlet-name>
        <servlet-class>com.servlet.demo.GetRequestDataServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>getRequestDataServlet</servlet-name>
        <url-pattern>/getInfo.do</url-pattern>
    </servlet-mapping>
</web-app>


JAVA 全系列/第六阶段:JavaWeb开发/Servlet技术详解(旧) 747楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2026百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637