Jetty

article/2025/9/14 17:42:46

本文介绍一个使用Jetty开发的Web的小例子。

Jetty是一个开源的servlet容器,它为基于Java的web容器(例如JSP和servlet)提供运行环境。可以把它理解为和Tomcat一样,不过Jetty更小更轻量级。如果想更深入学习Jetty推荐看:http://blog.sina.com.cn/s/blog_9ed7f0d70101ivsu.html,这里面的一系列的文章分别对jetty服务流程、对静态资源的访问方法、把servlet部署到jetty里面、ContextHandler 的使用,都做了非常简洁、通俗易懂的介绍,本文就“把servlet部署到jetty里面”做介绍

本文使用的Maven建工程,对Maven不熟悉的请看:http://blog.csdn.net/tiandixuanwuliang/article/details/78752881

下面开始介绍这个小例子:

1、在maven项目中配置jetty和servlet

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>testJetty</groupId><artifactId>testJetty</artifactId><version>0.0.1-SNAPSHOT</version><packaging>war</packaging><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.compile.version>1.8</project.compile.version><servlet.version>3.1.0</servlet.version><jsp.version>2.2</jsp.version><jstl.version>1.2.5</jstl.version><jetty.version>8.1.10.v20130312</jetty.version></properties><dependencies><!-- Web Dependencies start --><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>${servlet.version}</version></dependency><dependency><groupId>javax.servlet.jsp</groupId><artifactId>jsp-api</artifactId><version>${jsp.version}</version></dependency><dependency><groupId>org.apache.taglibs</groupId><artifactId>taglibs-standard-compat</artifactId><version>${jstl.version}</version></dependency><dependency><groupId>org.apache.taglibs</groupId><artifactId>taglibs-standard-impl</artifactId><version>${jstl.version}</version></dependency><dependency><groupId>org.apache.taglibs</groupId><artifactId>taglibs-standard-jstlel</artifactId><version>${jstl.version}</version></dependency><dependency><groupId>org.apache.taglibs</groupId><artifactId>taglibs-standard-spec</artifactId><version>${jstl.version}</version></dependency><!-- Web Dependencies end --><!-- jetty start --><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-server</artifactId><version>9.0.0.v20130308</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-webapp</artifactId><version>9.0.0.v20130308</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-continuation</artifactId><version>9.0.0.v20130308</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-jsp</artifactId><version>9.0.0.v20130308</version></dependency><!-- jetty end --></dependencies>
</project>
2、写一个Servlet

import java.io.IOException;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;@SuppressWarnings("serial")
public class MainServlet extends HttpServlet{@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {req.setCharacterEncoding("utf-8");resp.setCharacterEncoding("utf-8");resp.setHeader("content-type","text/html;charset=UTF-8");System.out.println("servlet运行起来了");resp.getWriter().write("servlet运行起来了");resp.getWriter().close(); }
}

3、写Jetty启动文件(注意:不能加包名)

