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

可爱的Jetty - tomcat的可能终结者

    博客分类:
  • java
阅读更多
有机会开始接触了一下Jetty,发现果然是好用,有一种相见恨晚的感觉,听说现在Google的Java web容器已经都专用jetty。


这源于Jetty的插件似的特点,而且Jetty可以像一个简单的POJO写在程序中,就像他的口号中所说的那样,“Don't deploy your application in Jetty, deploy Jetty in your application”,"不要让你的程序部署到Jetty中,让我们Jetty嵌入到你们的程序中"。


Jetty的高扩展性也是其发展迅速的另一个重要的特点,Jetty不仅仅提供了很多好用的插件,比如ip过滤、日志记录、请求日志、代理服务器、rewrite、ssl等,这些都可以通过简单的配置一个配置文件,然后再启动参数中加入该配置文件即可轻松实现。



哦,还有一点,Jetty实现了独特的推模式,这个虽然还没有用,但是了解了一下他的实现方式,性能方便还是不错的。。

下面简单的谈谈Jetty的使用:



Wepapps Deployment 这也是我们平常最常用的部署方式,好像是在嵌入式服务器出现之前唯一的部署方式。跟一般的web容器一样Jetty在根目录下面也有一个webapps目录,在jetty启动之前会扫描该目录:


如果有foo.war,则jetty会把程序发布到/foo下


如果webapps下面有foo文件夹,也会发布到foo/下

如果同时存在一个foo文件夹和一个foo.war,则会判断两者的修改时间,选择最新的进行部署

如果是root.war则会直接部署到根目录下。。。这个好像跟tomcat差不多,呵呵



Embedded Usage 这个是这里喜欢Jetty的最主要的原因了,嵌入式,只需要将jetty的jar包copy到程序中,然后就可以使用 Server server = new Server(8080);  server.start();启动服务了,就是这么简单,是不是有些惊讶呢,当然如果你有一些特殊的需求,可以对server进行一些配置。



下面是我部署程序是用到的java代码


[code="java"]       String webapp = "D:/****";  // 程序存放的位置
       server = new Server(8080);
       WebAppContext appcontext = new WebAppContext();
       appcontext.setDescriptor(webapp + "/WEB-INF/web.xml");
       appcontext.setResourceBase(webapp);
       appcontext.setContextPath("/");
       appcontext.setParentLoaderPriority(true);
       server.setHandler(appcontext);

       try {
               server.start();
       } catch (Exception e) {
e.printStackTrace();
       }

哈哈,就是这么简单。。。。


server.stop();关闭服务了。。。。。

3
2
分享到:
评论

