为了完成web工程的测试,最近内嵌jetty也要搞起来.第一次搞还是挺焦头烂额的.直接上成果:

package com.test.action;import java.io.File;import org.eclipse.jetty.server.Connector;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.nio.SelectChannelConnector;
import org.eclipse.jetty.util.thread.QueuedThreadPool;
import org.eclipse.jetty.webapp.WebAppContext;public class RunTest {public static void main(String[] args) {tt();}public static void tt() {Server server = new Server();// 创建jetty web容器server.setStopAtShutdown(true);// 在退出程序是关闭服务// 创建连接器,每个连接器都是由IP地址和端口号组成,连接到连接器的连接将会被jetty处理Connector connector = new SelectChannelConnector();// 创建一个连接器connector.setHost("127.0.0.1");// ip地址connector.setPort(8080);// 连接的端口号server.addConnector(connector);// 添加连接QueuedThreadPool threadPool = new QueuedThreadPool();threadPool.setMaxThreads(3000);server.setThreadPool(threadPool);// 配置服务WebAppContext context = new WebAppContext();// 创建服务上下文context.setContextPath("/strutsDemo");// 访问服务路径 http://{ip}:{port}/context.setConfigurationDiscovered(true);String baseDir = Thread.currentThread().getContextClassLoader().getResource("").getPath();context.setDescriptor(baseDir + File.separator + "/WEB-INF/web.xml");// 指明服务描述文件,就是web.xml// context.setDescriptor("/E:/workspace/strutsDemo/target/classes/\\/WEB-INF/web.xml");//// 指明服务描述文件,就是web.xmlcontext.setResourceBase(System.getProperty("user.dir")+ "/src/main/webapp/");// 指定服务的资源根路径,配置文件的相对路径与服务根路径有关server.setHandler(context);// 添加处理try {server.start();// 开启服务
            server.join();} catch (Exception e) {e.printStackTrace();System.exit(1);}}}

  启动访问就可以了.主要是context的配置花了很多功夫,老是配不好.还有据说jetty版本或者jar包不同会有配置差异,我用的是8.0.4版本,顺便贴上maven依赖:

<!--jetty --><dependency><groupId>org.eclipse.jetty.aggregate</groupId><artifactId>jetty-all</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-webapp</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-server</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-servlet</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-deploy</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-xml</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-security</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-client</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-ajp</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-annotations</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-websocket</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-util</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-io</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-http</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-continuation</artifactId><version>8.0.4.v20111024</version></dependency><dependency><groupId>org.mortbay.jetty</groupId><artifactId>jsp-2.1-glassfish</artifactId><version>2.1.v20100127</version></dependency>

  事实上不需要这么多,我这是一劳永逸的偷懒做法,你们可以改进哟

