A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© hy03030816 初级黑马   /  2019-9-6 16:06  /  1123 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1. Servlet:
                本质是一个接口
        A)继承体系
                (1)Servlet
                        (2)GenericServlet
                                (3)HttpServlet
        B)配置方式
                (1)xml配置
                (2)注解配置
        C)生命周期
                (1)先执行init()                        -创建后执行,只执行一次
                (2)再执行service()                -每次访问url时执行,可以执行多次
                (3)最后执行destory()        -销毁前执行,只执行一次
        D)线程安全问题的解决方案
                不使用成员变量
        E)servlet创建时间
                (1)默认为第一次访问时创建
                (2)配置servlet开启时服务器自动创建
                        在xml中配置,第一次访问时创建<load-on-startup>的值为负数
                        服务器启动时创建<load-on-startup>的值为0或正整数
        F)Servlet执行流程
                (1)通过浏览器地址栏获取ServletDemo(访问路径)
                (2)通过ServletDemo去xml配置中找到<url-pattern>/ServletDemo
                (3)通过<url-pattern>/ServletDemo找到<servlet-name>test1
                (4)通过<servlet-name>test1找到servlet的名称test1
                (5)通过servlet的名称找到Servlet的全路径
                (6)通过全路径访问Servlet的实现类
        G)Servlet的访问路径的配置
                /info
                /user/*
                *.do
                /hehe.do
2. request
        A)原理
        B)作用
                (1)获取请求参数
                        请求行:
                                getMethod()
                                getContextPath()
                                getRequestUri()
                                getRequestUrl()
                        请求头:
                                getHeader()
                        请求参数:
                                getParameter()
                                getParameterValues()
                                getParameterMap()
                        设置编码:
                                setCharacterEncoding()
                (2)请求转发
                        request.getRequestDispatcher("路径").forward(request,response)
                        特点:
                                1.地址栏不发生改变
                                2.只能访问服务器内部资源(包括WEB-INF)
                                3.只有一次请求
                                4.在request域中数据共享
                                注意: WEB-INF只能通过请求转发访问
                (3)域对象进行共享数据
                        request.getAttribute();
                        request.setAttribute();
                        request.removeAttribute();
                (4)获取ServletContext
                        request.getServletContext();
        C)请求的协议格式
        D)请求头
                content-type     提交数据的格式
                user-agent                 判断浏览器版本
                referer                         防盗链
        E)解决中文乱码问题
                (1)tomcat8之后get请求不需要设置
                  post请求设置request.setCharacterEncoding("utf-8");
3.response
                访问服务器时创建,响应后销毁
        A)原理
        B)作用
                (1)回写数据
                (2)重定向跳转页面
                        response.sendRedirect()
                        1.两次请求
                        2.地址栏改变
                        3.访问外部和服务器内部资源(不能访问/WEB-INF下的资源)
                        4.不能在request域中数据共享
                (3)响应的协议格式
                (4)响应头
                        Content-Type  -设置编码集
                        Content-Disposition  -下载方式
        C)乱码问题
                response.setContentType("text/html;charset=utf-8")




0 个回复

您需要登录后才可以回帖 登录 | 加入黑马