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

Jetty

 
阅读更多

今天偶然碰到这个web容器,在次记录一下

在eclipse中使用jetty

一直以来使用jetty作为我的web开发配置服务器,开始的时候和所有的初学者一样使用tomcat作为开发服务器,可用着用着,感觉tomcat越来越繁琐以及庞大。后来,用了jboss,知道jboss使用jetty作为其web应用服务器,所以就开始试着使用jetty。从那开始后,jetty就成为我的开发配置服务器了,从最初的4.0,到现在的6.0一直在使用着。

喜欢jetty的原因,在于其的方便,简单的配置文件,简单的启动脚本,而且在elipse或者其他ide中,进行调试,运行都很方便。

不想多说什么,让事实来说话吧。在开始之前,先下载jetty。目前最新的版本为6.1:
http://docs.codehaus.org/display/JETTY/Downloading+and+Installing#download

以前的版本文件是比较小的,现在的版本增加了很多东东,主要是很多例子应用,以及源码,经过删减只有,整个应用还是比较小的,大概也就10m多了。如果只是需要运行web应用,并且只是需要jsp 2.1规范的话,只有7m多了。以前4.0的时候只有2m多,现在也已经增加了那么多了,时代在进步,没有办法。

jetty主要的jar为jetty-6.1.1.jar,servlet-api-2.5-6.1.1.jar,jetty-util-6.1.1.jar。启动的jar 为start.jar。还有jsp规范的jar。jsp2.1,好像已经减了不少的jar了,只有4个文件core-3.1.1.jar,ant-1.6.5.jar,jsp-2.1.jar,jsp-api-2.1.jar。core是使用eclipse的jdt,进行jsp编译。

jetty的主要配置文件为etc/jetty.xml,当然你可以自己指定别的文件。在start.jar中有个start.config文件是默认的环境配置,以及指定默认的配置文件。可以手工替换。

启动jetty很简单,在命令行下面java -jar start.jar
如果需要指定start.config,使用java -DSTART=start.config -jar start.jart
配置web 应用也非常的简单:
更改jetty.xml就行了,增加web应用的方式包括,直接放置应用在webapps下面,或者配置以下的context

<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><Newid="Mywork"class="org.mortbay.jetty.webapp.WebAppContext">
<Arg><Refid="contexts"/></Arg>
<!--绝对路径,可以指定相对路径,增加<SystemPropertyname="jetty.home"default="."/>就行-->
<Arg>D://project//work//m2project//esoft//esoft-mywork-jsf//src//main//webapp</Arg>
<Arg>/mywork</Arg>
<Setname="defaultsDescriptor"><SystemPropertyname="jetty.home"default="."/>
/etc/webdefault.xml</Set>
<Setname="virtualHosts">
<Arraytype="java.lang.String">
<Item>localhost</Item>
</Array>
</Set>

</New>



要想改变原先的webapps主应用,改变下面的配置

<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><Callclass="org.mortbay.jetty.webapp.WebAppContext"name="addWebApplications">
<Arg><Refid="contexts"/></Arg>
<Arg><SystemPropertyname="jetty.home"default="."/>/webapps</Arg>
<Arg><SystemPropertyname="jetty.home"default="."/>/etc/webdefault.xml</Arg>
<Argtype="boolean">True</Arg><!--extract-->
<Argtype="boolean">False</Arg><!--parentpriorityclassloading-->
</Call>



默认的web.xml配置文件为webdefault.xml
如果想配置相应的web参数,可以更改其应用。

默认的端口为8080,如果想修改,更改:jetty.port属性

<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>-->
<Callname="addConnector">
<Arg>
<Newclass="org.mortbay.jetty.nio.SelectChannelConnector">
<Setname="port"><SystemPropertyname="jetty.port"default="8080"/></Set>
<Setname="maxIdleTime">30000</Set>
<Setname="Acceptors">2</Set>
<Setname="confidentialPort">8443</Set>
</New>
</Arg>
</Call>




简单的配置,简单的启动,