jetty作为内嵌服务器自启动相关推荐

  1. springboot需要tomcat服务器吗_SpringBoot学习(二):内嵌服务器引擎(Tomcat,Jetty)实现原理...

    概述 SpringBoot使用main方法启动的一个重要特性是,不需要打包成war部署到Tomcat这种Servlet容器中,而是只需打包成jar,然后通过java或mvn等命令运行这个jar包,然后 ...

  2. creo配置文件config选项详解_5年资深架构师重点聚焦:SpringBoot的配置详解+内嵌Servlet容器

    Spring Boot的配置详解 在本节中,我们将重点聚焦在Spring Boot的配置方面. 理解Spring Boot的自动配置 按照"约定大于配置"的原则,Spring Bo ...

  3. 使内嵌式jetty服务器支持jsp

    1.jetty是什么 jetty是一个轻量级的web服务器,类似tomcat,但用起来比tomcat灵活,尤其是支持内嵌式使用.所谓内嵌式即以java语句的形式启动jetty,这样我们可以无需部署和启 ...

  4. 内嵌WEB服务器加载原理

    内嵌WEB服务器加载原理 理解里面的tomcat是如何启动的 Startup.bat Server.start() 1,概述 我们在使用springboot项目的时候并没有使用外部的tomcat,那么 ...

  5. .NET5 开发手机提词应用,基于内嵌Web服务器及PowerPoint自动化

    项目说明 我使用电脑录制视频教程的时候,会展示PPT给观众,同时也有一些提示性的文字给我自己看.这就类似于很多电视节目录制现场的"提词器". 节目录制现场的提词器 在PC环境下,P ...

  6. ssh 反向代理连接内网服务器并配置开机自启动(解决autossh无法开机自启动)

    Q:现有公网服务器A和内网服务器B,如何通过ssh连接B呢 A: 安装autossh 配置B免密登录A,弄了之后B运行ssh root@123.123.123.123,以便将A加入到B的know_ho ...

  7. 永恒之塔最新服务器2020,【永恒之塔5.8服务端】2020全新小结版一键端+GM方式内嵌+GM专用工具+详尽安裝构建教程...

    [永恒之塔5.8服务端]2020全新小结版一键端+GM方式内嵌+GM专用工具+详尽安裝构建教程 找了很多版本,都不记得在哪下的,但非常感谢大佬们的付出.这个版本应该是目前最完善的啦,估计大神们都去搞6 ...

  8. tomcat start 无法启动_解密Springboot内嵌Tomcat

    Springboot简介 相信大多数开发者对Springboot比较熟悉了,它能够快速地创建一个spring应用,能够完全摒弃XML的配置方式,并且内嵌了Tomcat.Jetty这样的Servlet容 ...

  9. Spring Boot 容器选择 Undertow 而不是 Tomcat Spring Boot 内嵌容器Unde

    Spring Boot 内嵌容器Undertow参数设置 配置项: # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程 # 不要设置过大,如果过大,启动 ...

最新文章

  1. Swift 中的内存管理详解
  2. linux主节点启动nfs,51CTO博客-专业IT技术博客创作平台-技术成就梦想
  3. 悬浮框_纯HTML实现某宝优惠券、商品列表和活动悬浮等布局(文末有源码)
  4. cubic算法优化_TCP拥塞控制算法 — CUBIC的补丁(七) | 学步园
  5. YBTOJ:斐波拉契(矩阵快速幂)
  6. 关于安装 rst2pdf 时遇到的 setuptools过老的问题
  7. Kafka 副本leader选举
  8. Redis的两种持久化介绍与对比
  9. 调度域(Scheduling Domain)
  10. 基于javaWEB技术的SSM音乐网站设计与实现(含论文+程序设计+PPT答辩)
  11. 51单片机C语言编程100例pdf,51单片机C语言编程100例.doc
  12. PCB电路板生产完成分析
  13. 常见开源Java论坛(附JForum论坛安装以及部署)
  14. 黑暗传说单机自动挂机_黑暗传说单机RPG
  15. 关于命令执行Bypass的一些思路
  16. Linux服务器安全配置
  17. QNX铁路安全软件--QNX在铁路系统领域应用
  18. 量子计算机:一场改变世界的开发竞赛
  19. Kotlin sealed class 的使用
  20. 几种常用的mosfet驱动电路

热门文章

  1. 优秀的 Java 项目代码都是如何分层的?
  2. 算法实践1_线性回归
  3. 特征工程(一)countvectororizer
  4. 蛰伏7年!他一天发表两篇Nature,还曾是曹原的师弟!
  5. ICML 2021:矩阵乘法无需相乘,速度提升100倍,MIT开源最新近似算法
  6. 如何使用Transformer来做物体检测?
  7. 看着像学生,实为博导、教授!发过4篇CNS,刚刚又获重要大奖
  8. 商汤AI小学教材来了,动动手玩乐高就能搭建机器人
  9. CPU上跑到 100 fps 的高精度PyTorch人脸特征点检测库
  10. Redis源码分析:基础概念介绍与启动概述