浅谈JavaWeb-Servlet

Servlet

Servlet是一种动态开发web的一种技术

1,把实现Servlet接口的java程序叫做Servlet
Servlet是用java语言编写的一个小程序,这个小程序运行在服务器端

2,编写一个Servlet程序,实现Servlet接口,我们直接可以继承HTTPServlet

public class MyServelt extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        PrintWriter writer=resp.getWriter();  //响应流
        writer.println("你好");
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

    }
}

HttpServlet原理

最开始定义了一个

Servlet接口 定义了一个 void service(ServletRequest var1, ServletResponse var2)

GenericServlet实现了Servlet接口,但是并没有具体实现service方法,

​ public abstract void service(ServletRequest var1, ServletResponse var2) throws ServletException, IOException;

HttpServlet 继承了 抽象GenericServlet 类,根据不同Get/Post等选择不同的doGet()方法,或

doPost()方法

protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String method = req.getMethod();
        long lastModified;
        if (method.equals("GET")) {
            lastModified = this.getLastModified(req);
            if (lastModified == -1L) {
                this.doGet(req, resp);
            } else {
            

3,修改web.xml文件

为什么需要映射,我们写的是java程序,要通过浏览器访问,所以浏览器要连接web服务器,我们需要到web服务器中注册我们写的Servlet,并指出浏览器能够访问的路径

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
         xmlns="http://java.sun.com/xml/ns/j2ee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
        http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  <!--注册Servlet-->
  <servlet>
    <servlet-name>MyServlet</servlet-name>
    <servlet-class>com.MyServelt</servlet-class>
  </servlet>
  <!--Servlet请求路径-->
  <servlet-mapping>
    <servlet-name>MyServlet</servlet-name>
    <url-pattern>/huanghongtao</url-pattern>
  </servlet-mapping>
posted @ 2020-11-05 12:17  香蕉木头人520  阅读(127)  评论(0)    收藏  举报