2024/11/11日 日志 关于Servlet ----HttpServlet(下)

使用方法,原理以及配置

点击查看代码
-- 1.HttpServlet 使用步骤
-- 继承HttpServlet
-- 重写doGet和doPost方法
-- 2.HttpServlet原理
-- 获取请求方式,并根据不同的请求方式,调用不同的doXxx方法
-- 
-- Servlet urlPattern配置
-- Servlet 要想被访问,必须配置其访问路径:(urlPattern)
-- 1.一个Servlet,可以配置多个 urlPatternR
-- @WebServlet(urlPatterns ={"/demo1","/demo2"})
-- 2.urlPattern 配置规则
--  ·1精确匹配
--  ·2目录匹配
--  ·3扩展名匹配
--  ·4任意匹配
-- 
-- 优先级:
-- 精确路径 >目录路径>扩展名路径>/*
-- 2.urlPattern配置规则:
-- ① 精确匹配:
-- 配置路径:@Webservlet("/user/select")
-- 访问路径:localhost:8080/web-demo/user/select
-- 
-- ②目录匹配
-- 配置路径:@WebServlet("/user/*")
-- 访问路径:
-- localhost:8080/web-demd/user/aaa
-- localhost:8080/web-demo/user/bbb
-- 
-- ③ 扩展名匹配:
-- 配置路径:@Webservlet("*.do")
-- 访问路径:
-- localhost:8080/web-demc/aaa.do
-- localhost:8080/web-demo/bbb.do
-- ④ 任意匹配:
-- 配置路径:
-- @WebServlet("/*")
-- aWebServlet("/")
-- 访问路径:
-- localhost:8080/web-demc/hehe
-- localhost:8080/web-demo/haha
--
-- /和/* 区别:
-- 当我们的项目冲的Servlet配置了“/”,会覆盖掉tomcat中的DefaultServlet,
-- 当其他的 url-pattern都匹配不上时都会走这个Servlet
-- 当我们的项目中配置了“/*”,意味着匹配任意访问路径
--
-- package com.itheima.web;
-- 
-- import javax.servlet.ServletException;
-- import javax.servlet.annotation.WebServlet;
-- import javax.servlet.http.HttpServlet;
-- import javax.servlet.http.HttpServletRequest;
-- import javax.servlet.http.HttpServletResponse;
-- import java.io.IOException;
-- 
-- /**
--  * urlPattern:
--  *  * 精确匹配
--  */
-- 
-- @WebServlet(urlPatterns = "/user/select")
-- public class ServletDemo8 extends HttpServlet {
-- 
--     @Override
--     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
-- 
--         System.out.println("demo8 get...");
--     }
-- 
--     @Override
--     protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
-- 
-- 
--     }
-- }
-- 
--
-- package com.itheima.web;
-- 
-- import javax.servlet.ServletException;
-- import javax.servlet.annotation.WebServlet;
-- import javax.servlet.http.HttpServlet;
-- import javax.servlet.http.HttpServletRequest;
-- import javax.servlet.http.HttpServletResponse;
-- import java.io.IOException;
-- 
-- /**
--  * urlPattern:
--  *  * 目录匹配:/user/*
--  */
-- 
-- @WebServlet(urlPatterns = "/user/*")
-- public class ServletDemo9 extends HttpServlet {
-- 
--     @Override
--     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
-- 
--         System.out.println("demo9 get...");
--     }
-- 
--     @Override
--     protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
-- 
-- 
--     }
-- }
--
--
-- package com.itheima.web;

-- import javax.servlet.ServletException;
-- import javax.servlet.annotation.WebServlet;
-- import javax.servlet.http.HttpServlet;
-- import javax.servlet.http.HttpServletRequest;
-- import javax.servlet.http.HttpServletResponse;
-- import java.io.IOException;
-- 
-- /**
--  * urlPattern:
--  *  * 扩展名匹配: *.do
--  */
-- 
-- @WebServlet(urlPatterns = "*.do")
-- public class ServletDemo10 extends HttpServlet {
-- 
--     @Override
--     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
-- 
--         System.out.println("demo10 get...");
--     }
-- 
--     @Override
--     protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
-- 
-- 
--     }
-- }
--
-- package com.itheima.web;

-- import javax.servlet.ServletException;
-- import javax.servlet.annotation.WebServlet;
-- import javax.servlet.http.HttpServlet;
-- import javax.servlet.http.HttpServletRequest;
-- import javax.servlet.http.HttpServletResponse;
-- import java.io.IOException;
-- 
-- /**
--  * urlPattern:
--  *  * 任意匹配:/
--  */
-- 
-- //@WebServlet(urlPatterns = "/")
-- public class ServletDemo11 extends HttpServlet {
-- 
--     @Override
--     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
-- 
--         System.out.println("demo11 get...");
--     }
-- 
--     @Override
--     protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
-- 
-- 
--     }
-- }
--
-- XML 配置方式编写 Servlet
-- 
-- · Servlet 从3.0版本后开始支持使用注解配置,3.0版本前只支持 XML 配置文件的配置方式
-- · 步骤:
-- 1.编写 Servlet类
-- 2.在 web.xml中配置该Servlet
-- <servlet>
-- <servlet-name>demo5</servlet-name>
-- <servlet-class>com.itheima.web.servlet.ServletDemo5</servlet-class>
-- </servlet>
-- <servlet-mapping>
-- <servlet-name>demo5</servlet-name><url-pattern>/demo5k/url-pattern>
-- </servlet-mapping>
-- 
--    <!--
--         Servlet 全类名
--     -->
--     
--     <servlet>
--         <servlet-name>demo13</servlet-name>
--         <servlet-class>com.itheima.web.ServletDemo13</servlet-class>
--     </servlet>
--     
--     
--     <!--
--         Servlet 访问路径
--     -->
--     
--     <servlet-mapping>
--         <servlet-name>demo13</servlet-name>
--         <url-pattern>/demo13</url-pattern>
--     </servlet-mapping>
-- </web-app>
-- 
posted @ 2024-11-11 20:29  Moonbeamsc  阅读(2)  评论(0编辑  收藏  举报
返回顶端