Jetty设计的很简洁易懂:
Jetty的核心组件及作用如下:
HttpListener:监听客户端请求,有请求,则构建HttpConnection对象,就像建立了一个连接
HttpConnection:HttpConection会构建HttpRequest和HttpResponse对象,完成用户数据的封装,然后调用HttpServer.service(HttpRequest req,HttpResponse res)方法.这个过程非常形象,一次请求的连接建立好之后就触发HttpServer的service方法处理本次请求。
HttpServer:HttpServer可以有多个HttpContext,每个HttpContext代表一个web application,这个也很好理解:一台服务器可以部署多个web application,每个web application可以指定一个端口监听请求,因此HttpServer也就可以对应多个HttpListener。HttpServer.service方法会调用HttpContext.handle方法,也很好理解:HttpServer分析出当前请求属于哪个具体的HttpContext,然后就把请求交给目标HttpContext来处理。
HttpContext:代表一个web application,其核心方法是handler
HttpRequest
HttpResponse
HttpHandler:每个HttpContext(一个web application)可以有多个HttpHandler,比如Jetty默认的HttpHandler实现包括
1)ReourceHandler:用于处理静态内容,如以扩展名为.html的文件
2)SecurityHandler:提供基本的安全验证
3)ForwardHandler:转发一个request到另一个url
4)ServletHandler:用于将request交由具体的Servlet类进行处理
标准web应用的配置信息在WEB-INF/web.xml中,对于Jetty服务器来说,容器启动装载web应用时,web.xml中配置由XmlConfiguration对象代表,Jetty使用java反射技术从XmlConfiguration中构建当前web应用的HttpHandler对象。
分享到:
相关推荐
jetty 源码 zip github 最近真坑 下载好慢 留点资源 给需要的人 一块学习吧
Android 安卓开发应用源码 参考学习使用
Android i-jetty开源项目.zip项目安卓应用源码下载Android i-jetty开源项目.zip项目安卓应用源码下载 1.适合学生毕业设计研究参考 2.适合个人学习研究参考 3.适合公司开发项目技术参考
【资源说明】 1、该资源包括项目的全部源码,下载可以直接使用! 2、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末...基于服务端Servlet+Jetty,客户端SpringBoot的AES和RSA加密的文件上传系统源码.zip
免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,...
Android 应用项目开发源码 参考和学习使用
前几年的Android应用源码Demo,主要面向的是学生毕业设计学习。
基于springboot开发的完整项目算法源码,可用于毕业设计、课程设计、练手学习等
大家都知道SpringMVC是一个MVC框架,但它还是脱离不了Tomcat,Undertow,Jetty这样的Servlet容器, 因为SpringMVC的核心还是是Servlet。 在初学SpringMVC的时候,各位同学可能都在web.xml里配置过DispatcherServlet,可能...
毕业设计_网上商城 项目启动步骤 使用 shopping.sql 中的 sql 语句创建数据库与数据库表 将项目导入 eclipse。...做毕业设计、课程设计或者想研究下技术的可以下载学习。需要更多资源的可以关注我。
2、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习借鉴。 3、本资源作为“参考资料”如果需要实现其他功能,需要能看懂代码,并且热爱钻研,自行调试。 基于SSM+...
2、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习借鉴。 3、本资源作为“参考资料”如果需要实现其他功能,需要能看懂代码,并且热爱钻研,自行调试。 基于...
2、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习借鉴。 3、本资源作为“参考资料”如果需要实现其他功能,需要能看懂代码,并且热爱钻研,自行调试。 基于Java ...
社团管理系统是一个基于Java语言开发的项目,使用了Spring Boot和MySQL作为主要技术栈。该系统旨在帮助社团组织更有效地管理成员、活动和资源等...如果您对该项目感兴趣,可以下载源码进行学习和研究。祝您学习愉快!
java系统源码 基于Java的技术栈学习 ##考察点 Spring + Hibernate的配置和环境搭建 Spring REST API的编写 Ajax应用,angular框架,Bootstrap使用 数据库迁移的概念 gradle git ... 需求 实现用户管理系统,全程用...
这是一个基于SSM(Spring+Spring MVC+MyBatis)技术的古诗词数字化平台的毕业设计项目。本项目旨在通过将古诗词资源...* 在Tomcat或Jetty等服务器上部署项目,配置相关参数(如端口号、数据库连接信息等)。 5. 演示视频:
源码地址:我的GitHub地址 作者: 李强强 也叫 泥瓦匠 快速入门 1. 必备环境 Git 环境搭建 Maven 环境搭建 2. 下载 fast-framework 项目及 sample 案例 git clone...
这是一个基于Spring Boot的校园周边美食探索及分享平台的设计与实现的完整源码。该平台旨在帮助学生和教职工更轻松地发现和分享校园周边的美食信息,提高用餐体验。主要功能如下:用户注册与登录:用户可以注册并...