import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder;import com.welljoint.MainServlet;
public class HelloJetty {/*** @throws Exception * @Title: main * @Description:启动jetty,程序入口* @param args* @throws */public static void main(String[] args) throws Exception{Server server = new Server(8080);//servletContextHandler是把servlet部署到jetty里面的桥梁ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);  //所有请求都要经过jetty   context.setContextPath("/"); server.setHandler(context);//配置servlet请求路径 context.addServlet(new ServletHolder(new MainServlet()), "/hello");  server.start();server.join();}
}

4、在Jetty的类的main方法上单击右键选择java项目运行方式(注意是像运行java项目一样运行)

如图:


http://chatgpt.dhexx.cn/article/irWGcdnm.shtml

相关文章

JWT入门详解

目录 一、JWT简介 1.什么是JWT&#xff1f; 2.为什么要使用JWT&#xff1f; 二、JWT的工作原理 三、JWT的组成 1.Header&#xff08;头部&#xff09; 2.Payload(载荷) Reserved claims(保留) Public claims&#xff08;公有&#xff09; Private claims(私有) 3.s…

Ubuntu系统搭建后端Websocket服务器--基于Apache Tomcat

目录 一、概述二、基本安装2.1 Java安装2.2 Apache Tomcat安装2.3 Eclipse EE安装 三、正式部署3.1 创建一个简单java web项目3.2 服务端部署3.3 运行3.4 局域网连接Websocket 一、概述 本文针对Ubuntu系统&#xff08;Win10下的虚拟机&#xff09;进行详述&#xff0c;本文测…

部署Nginx+Tomcat+Php-fpm+mariadb主主

要求 1、前端1台Nginx&#xff0c;均衡后端2台php-fpm&#xff0c;均衡后端2台Tomcat&#xff0c;2台MYSQL采用主主架构&#xff0c;用户通过域名访问前端Nginx 域名v1.jd.com v2.jd.com访问到Discuz和Jforum不同的网站。 2、将第一道题目的部署步骤和架构图画出来。架构图上要…

【JavaWeb】WEB开发概述以及Tomcat

&#x1f50e;这里是【JavaWeb】&#xff0c;关注我学习JavaWeb不迷路 &#x1f44d;如果对你有帮助&#xff0c;给博主一个免费的点赞以示鼓励 欢迎各位&#x1f50e;点赞&#x1f44d;评论收藏⭐️ &#x1f440;专栏介绍 【JavaWeb】 目前主要更新JavaWeb&#xff0c;一起…

tomcat环境搭和管理及实现jsp通过tomcat连接mysql

25.1 什么是Tomcat 官方网站&#xff1a;http:#tomcat.apache.org/ Tomcat 是 Apache 软件基金会&#xff08;Apache Software Foundation&#xff09;的 Jakarta 项目中的一个核心项目&#xff0c;由 Apache、Sun 和其他一些公司及个人共同开发而成。由于有了 Sun 的参与和支持…

Tomcat的Https设置及Http自动跳转Https (Linux环境下)

1.场景还原 近期项目中要对信息传输过程中进行安全加密&#xff0c;那么第一时间浮现笔者脑海的当然是https,接下来笔者将介绍如何在web服务器Tomcat中配置Https及Http自动跳转Https 2.Https相关介绍 Https是由NetScape公司设计的一个基于Http的加密传输协议&#xff0c;可以这…

六、Tomcat集群

TOMCAT集群 目录 TOMCAT集群 1 1 集群 1 1.1 什么是集群 1 1.2 集群的特性 1 1.3 集群的分类 1 1.4 TOMCAT集群配置的优缺点 2 1.5 APACHETOMCAT 2 1.6 环境说明 2 2 软件安装 3 2.1 安装说明 3 2.2 JDK安装 3 2.3 APACHE安装 4 2.4 TOMCAT安装 4 3 集群配置 6 3.1 APACHEMOD_J…

Mycat环境搭建和管理及实现jsp通过tomcat连接mysql

一、什么是tomcat 官方网站&#xff1a;http://tomcat.apache.org/ Tomcat 是 Apache 软件基金会&#xff08;Apache Software Foundation&#xff09;的 Jakarta 项目中的一个核心项目&#xff0c;由 Apache、Sun 和其他一些公司及个人共同开发而成。由于有了 Sun 的参与和支持…

Liunx下Tomcat中配置SSL协议(http转https)+域名配置SSL证书

问题描述 为什么http转https?什么情况下需要用到http转https?https优点!!!https缺点!!!废话不多说了上代码,阿里的产品为例(tomcat配置ssl). 准备材料:获取到证书点击上图的帮助可查看自带的配置文档个人感觉挺详细的 配置域名SSL证书对应上图进行选择配置就ok 接下来我们就配…

Tomcat通过自带的Cluster方式实现Session会话共享

一般来说,在多个tomcat集群业务中,session会话共享是必须的需求,不然前端nginx转发过来的请求不知道之前请求在哪台tomcat节点上&#xff0c;从而就找不到session以至于最终导致请求失败。要实现tomcat session共享有多种方案,今天介绍下使用tomcat自带的cluster方式&#xff0…

redhat 7.9 部署war包(二)之 环境安装 jdk,tomcat等

tomcat服务器环境搭建 redhat 7.9系统中搭建tomcat8.5.88服务器端在redhat中安装tomcat8一.传输文件到虚拟机中二.设置系统环境变量 JAVA_HOME三.启动tomcat8 部署war包 redhat 7.9系统中搭建tomcat8.5.88服务器端 本篇文章介绍&#xff0c;如何在redhat7.9环境下安装java web…

tomcat看源码

一.环境搭建 1.官网下载tomcat9 2.idea打开 新建pom文件 <!-- pom.xml --> <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-inst…

centos 6.2 mysql和tomcat的配置_基于CentOS 6.8平台的Tomcat+MySQL+JDK环境搭建

部署环境 Server&#xff1a;CentOS 6.8 x86_64 Tomcat&#xff1a;9.0.0.M9 MySQL&#xff1a;5.7.14 JDK&#xff1a;8u102 部署准备 使用浏览器访问Apache Tomcat官网 http://tomcat.apache.org/ 下载目前最新9版本 9.0.0.M9版本tar.gz安装包 下载Apache Commons Daemon&…

Windows下配置Tomcat集群

为什么要用Tomcat集群 可以提高整体web服务器性能&#xff0c;将动态页面交给tomcat处理&#xff0c;将静态文件交给apache处理&#xff0c;可以大大提高服务器的静态文件处理性能。 可以实现web服务器的负载均衡&#xff0c;服务器可采用集群的方式来响应客户端请求。Apache的…

tomcat连接mysql及JDBC详解

一、Tomcat简介 1、Tomcat简介 Tomcat 是 Apache 软件基金会&#xff08;Apache Software Foundation&#xff09;的 Jakarta 项目中的一个核心项目&#xff0c;由 Apache、Sun 和其他一些公司及个人共同开发而成。由于有了 Sun 的参与和支持&#xff0c;最新的 Servlet 和JS…

tomcat配置url跳转_web和tomcat的区别

在Web2.0的浪潮中&#xff0c;各种页面技术和框架不断涌现&#xff0c;为服务器端的基础架构提出了更高的稳定性和可扩展性的要求。近年来&#xff0c;作为开源中间件的全球领导者&#xff0c;JBoss在J2EE应用服务器领域已成为发展最为迅速的应用服务器。在市场占有率和服务满意…

Windows下安装配置Tomcat

Windows下安装配置Tomcat 下载 到官网下载目标Tomcat版本&#xff1a;https://tomcat.apache.org/ 下载完成后&#xff0c;进入目标目录下 解压到安装目录 配置 配置环境变量&#xff1a; 变量名为&#xff1a;CATALINA_HOME 变量值为&#xff1a;D:\software\tapache-t…

Linux系统安装配置tomcat详细教程

准备工作 在Xshell控制台依次安装&#xff1a; Linux服务器和window互传文件工具 yum install lrzsz解压命令 yum install unzip安装jdk1.8 yum install -y java-1.8.0-openjdk-devel.x86_64安装 下载tomcat的压缩文件&#xff0c;我以apache-tomcat-8.5.87.zip为例。 将…

Tomcat 环境搭建和管理

Tomcat 概念 Tomcat 是 Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目&#xff0c;由 Apache、Sun 和其他一些公司及个人共同开发而成&#xff0c;由于有了 Sun的参与和支持&#xff0c;最新的 Servlet 和 JSP规范总是能在Tomcat 中得到体现&a…

如何将mpg格式转换为mp4格式?

如何将mpg格式转换为mp4格式&#xff1f;mpg是什么格式文件呢&#xff1f;mpg全称MPEG&#xff0c;即动态图像专家组&#xff0c;是运动图像压缩算法的国际标准&#xff0c;这种专业的解释可能很多人看不懂&#xff0c;简单的说mpg就是一种视频文件格式。属于不常用的视频文件格…