在eclipse中使用jetty是非常简单的,对于其他的ide配置基本上都一致。以前如果想调试web服务,必须要在庞大的开发插件下进行,如myeclipse,其实只是需要简单的功能,然而却不得不接受许多不常用的功能。没有办法,现在有了jetty,如果你只想调试web服务而已,那么请离开那些庞大的开发插件。简单的事情,用简单的方式处理。

首先创建一个web项目,我是采用maven 创建的,用了maven,就喜欢上了,而且正在享受其带来的方便。如下图的目录结构:

在web-inf中可以不需要放置jar文件,因为你是在eclipse中运行,自动会增加相应的classpath中的jar。只是需要把相应的jsp文件放置在webapp中。
接着增加相应的jetty.jar,本来我是采用maven直接增加的,为了清晰的方式,采用手工增加。毕竟这些jar,我是不需要的。如下图

默认,我使用jsp2.1规范,如果需要jsp2.0,可以只增加相应的jsp2.0文件中的jar。
接下来,就配置run application。增加一个java application run.如下图

记得勾上include libraries when...
主要的main class:org.mortbay.xml.XmlConfiguration
最后配置相应的参数:
program 参数为:etc/jetty-mywork-spring.xml,别忘了设置working directory为相应的jetty目录。如下图

最后记得不要忘了在etc/jetty-mywork-spring.xml,增加相应的web 应用。

分享到:
评论

