• JavaEE学习记录


    TCP/IP四层模型

    1. 应用层(SMTP、FTP、DNS、SNMP、NFS、HTTP、TELNET)
    2. 传输层(TCP、UDP)
    3. 网际层
    4. 网络接口层

    HTTP协议

    超文本传输协议(文本、音频、视频),是一种分布式、合作式,多媒体信息系统服务,面向应用层的协议。
    
    1. 遵循请求/响应模型(三次握手)
    2. 无连接(每次只处理一个请求,结束断掉链接)
    3. 无状态(对事务没有记忆能力,处理前面处理过的,需要重传)

    HTTP协议请求

    请求行、消息报头(消息行)、请求正文
    常用方法:GET、POST
    

    HTTP响应

    状态行、消息报头、响应正文
    

    静态Web与动态Web区别

    静态Web是无法继续进行数据库操作
    动态Web是可以进行数据库操作。动态Web最大的特点是具有交互性(服务器会自动根据用户请求
    响应不同的结果)。
    

    Web容器

    Web容器负责管理和运行Servlet
    

    CGI缺陷:每次请求都会打开一个进程。严重消耗了系统资源,不支持高并发。

    动态网页技术

    1. GUI(COmmon Gateway interface:公共网关接口)技术:最早的动态网页技术。跨平台。
    2. PHP(Hpertext Preprocessor:超文本预处理):跨平台的服务器端的嵌入式脚本语言。大量借用C、Java、Perl语言。优点:能快速的写出网页。缺点:只能在Apache平台上,使用MySql数据库技术。只适合个人或小型项目。
    3. ASP(Active Server Pages:动态服务页):ASP是一个动态Web服务器的开发环境。ASP采用的脚本语言VBscript作为开发语言。出现较早。ASP只能运行在IIS服务器上,且只能在SQLServler数据库上发挥最大性能。
    4. ASP.NET:ASP后续推出的。基于.NET架构平台。
    5. JSP/Servelt(Java Server Page:Java服务页):在HTML代码中嵌入Java代码。JSP不受平台限制,可支持多重服务器。如:Tomcat、WebLogic、JBoss、WebSphere等。适合中大型项目开发。

    Servlet

    1. 运行在Web服务器或应用服务器上的Java程序
    2. 在Web上创建动态内容的(有效而强大的)解决方案
    3. 由容器来管理生命周期【加载(创建)程序、初始化、服务、终止(销毁)、卸载】与服务器交互
    4. 由Sun规范功能

    Servlet生命周期

    1. 加载:通过web.xml配置指定Servlet的位置(包和类名),成功后web容器通过反射Servlet实例化。
    2. 初始化:调用init()方法初始化这个实例化的对象。在处理请求前完成一些初始化工作(建立数据库链接,读取源文件信息等)。初始失败,直接卸载Servlet。
    3. 服务:调用service()方法,处理请求。ServletRequest处理请求,ServletResponse设置响应信息。
    4. 销毁:Servlet从容器中被删除时,web容器自动调用destroy()方法。
    5. 卸载:Servlet调用完destroy()方法后,此实例被垃圾回收器回收,需再次使用此实例,会重新调用init()初始化。

    正常情况下只会初始化、销毁一次;特殊情况(如:Servlet长时间不使用)下才会多次调用。

    Servlet基本配置

    1. 完全匹配:
      <url-pattern>/servlet/MyServlet.do</url-pattern>`
    2. 目录匹配:
      <url-pattern>/servlet/*</url-pattern>
    3. 扩展名匹配:
      <url-pattern>*.do</url-pattern>

    容器查找:完全匹配 > 目录匹配(从最长目录匹配开始) > 扩展名匹配

  • 相关阅读:
    启动和停止jar包shell脚本
    spring boot启动读取外部配置文件
    springboot配置双数据源
    java IO写文件至至txt丢失数据
    Couchbase中集群,节点,bucket,vbucket之间关系
    tzoj1510 Common Subsequence(最长公共子序列LCS模板)
    洛谷P3372 【模板】线段树 1(线段树+区间加+区间求和)
    洛谷P3368 【模板】树状数组2(树状数组+区间更新+单点查询)
    洛谷p3374 【模板】树状数组1(树状数组+单点更新+区间求和)
    freopen暴力输出数据至记事本
  • 原文地址:https://www.cnblogs.com/White-destiny/p/5318387.html
Copyright © 2020-2023  润新知