`
ipjmc
  • 浏览: 702898 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

WebAppContext(嵌入Jetty学习三)

阅读更多

    先来看一下在Jetty里,什么是Context。在Jetty里Context是包含了在某一特定URL或Virtual Host下的一组Handler的Handler。可以这样理解,Context本身也是一种Handler,它里面包含了许多的Handler,这些Handler都只能处理某个特定URL下的请求。Jetty里的Context有ContextHandler,ServletContext和WebAppContext。这里主要学习一下WebAppContext。

 

    先回忆一下war里面web.xml里面可能有什么东西,有Security,Session,Servlet等。如果要通过Jetty部署war包的话,Jetty也必须能够处理这些东西才行。通过上一节我们知道,Jetty里都有相应的Handler与之对应,而WebAppContext就是用来组织这些Handler的。Jetty就是通过WebAppContext来部署war包的。

 

    WebAppContext的属性如下:

_defaultsDescriptor 一般是$(jetty.home)/etc/webdefault.xml文件
_descriptor web.xml配置文件路径,默认是$(baseResource)/WEB-INF/web.xml
_overrideDescriptors 是一个配置文件数组,会覆盖web.xml中的配置信息
_extractWAR 如果为true,则说明本应用是从war中解包后创建的
_copyDir 如果为true,则在解包时把WEB-INF目录拷贝出来
_parentLoaderPriority 如果为true,则加载类时优先使用父加载器
_tmpDir war包解压后的目录
_war 原始war包路径或原始文件夹路径
_extraClasspath 扩展类库列表

 

    下面以一段代码来说明如何通过Jetty部署war包

WebAppContext webapp = new WebAppContext();
webapp.setContextPath("/qman");
 
// Additional web application descriptor containing test components.
webapp.setDefaultsDescriptor("lib/web.xml");
 
//设置原始War的位置
webapp.setWar("qman.war");

//将war解压的目录
webapp.setTempDirecotry("wabapps/");
server.setHandler(webapp);
server.start();
server.join();

 

 

分享到:
评论

相关推荐

    jetty嵌入式web容器jar包

    jetty嵌入式web容器jar包 示例: public static void main(String[] args) { // 服务器的监听端口 Server server = new Server(6666); // 关联一个已经存在的上下文 WebAppContext context = new WebAppContext...

    gitblit(1.8.0).zip

    gitblit-1.8.0.zip

    (更新至2022年)全国按年龄、性别分的就业人员就业身份构成.xls

    数据来源:中国人口与就业统计NJ-2023版

    node-v9.0.0-sunos-x64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    基于SSH的网上书店管理系统设计与实现毕业设计(29页).docx

    基于SSH的网上书店管理系统设计与实现毕业设计(29页).docx

    node-v10.15.0-linux-arm64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    基于matlab实现LMS与RLS算法的自适应均衡程序,包括加性高斯信道、瑞利平坦信道、频率选择性衰落信道 .rar

    基于matlab实现LMS与RLS算法的自适应均衡程序,包括加性高斯信道、瑞利平坦信道、频率选择性衰落信道。.rar

    node-v10.24.0-linux-armv6l.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    (更新至2022年)分登记注册类型城镇非私营单位就业人员平均工资.xls

    数据来源:中国人口与就业统计NJ-2023版

    node-v10.18.0-linux-armv7l.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    特选社会公共体育馆管理系统设计与实现.doc

    特选社会公共体育馆管理系统设计与实现.doc

    (更新至2022年)失业人数.xls

    数据来源:中国人口与就业统计NJ-2023版

    数据更新至2020年分地区35千伏及以上 电厂升压站变压器情况.xls

    数据来源:中国电力统计NJ-2021版

    各地区民办职业培训机构综合情况(2022年).xls

    数据来源:中国劳动统计NJ-2023版

    Vue开发基于 vue 和 vue-cli 搭建的整套开发底层,敏捷开发

    【Vue开发】基于 vue 和 vue-cli 搭建的整套开发底层,敏捷开发 (A complete set of development bottom layer based on vue and vue cli, agile development) 文件列表: .babelrc (337, 2018-01-18) .editorconfig (147, 2018-01-18) .postcssrc.js (197, 2018-01-18) CHANGELOG.md (436, 2018-01-18) build (0, 2018-01-18) build\build.js (953, 2018-01-18) build\check-versions.js (1257, 2018-01-18) build\dev-client.js (245, 2018-01-18) build\dev-server.js (2504, 2018-01-18) build\utils.js (1949, 2018-01-18) build\vue-loader.conf.js (413, 2018

    基于VB实现的商场管理系统设计(源代码+系统).zip

    【作品名称】:基于VB实现的商场管理系统设计(源代码+系统) 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。

    【MySQL】SQL优化(九).pdf

    MySQL资源包内容推荐 内容概要: 本资源包包含了一系列关于MySQL的详细资料和教程,旨在帮助用户全面了解和掌握MySQL数据库的使用和管理。内容涵盖了MySQL的安装与配置、SQL语言基础、数据库设计、性能优化、安全配置、备份与恢复等多个方面。此外,还包含了一些高级话题,如分区表、复制与集群、存储引擎选择等。资源包形式多样,包括文字教程、案例分析、视频教程、实践练习等,以满足不同用户的学习需求。 适用人群: 初学者:对于刚开始接触MySQL的用户,本资源包提供了从入门到进阶的详细教程,帮助用户快速掌握MySQL的基本操作。 数据库管理员(DBA):对于需要管理多个MySQL数据库的管理员,本资源包提供了丰富的管理和维护技巧,帮助管理员提高工作效率。 开发者:对于使用MySQL进行应用开发的开发者,本资源包提供了深入的技术解析和最佳实践,帮助开发者优化数据库性能,提升应用质量。 技术爱好者:对于对MySQL技术感兴趣的技术爱好者,本资源包提供了丰富的技术资料和案例分析,帮助爱好者深入了解MySQL的核心技术。 使用场景及目标: 学习MySQL基础:用户可以通过本资源包学习MySQL的基础知识,包括SQL语言、数据库设计等。 性能优化:对于已经在使用MySQL的用户,本资源包提供了性能优化的方法和技巧,帮助用户提高数据库的运行效率。 数据库管理:数据库管理员可以利用本资源包中的技巧和建议,提高数据库管理的效率和质量。 解决实际问题:对于在使用MySQL过程中遇到的问题,用户可以在本资源包中找到相应的解决方案。 通过学习和使用本资源包,用户可以达到以下目标: 熟练掌握MySQL的基本操作和管理技能。 能够根据业务需求设计和优化数据库结构。 深入理解MySQL的核心技术和原理。 解决在使用MySQL过程中遇到的各种问题。 其他说明: 本资源包将持续更新,以反映MySQL技术的最新发展和变化。 用户可以在资源包的评论区或相关社区中交流学习心得和经验,共同解决问题和分享资源。 如有任何疑问或建议,欢迎联系我们,我们将尽快回复并提供帮助。

    数据更新至2020年世界主要国家和地区发电量.xls

    数据来源:中国电力统计NJ-2021版

    node-v11.13.0-darwin-x64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    基于matlab实现烟花算法,群智能算法的一种,起源于2005年,是一种优秀的群算法,可以某称程度代替遗传和粒子群.rar

    基于matlab实现烟花算法,群智能算法的一种,起源于2005年,是一种优秀的群算法,可以某称程度代替遗传和粒子群.rar

Global site tag (gtag.js) - Google Analytics