• Servlet--request


    tomcat:

     Servlet:

    <?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>
            <servlet-name>demo1</servlet-name>
            <servlet-class>servlet.ServletDemo1</servlet-class>
        </servlet>
    
        <servlet-mapping>
            <servlet-name>demo1</servlet-name>
            <url-pattern>/demo1</url-pattern>
        </servlet-mapping>
    
        <!--配置Servlet-->
        <servlet>
            <servlet-name>demo2</servlet-name>
            <servlet-class>servlet.ServletDemo2</servlet-class>
            <!--指定Servlet的创建时机
                1.第一次被访问时,创建
                    *<load-on-startup>的值为负数
                2.在服务器启动时,创建
                  *<load-on-startup>的值为非负数
            -->
    
            <load-on-startup>-5</load-on-startup>
        </servlet>
    
        <servlet-mapping>
            <servlet-name>demo2</servlet-name>
            <url-pattern>/demo2</url-pattern>
        </servlet-mapping>
    </web-app>

     

     

     

     

     

      

    package requset;
    
    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;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: ${PACKAGE_NAME}
     * @ClassName: ${NAME}
     * @Author: 王团结
     * @Description: 演示request对象获取请求行数据
     * @Date: 2019/6/22 0:24
     * @Version: 1.0
     */
    @WebServlet("/requestDemo1")
    public class RequestDemo1 extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
            System.out.println(request.getMethod());
            System.out.println(request.getContextPath());
            System.out.println(request.getServletPath());
            System.out.println(request.getQueryString());
            System.out.println(request.getRequestURI());
            System.out.println(request.getRequestURL());
            System.out.println(request.getProtocol());
            System.out.println(request.getRemoteAddr());
        }
    }
    package requset;
    
    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;
    import java.util.Enumeration;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: ${PACKAGE_NAME}
     * @ClassName: ${NAME}
     * @Author: 王团结
     * @Description: ${description}
     * @Date: 2019/6/22 0:40
     * @Version: 1.0
     */
    @WebServlet("/requestDemo2")
    public class RequestDemo2 extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            //演示获取请求头数据
    
            //1.获取所有请求头名称
            Enumeration<String> headerNames=request.getHeaderNames();
            //2.遍历
            while (headerNames.hasMoreElements()) {
                String name=headerNames.nextElement();
                //根据名称获取请求头的值
                String value=request.getHeader(name);
                System.out.println(name+"--"+value);
            }
        }
    }
    package requset;
    
    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;
    import java.util.Enumeration;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: ${PACKAGE_NAME}
     * @ClassName: ${NAME}
     * @Author: 王团结
     * @Description: ${description}
     * @Date: 2019/6/22 0:40
     * @Version: 1.0
     */
    @WebServlet("/requestDemo3")
    public class RequestDemo3 extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            //演示获取请求头数据
            String referer=request.getHeader("referer");
            System.out.println(referer);
    
    
            //防盗链
            if (referer != null) {
                if(referer.contains("/test")){
                    System.out.println("正常");
                    response.setContentType("text/html;charset=utf-8");
                    response.getWriter().write("欢迎");
    
                }else{
                    System.out.println("盗链");
                }
            }
        }
    }
    package requset;
    
    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;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: ${PACKAGE_NAME}
     * @ClassName: ${NAME}
     * @Author: 王团结
     * @Description: ${description}
     * @Date: 2019/6/22 0:40
     * @Version: 1.0
     */
    @WebServlet("/requestDemo4")
    public class RequestDemo4 extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            //演示获取请求头数据
    
           String agent=request.getHeader("user-agent");
           //判断agent的浏览器版本
            if(agent.contains("Chrome")){
                System.out.println("谷歌");
            }else if(agent.contains("Firofox")){
                System.out.println("火狐");
            }
        }
    }
    package requset;
    
    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.BufferedReader;
    import java.io.IOException;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: ${PACKAGE_NAME}
     * @ClassName: ${NAME}
     * @Author: 王团结
     * @Description: ${description}
     * @Date: 2019/6/22 7:44
     * @Version: 1.0
     */
    @WebServlet("/RequestDemo5")
    public class RequestDemo5 extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            //获取请求消息体--请求参数
    
            //1.获取字符流
            BufferedReader br=request.getReader();
            //2.读取数据
            String line =null;
            while ((line = br.readLine()) != null) {
                System.out.println(line);
            }
    
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
        }
    }
    package requset;
    
    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;
    import java.util.Enumeration;
    import java.util.Map;
    import java.util.Set;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: ${PACKAGE_NAME}
     * @ClassName: ${NAME}
     * @Author: 王团结
     * @Description: ${description}
     * @Date: 2019/6/22 7:44
     * @Version: 1.0
     */
    @WebServlet("/RequestDemo6")
    public class RequestDemo6 extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            //post获取请求参数
    
            //  根据参数名称获取参数值
            String username = request.getParameter("username");
            System.out.println("post:" + username);
    
            //根据参数名称获取参数值的数组
            String[] hobbies = request.getParameterValues("hobby");
            for (String hobby :hobbies) {
                System.out.println(hobby);
            }
    
            //获取所有请求的参数名称
    
            Enumeration<String > perarametNames=request.getParameterNames();
            while (perarametNames.hasMoreElements()) {
    
                String name=perarametNames.nextElement();
                System.out.println(name);
                String value=request.getParameter(name);
                System.out.println(value);
                System.out.println("-----------");
            }
    
            //获取所有参数的集合
            Map<String,String[]> parameterMpa=request.getParameterMap();
            //遍历
            Set<String> keyset=parameterMpa.keySet();
            for(String name:keyset){
                //通过键得值
                String[] values=parameterMpa.get(name);
                for (String value:values) {
                    System.out.println(value);
                }
                System.out.println("-----------------");
            }
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            //get 获取请求参数
    
            /*//  根据参数名称获取参数值
            String username = request.getParameter("username");
            System.out.println("get:" + username);*/
    
            this.doPost(request,response);
        }
    }
    package requset;
    
    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;
    import java.util.Enumeration;
    import java.util.Map;
    import java.util.Set;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: ${PACKAGE_NAME}
     * @ClassName: ${NAME}
     * @Author: 王团结
     * @Description: ${description}
     * @Date: 2019/6/22 7:44
     * @Version: 1.0
     */
    @WebServlet("/RequestDemo7")
    public class RequestDemo7 extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            //1.设置流的编码
    
            request.setCharacterEncoding("utf-8");
            //获取请求参数username
            String username=request.getParameter("username");
            System.out.println(username);
    
    
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            //get 获取请求参数
    
            this.doPost(request,response);
        }
    }
    package requset;
    
    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;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: ${PACKAGE_NAME}
     * @ClassName: ${NAME}
     * @Author: 王团结
     * @Description: ${description}
     * @Date: 2019/6/22 7:44
     * @Version: 1.0
     */
    @WebServlet("/RequestDemo8")
    public class RequestDemo8 extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            System.out.println("demo8");
    
            //存储数据到request
            request.setAttribute("msg","hello");
           request.getRequestDispatcher("/RequestDemo9").forward(request,response);
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            //get 获取请求参数
    
            this.doPost(request,response);
        }
    }
    package requset;
    
    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;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: ${PACKAGE_NAME}
     * @ClassName: ${NAME}
     * @Author: 王团结
     * @Description: ${description}
     * @Date: 2019/6/22 7:44
     * @Version: 1.0
     */
    @WebServlet("/RequestDemo9")
    public class RequestDemo9 extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            System.out.println(request.getAttribute("msg"));
            System.out.println("demo9");
    
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            //get 获取请求参数
    
            this.doPost(request,response);
        }
    }
    package requset;
    
    import javax.servlet.ServletContext;
    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;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: ${PACKAGE_NAME}
     * @ClassName: ${NAME}
     * @Author: 王团结
     * @Description: ${description}
     * @Date: 2019/6/22 7:44
     * @Version: 1.0
     */
    @WebServlet("/RequestDemo10")
    public class RequestDemo10 extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            ServletContext servletContext = request.getServletContext();
            System.out.println(servletContext);
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            //get 获取请求参数
    
            this.doPost(request,response);
        }
    }
    package servlet;
    
    import javax.servlet.GenericServlet;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.annotation.WebServlet;
    import java.io.IOException;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: servlet
     * @ClassName: ServeltDemo3
     * @Author: 王团结
     * @Description:
     * @Date: 2019/6/21 22:08
     * @Version: 1.0
     */
    @WebServlet("/demo3")
    public class ServeltDemo3 extends GenericServlet {
        @Override
        public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
            System.out.println("demo3...");
        }
    }
    package servlet;
    
    import javax.servlet.*;
    import javax.servlet.annotation.WebServlet;
    import java.io.IOException;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: servlet
     * @ClassName: ServlDemo
     * @Author: 王团结
     * @Description: 不用配置的注解
     * @Date: 2019/6/21 21:29
     * @Version: 1.0
     */
    
    @WebServlet(urlPatterns = "/demo2")
    public class ServletDemo implements Servlet {
        @Override
        public void init(ServletConfig servletConfig) throws ServletException {
    
        }
    
        @Override
        public ServletConfig getServletConfig() {
            return null;
        }
    
        @Override
        public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
            System.out.println("hello");
        }
    
        @Override
        public String getServletInfo() {
            return null;
        }
    
        @Override
        public void destroy() {
    
        }
    }
    package servlet;
    
    import javax.servlet.*;
    import javax.servlet.annotation.WebServlet;
    import java.io.IOException;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: cn.king.web.servlet
     * @ClassName: ServletDemo1
     * @Author: ASUS
     * @Description: Servlet快速入门
     * @Date: 2019/6/21 18:21
     * @Version: 1.0
     */
    @WebServlet("/demo1")
    public class ServletDemo1 implements Servlet {
        @Override
        public void init(ServletConfig servletConfig) throws ServletException {
    
        }
    
        @Override
        public ServletConfig getServletConfig() {
            return null;
        }
    
        //提供服务的方法
        @Override
        public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
            System.out.println("hello Servlet");
        }
    
        @Override
        public String getServletInfo() {
            return null;
        }
    
        @Override
        public void destroy() {
    
        }
    }
    package servlet;
    
    import javax.servlet.*;
    import java.io.IOException;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: cn.king.web.servlet
     * @ClassName: ServletDemo2
     * @Author: ASUS
     * @Description: Servlet方法
     * @Date: 2019/6/21 19:28
     * @Version: 1.0
     */
    public class ServletDemo2 implements Servlet {
    
        /**
         *  初始化方法
         *  在Servlet被创建时,执行.只会执行一次
         * @param servletConfig
         * @throws ServletException
         */
        @Override
        public void init(ServletConfig servletConfig) throws ServletException {
            System.out.println("init..........");
        }
    
        /**
         * 获取ServletConfig对象
         * ervletConfig是Servlet的配置对象
         * @return
         */
        @Override
        public ServletConfig getServletConfig() {
            return null;
        }
    
        /**
         * 提供服务方法
         * 每一次Servlet被访问时,执行.执行多次
         * @param servletRequest
         * @param servletResponse
         * @throws ServletException
         * @throws IOException
         */
        @Override
        public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
            System.out.println("service..");
        }
    
        /**
         * 获取Servlet的一些信息,版本,作者信息等等
         * @return
         */
        @Override
        public String getServletInfo() {
            return null;
        }
    
        /**
         * 销毁方法
         * 在服务器正常关闭时,执行.执行一次.
         */
        @Override
        public void destroy() {
            System.out.println("destroy");
        }
    }
    package servlet;
    
    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;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: servlet
     * @ClassName: ServletDemo4
     * @Author: 王团结
     * @Description:
     * @Date: 2019/6/21 22:23
     * @Version: 1.0
     */
    @WebServlet("/demo4")
    public class ServletDemo4 extends HttpServlet {
    
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            System.out.println("doGET");
        }
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            System.out.println("doPOST ");
        }
    }
    package servlet;
    
    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;
    
    /**
     * @ProjectName: TutorDualSelectionSystem
     * @Package: servlet
     * @ClassName: ServletDemo5
     * @Author: 王团结
     * @Description: Serlet路径配置
     * @Date: 2019/6/21 22:39
     * @Version: 1.0
     */
    //@WebServlet({"/d4", "/user/dd4", "/user/ddd4/*"})
        @WebServlet({"/d4", "/user/dd4"})
    public class ServletDemo5 extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            System.out.println("demo5");
        }
    }
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <form action="/test/demo4" method="post">
        <input name="username">
        <input type="submit" value="提交2">
    </form>
    <a href="/test/requestDemo3">demo4</a>
    </body>
    </html>
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>注册页面</title>
    </head>
    <body>
    
        <form action="/test/RequestDemo5" method="post">
            <input type="text" placeholder="请输入用户名" name="usename"><br>
            <input type="text" placeholder="请输入密码" name="password"><br>
            <input type="submit" value="注册">
    
        </form>
    </body>
    </html>
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>注册页面</title>
    </head>
    <body>
    
        <form action="/test/RequestDemo7" method="get">
            <input type="text" placeholder="请输入用户名" name="username"><br>
            <input type="text" placeholder="请输入密码" name="password"><br>
    
            <input type="checkbox" name="hobby" value="game">游戏
            <input type="checkbox" name="hobby" value="study">学习
            <br>
            <input type="submit" value="注册">
    
        </form>
    </body>
    </html>
  • 相关阅读:
    Java(14):面向对象、封装、继承、方法重写、多态、抽象类与接口、内部类
    Java(13):数组、Arrays类、冒泡排序
    Java(12):方法、重载、命令行传参、可变参数、方法调用
    Java(11):switch、dowhile、九九乘法表、打印质数、打印三角形
    Java(10):用户交互Scanner
    Java(9):包
    Java(8):运算符
    Java(7):变量和常量及其规范、作用域
    Mybatis 打印日志
    mysql 更新数据
  • 原文地址:https://www.cnblogs.com/King-boy/p/11066855.html
Copyright © 2020-2023  润新知