相关推荐

    jetty-all.jar

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

    jetty-util-9.4.43.v20210629-API文档-中文版.zip

    赠送jar包:jetty-util-9.4.43.v20210629.jar; 赠送原API文档:jetty-util-9.4.43.v20210629-javadoc.jar; 赠送源代码:jetty-util-9.4.43.v20210629-sources.jar; 赠送Maven依赖信息文件:jetty-util-9.4.43.v...

    jetty-libs-9.4.zip

    jetty-client-9.4.24.v20191120, jetty-continuation-9.4.24.v20191120 jetty-http-9.4.24.v20191120 jetty-io-9.4.24.v20191120 jetty-security-9.4.24.v20191120 jetty-server-9.4.24.v20191120 jetty-...

    jetty-server-9.4.8.v20171121-API文档-中文版.zip

    赠送jar包:jetty-server-9.4.8.v20171121.jar; 赠送原API文档:jetty-server-9.4.8.v20171121-javadoc.jar; 赠送源代码:jetty-server-9.4.8.v20171121-sources.jar; 赠送Maven依赖信息文件:jetty-server-9.4.8...

    jetty-server-8.1.8.v20121106-API文档-中文版.zip

    赠送jar包:jetty-server-8.1.8.v20121106.jar; 赠送原API文档:jetty-server-8.1.8.v20121106-javadoc.jar; 赠送源代码:jetty-server-8.1.8.v20121106-sources.jar; 赠送Maven依赖信息文件:jetty-server-8.1.8...

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

    - 使用旧版本的`maven-jetty-plugin`可能会导致某些新特性无法使用或与其他库冲突,因此保持插件更新是很重要的。 6. 结论: `maven-jetty-plugin`简化了Java Web应用的开发和测试过程,通过Maven的命令行即可...

    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-all-7.6.0.v20120127-API文档-中文版.zip

    赠送jar包:jetty-all-7.6.0.v20120127.jar; 赠送原API文档:jetty-all-7.6.0.v20120127-javadoc.jar; 赠送源代码:jetty-all-7.6.0.v20120127-sources.jar; 赠送Maven依赖信息文件:jetty-all-7.6.0.v20120127....

    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....

    jetty-util-6.1.26-API文档-中英对照版.zip

    赠送jar包:jetty-util-6.1.26.jar; 赠送原API文档:jetty-util-6.1.26-javadoc.jar; 赠送源代码:jetty-util-6.1.26-sources.jar; 赠送Maven依赖信息文件:jetty-util-6.1.26.pom; 包含翻译后的API文档:jetty-...

    jetty-http-9.4.11.v20180605-API文档-中英对照版.zip

    赠送jar包:jetty-http-9.4.11.v20180605.jar; 赠送原API文档:jetty-http-9.4.11.v20180605-javadoc.jar; 赠送源代码:jetty-http-9.4.11.v20180605-sources.jar; 赠送Maven依赖信息文件:jetty-...

    jetty-all-9.4.47.v20220610-uber.jar

    jetty-all-9.4.47.v20220610-uber.jar

    run-jetty-run 1.3.5eclipse插件包

    run-jetty-run 1.3.5(Nightly) 在eclipse 4.5.2中安装jetty插件,然后提取plugins和features目录中的相关文件,打包做成可用link方式安装,省去更换eclipse版本时需要重新下载的问题。 安装方法为新加一个run-jetty...

    jetty-util-6.1.26-API文档-中文版.zip

    赠送jar包:jetty-util-6.1.26.jar; 赠送原API文档:jetty-util-6.1.26-javadoc.jar; 赠送源代码:jetty-util-6.1.26-sources.jar; 赠送Maven依赖信息文件:jetty-util-6.1.26.pom; 包含翻译后的API文档:jetty-...

    jetty-io-9.4.8.v20171121-API文档-中文版.zip

    赠送jar包:jetty-io-9.4.8.v20171121.jar; 赠送原API文档:jetty-io-9.4.8.v20171121-javadoc.jar; 赠送源代码:jetty-io-9.4.8.v20171121-sources.jar; 赠送Maven依赖信息文件:jetty-io-9.4.8.v20171121.pom;...

    jetty-server-8.1.8-API文档-中英对照版.zip

    赠送jar包:jetty-server-8.1.8.jar; 赠送原API文档:jetty-server-8.1.8-javadoc.jar; 赠送源代码:jetty-server-8.1.8-sources.jar; 赠送Maven依赖信息文件:jetty-server-8.1.8.pom; 包含翻译后的API文档:...

    jetty-security-9.3.19.v20170502-API文档-中英对照版.zip

    赠送jar包:jetty-security-9.3.19.v20170502.jar; 赠送原API文档:jetty-security-9.3.19.v20170502-javadoc.jar; 赠送源代码:jetty-security-9.3.19.v20170502-sources.jar; 赠送Maven依赖信息文件:jetty-...

    jetty-continuation-8.1.8.v20121106-API文档-中文版.zip

    赠送jar包:jetty-continuation-8.1.8.v20121106.jar; 赠送原API文档:jetty-continuation-8.1.8.v20121106-javadoc.jar; 赠送源代码:jetty-continuation-8.1.8.v20121106-sources.jar; 赠送Maven依赖信息文件:...

    jetty-webapp-9.3.19.v20170502-API文档-中文版.zip

    赠送jar包:jetty-webapp-9.3.19.v20170502.jar; 赠送原API文档:jetty-webapp-9.3.19.v20170502-javadoc.jar; 赠送源代码:jetty-webapp-9.3.19.v20170502-sources.jar; 赠送Maven依赖信息文件:jetty-webapp-...

    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...

Global site tag (gtag.js) - Google Analytics