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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

Day13 Servlet和TomCat的概述和使用


Day_13   Servlet 和Tomcat 的概述和使用C/S架构的软件:  客户端和服务器之间的数据的交换B/S架构的软件:  
  网页,浏览器和服务器之间的数据的交换[WEB的资源]
​                静态资源
  • HTML,CSS,JS ,图片...
    动态资源:
  • PHP
  • ASP
  • Servlet/JSP

[常见WEB服务器]
  • Apache   :发布PHP
  • IIS  :发布ASP的
  • WebSphere    ::IBM公司研发,收费的大型服务器软件,支持EE的所有的开发规范
  • WebLogic  :BEA公司研发,收费的大型服务器软件,支持EE的所有的开发规范
  • Tomcat        :Apache组织研发,免费的小型的服务器软件,支持Servlet./JSP的开发规范

[WEB动态资源目录结构]重点_什么是动态页面:
  • 动态页面的意思是,动态的从数据库中读取数据

[Website]文件目录
  • 静态资源文件夹
  • WEB-INF(动态文件夹,纯静态的可以没有这个文件夹)

    • web.xml:  不可选的
    • classes : 可选的
    • lib         :可选的


TomCat服务器的安装  
  backup  :备份
  bin     :执行文件
  ***conf : tomcat的配置文件
  lib     :运行所需的jar包
  logs    :日志
  temp    :缓存
  ***webapps  :tomcat发布的web项目的路径
  work     :运行JSP的时候,JSP翻译成Servlet的代码存放路径部署WEB项目的两种方法
  • 第一种

    • 直接粘贴复制项目

  • 第二种,配置tomcat的虚拟路径

    • docBase : 项目的绝对路径   项目目录,
    • path   ; 虚拟路径

  • 第三种:

    • 在conf----Catalina----locallhost下自定义建一个.xml的文件,在 .xml文件中配置docBase属性,  xml文件的名字就是项目的虚拟访问地址

  • 第四种:

    • 将项目导出成war包,直接扔到webapps下


TomCat常见问题
  • 在没有配置JAVA_HOME的情况下

    • TomCat启动一闪而过  

  • 端口号冲突的情况下

    • TomCat也无法启动

  • 解决方法:  我们可以先看环境变量, 在环境变量没有问题的情况下,

    • 打开tomCat的bin目录下的startup进行编辑,在代码末尾加入 pause(暂停),查看错误是在哪里


拓展: netstat -ano   找到占用的你的端口号的id,去任务管理器结束
Http和Https协议重点
  • https协议是基于请求响应模型的

http协议详解
  • 请求行

    • 提交方式:

      • 多种提交方式,常用分GET和POST:  只有from表单时POST提交方式,    其他的都是GET提交方式
      • GET和POST的区别;

        • GET的提交的参数会显示到地址栏上,而POST不显示
        • GET往往是有大小限制的,而POST没有大小限制
        • GET没有请求体,而POST有请求体


    • 提交路径
    • 协议版本


  • 请求头

    • 都是键值对的形式显示的,一般一个key对应一个value

      • User-Agent                         :浏览器的类型
      • Referer                                  :防盗链,防止盗取连接
      • If-Modified-Since                  :


  • 请求体

    • GET没有请求体,而POST有请求体


响应
重点:状态码
三部分:  行    头    体
  
  *200    :成功
  *302    :重定向      先向服务器发起请求,服务器响应反回一个能够访问的地址         location
  *304    :查找本地缓存
  *404    :资源不存在或路径错误
  *500    :代码写错了
  状态码描述
  • 响应头:键值对,一般一个key对应一个value,也有

    • Location :结合302做重定向
    • Content-Disposition: 文件下载的时候用
    • Refresh :    定时刷新


Servlet的概述
Servlet就是一个运行在WEB服务器上的小的Java程序,用来接收和响应从客户端发送过来的请求,通常使用HTTP协议
协议规则  http://ip:port/projectName/地址串
  ​
  如果要访问一个servlet,这个地址串跟web.xml中配置的url-pattern有关系Servlet作用:
  • 存在于服务器上,它是运行在服务器上的一段程序,处理接收到的数据,然后将处理以后的数据响应

ServletRequest的方法
  • String getParameter(String name);    用于接收一个名称对应一个值的数据   例如: 单选按钮,下拉列表,性别选择 ,文本框等
  • String[]  getParameterValues(String name);   返回一个字符串形式的值,  用于接收多个值得情况, 例如 复选框等
  • Map<String,String[]>  request.getParameterMap(); 用于接收表单中得所有的数据(不论是单个值还是多个值),Map得key是表单提交的参数名称,Map得value是提交参数得值,

如何读取用户提交的中文数字,正确的在控制台上进行展示
  • req..setCharacterEncoding("UTF-8");     用于解析文字,以UTF-8的格式展现,要求写在继承Servlet的类中.

​           
​        

0 个回复

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