`

jetty一个开源的servlet容器

阅读更多
Jetty 是一个开源的servlet容器,它为基于Java的web内容,例如JSP和servlet提供运行环境。Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布。开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立运行(stand-alone)的Java应用提供网络和web连接。

特点:

01、易用性

易用性是 Jetty 设计的基本原则,易用性主要体现在以下几个方面:
通过 XML 或者 API 来对Jetty进行配置;默认配置可以满足大部分的需求;将 Jetty 嵌入到应用程序当中只需要非常少的代码;

03、可扩展性

在使用了 Ajax 的 Web 2.0 的应用程序中,每个连接需要保持更长的时间,这样线程和内存的消耗量会急剧的增加。这就使得我们担心整个程序会因为单个组件陷入瓶颈而影响整个程序的性能。但是有了 Jetty:
即使在有大量服务请求的情况下,系统的性能也能保持在一个可以接受的状态。利用 Continuation 机制来处理大量的用户请求以及时间比较长的连接。 另外 Jetty 设计了非常良好的接口,因此在 Jetty 的某种实现无法满足用户的需要时,用户可以非常方便地对 Jetty 的某些实现进行修改,使得 Jetty 适用于特殊的应用程序的需求。

02、易嵌入性

Jetty 设计之初就是作为一个优秀的组件来设计的,这也就意味着 Jetty 可以非常容易的嵌入到应用程序当中而不需要程序为了使用 Jetty 做修改。从某种程度上,你也可以把 Jetty 理解为一个嵌入式的Web服务器。
Jetty 可以作为嵌入式服务器使用,Jetty的运行速度较快,而且是轻量级的,可以在Java中可以从test case中控制其运行。从而可以使自动化测试不再依赖外部环境,顺利实现自动化测试。

demo:
作为嵌入式服务器使用代码实例

//代码:以嵌入模式启动Jetty
importorg.mortbay.http.HttpContext;
importorg.mortbay.http.HttpServer;
importorg.mortbay.http.SocketListener;
importorg.mortbay.http.handler.ResourceHandler;

publicclassJettySample{
publicstaticvoidmain(String[]args)throwsException{
//创建JettyHttpServer对象
HttpServerserver=newHttpServer();
//在端口8080上给HttpServer对象绑上一个listener,使之能够接收HTTP请求
SocketListenerlistener=newSocketListener();
listener.setPort(8080);
server.addListener(listener);
//创建一个HttpContext,处理HTTP请求。
HttpContextcontext=newHttpContext();
//用setContextPath把Context映射到(/web)URL上。
context.setContextPath("/web");
//setResourceBase方法设置文档目录以提供资源
context.setResourceBase("C:\\j2sdk1.4.1_05");
//添加资源处理器到HttpContext,使之能够提供文件系统中的文件
context.addHandler(newResourceHandler());
server.addContext(context);
//启动服务器
server.start();
}
}

需要的jar包:
commons-logging.jar
javax.servlet.jar
org.mortbay.jetty.jar
org.mortbay.jmx.jar
jetty还有对应maven插件
maven pom文件的设置:

<?xmlversion="1.0"encoding="utf-8"?>

<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.10</version>
<configuration>
<scanIntervalSeconds>10</scanIntervalSeconds>
<stopKey>foo</stopKey>
<stopPort>9999</stopPort>
</configuration>
<executions>
<execution>
<id>start-jetty</id>
<phase>pre-integration-test</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<scanIntervalSeconds>0</scanIntervalSeconds>
<daemon>true</daemon>
</configuration>
</execution>
<execution>
<id>stop-jetty</id>
<phase>post-integration-test</phase>
<goals>
<goal>stop</goal>
</goals>
</execution>
</executions>
</plugin>
然后直接通过mvn jetty:run命令就能直接启动

注:
   在maven中,用plugin的方式使用jetty,需要改动maven的setting.xml文件,才可以使用命令mvn jetty:run.
setting.xml中找到标签<pluginGroups>,增加:

<pluginGroup>org.mortbay.jetty</pluginGroup>
即可。

2014年02月13日,Jetty 9.1.2 发布[2]
2014年05月6日,Jetty 9.1.5 发布[3]
2014年6月6日,Jetty 9.2.0发布[4]
分享到:
评论

相关推荐

    jetty轻量级servlet容器

    Jetty 是一个用 Java 实现、开源、基于标准的,并且具有丰富功能的 Http 服务器和 Web 容器,可以免费的用于商业行为。Jetty 这个项目成立于 1995 年,现在已经有非常多的成功产品基于 Jetty,比如 Apache Geromino...

    Jetty 9 Servlet容器

    Jetty 9是一款轻量级、高性能且开源的Servlet容器,它主要负责处理基于Java Servlet规范的应用程序。作为Java服务的一部分,Jetty9为开发者提供了高效、稳定且灵活的平台来部署和运行Web应用程序。 首先,Jetty 9...

    jetty servlet容器

    Jetty 是一个开源的servlet容器,它为基于Java的web容器,例如JSP和servlet提供运行环境。Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布。开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立...

    Java如何使用Jetty实现嵌入式的Servlet容器

    在Java中,实现嵌入式的Servlet容器可以使用Jetty,Jetty是一个Java实现的开源的servlet容器,可以作为一个完整的Web服务器和Servlet容器,同时也可以嵌入在Java应用程序中。在Java程序中调用Jetty可以实现嵌入式的...

    JSP项目集成jetty服务器+servlet 3.0 demo

    `Jetty`是一个开源的HTTP服务器和Servlet容器,它的体积小、启动快速、内存占用少,特别适合于开发和测试环境。集成Jetty的好处在于,我们可以直接通过运行Java类来启动项目,无需部署到Web容器中,大大简化了开发...

    SpringBoot之配置嵌入式Servlet容器.pdf

    Tomcat是Apache下的一个开源项目,其作为Servlet容器和JSP引擎,广泛应用于小型和中等规模的Web应用。SpringBoot通过自动配置机制简化了Tomcat的配置,而开发者也可以根据需要进行修改和扩展。 要修改SpringBoot的...

    轻量级的 Java Web 容器 Jetty.zip

    Jetty 是一个开源的servlet容器,它为基于Java的web内容,例如JSP和servlet提供运行环境。Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布。开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立...

    一个支持servlet的web服务器.rar

    1. **Apache Tomcat**:是最流行的开源Servlet容器,它遵循Java EE标准,能够处理Servlet和JSP。安装Tomcat后,可以通过解压上传的压缩包,将Web应用的WAR文件(Web应用的打包形式)放到Tomcat的webapps目录下,启动...

    容器jetty

    Jetty是一款轻量级、高性能的Java Web服务器和Servlet容器,它在开源社区中广受欢迎,尤其适用于嵌入式系统和分布式应用程序。标题中的"jetty-distribution-9.3.5.v20151012"指的是Jetty的一个发行版本,具体为9.3.5...

    Jetty - Java HTTP Servlet Server-开源

    杰蒂已经动静了!!! 最新版本的Jetty位于http://eclipse.org/jetty。 Jetty是一个开源项目,提供HTTP服务器,HTTP客户端和javax.servlet容器。

    jetty-all-8.2.0.v20160908.zip

    Jetty是一个轻量级、高性能的开源HTTP服务器和Servlet容器,广泛用于Java Web应用程序的部署和运行。它支持HTTP、HTTPS、WebSocket等协议,并且具有高度可嵌入性和模块化的特性,使得开发者可以轻松地在自己的应用中...

    jetty相关

    - Jetty作为一个Servlet容器,可以解析HTTP请求,执行Servlet生命周期(如初始化、服务、销毁),并管理多个Web应用程序。 3. Jetty的特性: - **线程模型**:Jetty使用了一种高效的线程池模型,确保了高并发下的...

    java jetty容器

    Jetty由Eclipse基金会维护,是一个开源项目,其设计目标是提供一个简单、快速且可嵌入式的Web服务器和Servlet容器解决方案。 Jetty的核心特性包括: 1. **轻量级**: Jetty的体积小,启动迅速,不需要复杂的依赖库...

    Jetty web服务器

    Jetty 是一个开源的servlet容器,它为基于Java的web内容,例如JSP和servlet提供运行环境。Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布。开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立...

    Android i-jetty开源项目.rar

    Android i-jetty开源项目是专为Android平台设计的一个轻量级HTTP服务器实现,其核心是嵌入式Jetty服务器。Jetty是一款广泛使用的Java Web服务器和Servlet容器,而Android i-jetty则是将Jetty的特性引入到Android应用...

    Jetty Servlet+ HttpClient 制作的 Java HttpProxy

    Jetty是一个开源的Servlet容器,它可以解析HTTP请求并将其分派到对应的Servlet。在我们的HTTP代理场景中,我们将创建一个Servlet来处理HTTP代理请求。 1. **配置Jetty** 首先,需要添加Jetty依赖到项目中。如果你...

    i-jetty源码

    1. **Servlet容器**:i-jetty作为一个Servlet容器,它的主要职责是管理和运行Servlet。Servlet是Java平台上的Web应用组件,用于处理客户端的请求并返回响应。 2. **HTTP服务器**:i-jetty不仅是一个Servlet容器,它...

    Android源码——i-jetty开源项目.zip

    i-jetty开源项目就是专为Android平台设计的一个轻量级HTTP服务器,它基于Java的Jetty服务器,实现了在Android设备上运行HTTP服务的功能。本文将详细探讨这个项目的核心概念、工作原理以及如何在实际开发中应用。 1....

    Jetty web 容器

    Jetty 是一个开源的、轻量级的 Java Web 应用服务器,它被广泛用于开发、测试和部署Web应用程序。Jetty 的设计目标是小巧、快速、易于集成,使其成为开发人员和小型团队的理想选择。在本文中,我们将深入探讨 Jetty ...

    JAVA里使用Jetty作为轻量级嵌入式的Web容器

    Java中的Jetty是一个轻量级、高性能且可嵌入式的Web服务器和Servlet容器,它以其简单易用和高效性在开发社区中广受欢迎。本文将深入探讨Jetty的基本概念、特性以及如何在Java项目中使用它。 1. **Jetty简介** - ...

Global site tag (gtag.js) - Google Analytics