JavaWebDay02

1.IDEA会为每一个tomcat部署的项目单独建立一份配置文件

  • 查看控制台的log:Using CATALINA_BASE: "C:\Users\Eric.IntelliJIdea2019.3\system\tomcat_Java9_web_codespace"
    2.工作空间项目 和 tomcat部署的web项目
  • tomcat真正访问的是“tomcat部署的web项目”,"tomcat部署的web项目"对应着"工作空间项目" 的web目录下的所有资源
  • WEB-INF目录下的资源不能被浏览器直接访问。
    3.断点调试:使用"小虫子"启动 dubug 启动

Servlet:

1.概念
2.步骤
3.执行原理
4.生命周期
5.Servlet3.0 注解配置
6.Servlet的体系结构
Servlet -- 接口
|
GenericServlet -- 抽象类
|
HttpServlet -- 抽象类

  • GenericServlet:将Servlet接口中其他的方法做了默认空实现,只将service()方法作为抽象, 将来定义Servlet类时,可以继承GenericServlet,实现service()方法即可
  • HttpServlet:对http协议的一种封装,简化操作, 使用步骤 1、定义类继承HttpServlet,2、复写doGet/doPost方法

HTTP:

概念:Hyper Text Transfer Protocol 超文本传输协议
传输协议:定义了,客户端和服务器端通信时,发送数据的格式
特点:

  • 基于TCP/IP的高级协议

  • 默认端口号:80

  • 基于请求/响应模型的:一次请求对应一次响应

  • 无状态的:每次请求之间相互独立,不能交互数据
    历史版本:

  • 1.0:每一次请求响应都会建立新的连接

  • 1.1:复用连接

请求消息数据格式

请求行
请求方式 请求url 请求协议/版本
GET /login.html HTTP/1.1
请求方式:
HTTP协议有7中请求方式,常用的有2种

GET:

请求参数在请求行中,在url后。
请求的url长度有限制的
不太安全

POST:

请求参数在请求体中
请求的url长度没有限制的
相对安全

Request

1.request对象和response对象的原理

request和response对象是由服务器创建的。我们来使用它们
request对象是来获取请求消息,response对象是来设置响应消息

2. request对象继承体系结构:

ServletRequest -- 接口
| 继承
HttpServletRequest -- 接口

Request的基本请求

路径:http://localhost/xiaojuan/D1?reason=aini

 // 1.获取请求方式: GET
        String method = req.getMethod();
        System.out.println("method:" +method);
        // 2 获取虚拟目录
        String contextPath = req.getContextPath();
        System.out.println("contextPath:" +contextPath);
        // 3.获取servlet路径
        String servletPath = req.getServletPath();
        System.out.println("servletPath:" +servletPath);
        // 4. 获取get方式的请求参数
        String queryString = req.getQueryString();
        System.out.println("queryString:" +queryString);

        // 5. 获取 URI
        String requestURI = req.getRequestURI();
        System.out.println("requestURI:" +requestURI);

        //6.获取URL
        StringBuffer requestURL = req.getRequestURL();
        System.out.println("requestURL:" +requestURL);
        // 7.. 获取协议版本
        String protocol = req.getProtocol();
        System.out.println("protocol:" +protocol);

        // 8..获取客户机iP地址  0:0:0:0:0:0:0:1
        String remoteAddr = req.getRemoteAddr();
        System.out.println("remoteAddr" + remoteAddr);
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。