Jetty是Java领域另一个出色的Web服务器,它同样也是开源的。与tomcat不同的是它可作为一个嵌入式服务器。也就是说,如果我们在应用中加入jetty的核心jar文件,应用即可对外提供http服务。它同时也是平台无关的java web服务器,既可以在Windos平台上运行,也可以在Linux平台上运行。
大家可以登录http://jetty.codehaus.org/jetty/站点下载Jetty的最新版本。下载的zip文件也是与平台无关的压缩包,不管是windows还是Linux都可使用。
将下载的安装zip包,解压缩到任意的路径下。运行Jetty需要使用如下命令:
cd D:\jetty
D:
java -jar start.jar
建议将上面的命令写成脚本,在windows下可写成批处理命令,在linux下可写成shell脚本。每次运行执行该文件就可以了。
运行成功后,启动浏览器,然后输入http://localhost:8080/回车,看看是否成功。如果不成功首先要保证端口8080是否被占用,真的被占用那就配置一下Jetty的端口,下面会介绍的。
1.Jetty的基本配置
主要介绍Jetty的端口设置,以及如何部署Web应用,Jetty是一个嵌入式的Http服务器,因此配置方式还是与tomcat有一些差异的:
Jetty的配置文件都会在etc的目录下,熟悉linux的目录的人应该很眼熟,呵呵。该目录下有如下几类配置文件:
1.jetty.xml:该文件是Jetty的默认配置文件,Jetty的端口号也是在这个文件里设置的。
2.jetty-xxx.xml:该文件是为了给Jetty增加扩展应用所用的配置文件。
3.webdefault.xml:该文件是Web应用的默认配置文件,用于控制Jetty容器里所有Web应用的通用属性,该文件不可以修改。
Jetty服务器提供HTTP服务的主类是org.mortbay.jetty.Server,所以etc路径下的文件都需要为org.mortbay.jetty.Server配置属性。如下所示:
<Configure id="Server" class="org.eclipse.jetty.server.Server">
<!-- =========================================================== -->
<!-- Set connectors -->
<!-- =========================================================== -->
<Call name="addConnector">
<Arg>
<New class="org.eclipse.jetty.server.nio.SelectChannelConnector">
<Set name="host"><Property name="jetty.host" /></Set>
<Set name="port"><Property name="jetty.port" default="8080"/></Set>
<Set name="maxIdleTime">300000</Set>
<Set name="Acceptors">2</Set>
<Set name="statsOn">false</Set>
<Set name="confidentialPort">8443</Set>
<Set name="lowResourcesConnections">20000</Set>
<Set name="lowResourcesMaxIdleTime">5000</Set>
</New>
</Arg>
</Call>
Jetty的配置文件非常巧妙,它通过配置文件来新建对象(New元素),调用对象的方法(Call元素),设置属性(Set元素控制)。实际上,Jetty底层将会根据配置文件中的信息,使用反射来创建对象,设置属性和调用方法。由此可见,如果我们需要在应用程序中嵌入Jetty服务器,只需要创建org.mortbay.jetty.Server对象,并调用一些列方法即可。
2.部署Web应用
Jetty同样也有两种方式部署Web应用:
1)自动部署:将Web应用复制到Jetty的webapps的路径下,Jetty就会吧该Web应用自动部署到Jetty服务器中。
2)利用配置文件部署:新增配置文件来部署Web应用,这种方式无需将web应用放置到webapps路径下。
自动部署就不多说了,利用配置文件部署,既是进入Contexts目录,该目录下的所有文件都会被系统自动加载,并且根据这些配置文件来部署应用。该路径下默认有两个文件:
1)javadoc.xml:负责部署java的API应用;
2)test.xml:负责部署jetty的实例应用。
复制test.xml文件,将文件名改为项目名称。并对复制文件进行修改:
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Required minimal context configuration : -->
<!-- + contextPath -->
<!-- + war OR resourceBase -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<Set name="contextPath">/</Set>
<Set name="war"><SystemProperty name="jetty.home" default="."/>/new</Set>
上面的两行分别制定了Web应用的虚拟路径和文档路径,增加了该配置文件以后,jetty启动时将会自动把new路径下的web应用部署在服务器中。如果要删除该web应用就直接删除该配置文件即可。
3.配置JNDI绑定
Jetty同样可以整合DBCP,C3P0等数据源的实现,想外界提供容器管理的数据源。实际上,对外界提供容器管理的数据源,只是Jetty的JNDI的绑定功能之一。
分享到:
相关推荐
本篇文章将深入介绍Jetty的基础知识,包括其核心概念、工作原理以及如何入门使用。 首先,Jetty的核心特性之一是它的轻量化设计。与其他重量级的Web服务器(如Apache Tomcat)相比,Jetty没有繁重的依赖,这使得它...
【Jetty入门学习资料】 Jetty是一个轻量级、高性能的开源Servlet容器,它由Java编写,以JAR包形式提供API,便于开发者将其轻松集成到Java应用中。Jetty自1995年创立以来,已被众多知名项目如Apache Geromino、JBoss...
本文将深入探讨Jetty的入门实例,帮助你快速掌握如何使用Jetty来运行简单的Web应用。 首先,让我们理解什么是Servlet。Servlet是Java编程语言中的一个接口,由Java Servlet API提供,它允许开发人员扩展Web服务器的...
jetty快速入门与嵌入使用,简单、易懂,轻松学习!
资源名称:Jetty6入门教程资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
本教程将引导你入门Jetty的使用,帮助你快速理解如何配置和运行Jetty服务器。 一、Jetty简介 Jetty是由Eclipse基金会维护的一个开源项目,它符合Java Servlet和JSP规范。与其他Web服务器相比,Jetty以其小型化、...
1. Jetty简介: - Jetty是一个开源项目,由Eclipse基金会维护,其设计目标是轻量、高效、灵活,特别适合嵌入式环境。 - 它支持最新的Servlet和JSP标准,包括Servlet 4.0和JSP 2.3,同时提供了WebSocket、HTTP/2等...
在这个简单的Jetty入门示例中,你可能会学到如何创建一个简单的Servlet,如何处理HTTP GET和POST请求,以及如何通过Jetty API或配置文件来启动和停止服务器。此外,还会涉及如何使用Jetty的嵌入式模式,即直接在应用...
Jetty入门(视频) 下载和安装Jetty 如何安装一个Jetty包 如何配置Jetty – 主要文档 如何运行Jetty 用JConsole监控Jetty 如何使用Jetty开发 Jetty HelloWorld教程 Jetty和Maven HelloWorld教程 Jetty(6)入门 ...
#### 一、Jetty简介与入门 ##### 1.1 Jetty是什么? Jetty是一款开源的、轻量级的Java Web服务器和Java Servlet容器,由Eclipse基金会维护。它以其小巧、灵活、高性能的特点而著称,适用于开发测试环境和生产环境...
对于初学者,理解Jetty的基本结构和配置方式,以及如何通过它来部署和运行Servlet应用,是入门的关键。而对于有经验的开发者,深入研究Jetty的源码和模块化设计,可以帮助优化性能,实现更高效的应用服务。
该包适用于maven新手入门,因为作者本身也是一员maven新手,里面包括了maven的下载包,插件包,插件的配置,环境变量的设置,maven项目建立的详解及运行,里面集成了jetty,tomcat,struts2,当然还包括了直接运行jar包...
使用 Maven、Jetty 和 Jersey 的入门代码 使用 maven-shade-plugin 构建一个带有依赖项的胖 jar 使用单一资源在 8080 上运行码头服务器 建造 安装 跑步 java -jar target/jetty-app-{{version}}.jar 测试资源
这个"maven+spring+jetty+logback简单项目源码"提供了一个基础框架,方便新手快速入门并实践这些技术。 首先,`Maven`是Apache开发的一个项目管理和综合工具,它通过一个项目对象模型(Project Object Model, POM)...
### Wicket 入门与 Eclipse 项目创建指南 在当今的 Web 开发领域,Java 框架扮演着举足轻重的角色,其中 Apache Wicket 是一个强大的、面向组件的 Java Web 应用框架,它简化了 Web 应用的开发过程。本文将详细介绍...
Maven使用实战-从入门到精通实践【张振华.Jack】 Maven简介、Maven主要做什么用? 项目对象模型(POM) 坐标(Coordinates)、打包方式(Packaging)、项目描述 项目子父级关系(parent) 依赖管理(dependency),冲突了...
### J2EE简介 J2EE是Sun Microsystems推出的企业级Java平台标准,它提供了一套完整的开发框架,用于构建分布式、多层、基于组件的企业应用程序。J2EE主要包含以下关键技术和组件: 1. **Servlets**:用于处理HTTP...
此外,内嵌的Tomcat或Jetty服务器使得部署更简单。 接下来是Spring Boot的配置。配置文件主要有两种:`application.properties`和`application.yml`,两者功能相同,只是格式不同。这里你可以定义应用的基本属性,...
SpringBoot内置了Tomcat或Jetty服务器,只需一行命令即可启动应用。 **6. 自动配置** SpringBoot的一大亮点是自动配置。它根据项目依赖自动配置相应的Bean,减少了大量手动配置的工作。例如,如果项目引入了Spring...