相关推荐

    jetty相关的全部jar包

    jetty-security-9.4.8.v20171121.jar,jetty-io-9.4.8.v20171121.jar,jetty-continuation-9.4.8.v20171121.jar,jetty-client-9.4.8.v20171121.jar,jetty-jmx-9.4.8.v20171121.jar,jetty-plus-9.4.8.v20171121....

    eclipse jetty插件run-jetty-run-1.3.3

    eclipse jetty插件,从...下载run-jetty-run.zip文件,解压后再编写个links文件丢到eclipse的dropins目录下即可,省去了使用eclipse update方式安装的麻烦。 link文件样例如: path=d:\\eclipse_plugins\\run-jetty-run

    jetty-6.1.26.zip

    Jetty是一款轻量级、高性能的Java Web服务器和Servlet容器,与Tomcat相似,它为开发和部署Web应用程序提供了一种高效的选择。Jetty在设计上注重灵活性和可扩展性,使得它在处理HTTP协议、WebSocket协议以及部署各种...

    jetty-all.jar

    Jetty-all.jar是一个集合了众多Jetty组件的综合性JAR文件,它的主要目的是为了方便开发者在项目中快速引入和使用Jetty服务器。Jetty是一个开源的HTTP服务器和Servlet容器,它以其轻量级、高性能和易用性而受到广泛...

    maven集成jetty所需jar包maven-jetty-plugin,多版本

    在Java开发领域,Maven和Jetty是两个非常重要的工具。Maven是一个项目管理工具,它可以帮助开发者管理和构建Java项目,而Jetty则是一个轻量级的嵌入式Servlet容器,常用于快速开发、测试以及部署Web应用。本文将详细...

    jetty 8及依赖包

    这个压缩包包含Jetty 8版本的实现及其依赖库,是学习和理解Jetty工作原理,尤其是NIO(非阻塞I/O)和Servlet容器实现的宝贵资源。 Jetty 8在设计时特别强调了性能和可扩展性,它使用了Java NIO(New I/O)API来处理...

    jetty 9.4.9

    Jetty 9.4.9 是一个开源的Java Web服务器和Servlet容器,以其轻量级、高效和灵活性而受到开发者的欢迎。这个版本是Jetty项目的一个重要里程碑,提供了许多性能改进和新特性。在深入探讨之前,让我们先了解一些基本...

    jetty各个版本下载

    Jetty是一款轻量级、高性能的Java Web服务器和Servlet容器,它被广泛应用于各种规模的项目,从小型的个人项目到大型的企业级应用。Jetty以其高效、稳定和易于集成的特点,深受开发者喜爱。在本篇文章中,我们将深入...

    maven-jetty-plugin

    ** Maven Jetty Plugin 知识点详解 ** Maven Jetty Plugin是一款强大的工具,它将Jetty服务器集成到了Maven的构建流程中。这个插件允许开发者在开发过程中快速、便捷地运行和测试Java Web应用程序,而无需进行完整...

    jetty9.4.11+jetty在idea上的配置教程

    Jetty是一款轻量级、高性能的Java Web服务器和Servlet容器,广泛用于开发、测试和部署Web应用程序。在本文中,我们将深入探讨如何在IntelliJ IDEA(简称IDEA)这个流行的Java集成开发环境中配置Jetty 9.4.11版本。...

    Jetty9 配置使用HTTPS证书

    配置Jetty9服务器使用HTTPS证书的过程涉及多个步骤,包括申请证书、转换证书格式、以及配置Jetty服务器本身。以下详细描述这些步骤。 首先,申请证书部分通常需要借助第三方服务商,如阿里云、腾讯云等,这些服务商...

    Jetty权威指南.pdf

    ### Jetty权威指南知识点梳理 #### 一、Jetty简介 **1.1 Jetty功能介绍** Jetty是一个完全由Java编写的高性能HTTP服务器及servlet容器,它不仅能够作为一个独立的服务运行,还具备强大的可嵌入性。Jetty的设计...

    jetty 适合jdk1.8用的服务器

    Jetty是一款开源、轻量级的Web服务器和Servlet容器,被广泛用于开发、测试和部署Java Web应用程序。相较于Apache Tomcat,Jetty以其简洁的架构、高性能和低内存占用而受到开发者青睐。在选择Jetty时,必须考虑到与...

    jetty在eclipse中配置

    Jetty是一款轻量级、高性能的Java Web服务器和Servlet容器,它被广泛用于开发、测试和部署Web应用程序。Eclipse是流行的Java集成开发环境(IDE),开发者可以利用它来管理和运行项目。本教程将详细介绍如何在Eclipse...

    jetty所需jar包

    本篇文章将深入探讨Jetty所需jar包的相关知识点,帮助你理解和配置Jetty运行环境。 首先,让我们了解Jetty的核心组件和它们对应的jar包: 1. **jetty-server.jar**:这是Jetty服务器的基础,包含了处理HTTP连接和...

    idea的jetty-runner1.2.1插件

    **Jetty Runner 1.2.1 插件在 IntelliJ IDEA 中的应用** Jetty Runner 是一个用于 IntelliJ IDEA 的插件,它允许开发者快速地在 Jetty 服务器上运行 Java Web 应用程序,无需构建完整的 WAR 文件。这个插件特别适用...

    jetty9分拆的各个包下载

    jetty-alpn-client-9.2.26.v20180806.jar jetty-alpn-server-9.2.26.v20180806.jar jetty-annotations-9.2.26.v20180806.jar jetty-cdi-9.2.26.v20180806.jar jetty-client-9.2.26.v20180806.jar jetty-continuation...

    eclipse_jetty9离线插件

    Eclipse Jetty 9离线插件是专为开发者设计的一款工具,旨在简化在Eclipse集成开发环境中配置和运行Jetty服务器的过程。Jetty是一款轻量级、高性能的Java Web服务器和Servlet容器,广泛用于开发、测试和部署Web应用...

    jetty嵌入式服务器必须的jar包

    jetty嵌入式服务器开发所必须的jar包,本人使用jetty版本为6.1.3,jar包总数为9个,来自jetty:commons-el-1.0.jar,jasper-compiler-5.5.15,jasper-compiler-jdt-5.5.15.jar,jasper-runtime-5.5.15.jar,jetty-...

    jetty启动器资源配置文件

    ### Jetty启动器资源配置文件详解 #### 一、概述 Jetty是一款开源的Servlet容器,由Eclipse基金会维护。它支持最新的Java EE标准,并且具备轻量级、高性能等特点,适用于开发测试环境以及生产环境中的Web应用...

Global site tag (gtag.js) - Google Analytics