Jetty 简单使用
Jetty与Tomcat类似,也是一种Servlet引擎,可以用来运行Java Web项目。
其常被嵌入到项目中,以便于开发、测试,以及Demo等项目的运行。
1、作为插件——作为开发、测试时项目运行的容器
在Java Web APP开发中,为了测试功能是否如预期,通常需要编译、打包、部署三步骤,比较麻烦;虽开发时可在本地装Tomcat并在Eclipse中加以配置从而只需打包、运行两步,但若在其他机器开发又需要安装Tomcat,也比较麻烦。若能将Jetty和项目关联在一起就好了,借助Jetty我们可以达到这个目的。
方法:在Java Web项目的pom.xml中引入Jetty插件(如下),运行 mvn jetty:run 后访问http://localhost:8080
<build>
<plugins>
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.0.2.v20130417</version>
</plugin>
</plugins>
</build>
Normally, testing a web application involves compiling Java sources, creating a WAR and deploying it to a web container. Using the Jetty Plugin enables you to quickly test your web application by skipping the last two steps. By default the Jetty Plugin scans target/classes for any changes in your Java sources and src/main/webapp for changes to your web sources. The Jetty Plugin will automatically reload the modified classes and web sources.
2、作为依赖——嵌入在Java应用程序中,在Java程序中调用Jetty
依赖:
<!-- 已包含Servlet等需要用到的组件 -->
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-webapp</artifactId>
<version>7.2.0.v20101020</version>
</dependency> <!-- 添加JSP依赖 -->
<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jsp-2.1-glassfish</artifactId>
<version>2.1.v20100127</version>
</dependency>
静态Web:
public class Main_StaticWeb {
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
Server server = new Server(8080);
ResourceHandler resourceHandler = new ResourceHandler();
resourceHandler.setResourceBase("src/main/resources/webcontent/static");
//resourceHandler.setDirectoriesListed(true);
server.setHandler(resourceHandler);
server.start();
}
}
动态Web:
public class Main_DynamicWeb {
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
Server server = new Server(8080);
WebAppContext webapp = new WebAppContext();
webapp.setWar("src/main/resources/webcontent/dynamic/");
//webapp.setWar("Cov.war");
server.setHandler(webapp);
server.start();
server.join();
}
}
执行main方法后访问 http://localhost:8080 即可
Jetty 简单使用的更多相关文章
- Jetty使用攻略
jetty作为一款小型的web容器用处很大,因为其小巧强大,经常作为嵌入式的组件处理http交互. Jetty 作为一个独立的 Servlet 引擎可以独立提供 Web 服务,但是它也可以与其他 We ...
- 将jetty嵌入到应用中的简单案例
前面说过jetty最广泛的应用是可以方便的嵌入到应用程序中,而不是作为应用服务器,下面就用最简单的demo来演示一个最简单的应用 1.下载并导入依赖 首先应该建立一个普通的java项目,然后把依赖包导 ...
- Intellij IDEA +MAVEN+Jetty实现SpringMVC简单查询功能
利用 Intellij IDEA +MAVEN+Jetty实现SpringMVC读取数据库数据并显示在页面上的简单功能 1 新建maven项目,配置pom.xml <project xmlns= ...
- java web: eclipse & maven & jetty & struts2 & mysql = 简单登录页面
第一次接触java web开发,花费了一天半的时间,写了个简单的登录页面,以此文为记. 开发工具 Eclipse Luna Release (4.4.0) 已集成maven,maven目前的体会就是管 ...
- 通过Jetty搭建一个简单的Servlet运行环境
最近在做一些简单的Servlet开发的时候,感觉每次调试的时候都要发布到tomcat上很麻烦,把程序共享给同事也很麻烦,需要帮他设置本地的tomcat环境. 在网上找了找其他的Servlet运行环境, ...
- 一.配置简单的嵌入式tomcat和jetty
我们写了一个web应用,打成war包后,就需要找一个server来部署.对于我们的实际应用,我们基本没必要自己再写一个嵌入式的server.接下来两篇文章只是以钻研的心态来学习一下嵌入式tomcat和 ...
- idea+Spring+Mybatis+jersey+jetty构建一个简单的web项目
一.先使用idea创建一个maven项目. 二.引入jar包,修改pom.xml <dependencies> <dependency> <groupId>org. ...
- Maven开发环境的搭建,含jetty调试[简单明了]
之前的一片老文,搬过来. 1. Maven的开发环境需要哪些部件a) Maven.去http://maven.apache.org/ 下载.将其bin目录加入进系统PATH.测试方法:用命令mvn – ...
- elasticsearch使用jetty进行简单的权限控制
默认elasticsearch是使用netty作为http的容器,由于netty并没有权限模块,所以默认es没有任何的权限控制,直接通过http就可以进行任何操作,除非把http禁用.但如果你使用el ...
随机推荐
- Qt做动画旋转旋转图片
今天看到百度首页的音乐播放有个图片可以旋转,感觉很酷就用qt做了一个类似的,关键时刻还是要发挥数学功底,静下心来,写一写,画一画,编程对数学分析能力要求还是不小的,以后要经常锻炼数学分析能力啊! Wi ...
- 手把手windows64位配置安装python2.7
这几天公司要用到python的一些算法,让我调研一番,之前对Python一次没接触的我在安装配置环境的时候由于版本的问题,折腾了好久,这里简单介绍一下我的安装方法,需要安装pyhton的朋友可以不再向 ...
- python 批量更改文件名
工作中遇到一种情况,就是市场部那边经常发过来一些apk的包 但是要求更改名字,文件太多了,没办法,只有想办法了,还好命名都是有规则的 比如说 YZLoan-gdtyyb-V2.23.apk------ ...
- [转]看懂ExtJS的API
原文地址:http://www.cnblogs.com/youring2/archive/2013/03/05/2944004.html ExtJS的功能很强大,相应的其API也很庞大,并且看起来并不 ...
- linux 设置日志编码
打开linux的设置面板 在Appearance选项->Character encoding 设置为UTF-8
- ios审核要注意的地方(转)
磨刀不误砍柴工.作为手机应用开发者,你需要向应用商店提交应用审核,迅速通过审核可以让你抢占先机.对苹果iOS应用开发者来说尤其如此.苹果应用商店的审核近乎吹毛求疵,下面这些清单可以让你知道苹果会在哪些 ...
- Struts2拦截器模拟
前言: 接触Struts2已经有一段时间,Student核心内容就是通过拦截器对接Action,实现View层的控制跳转.本文根据自身理解对Struts2进行一个Java实例的模拟,方便大家理解! 示 ...
- 项目实例——多表关联查询判断A的字段是否在B中,在显示该字段值,不在显示空;B的字段是否在C中,在显示该字段值,不在显示空。
1.需求: (1)三张表A.B.C 三个表id相同,如果A表中的name在B表中的bname中显示aname值,否则显示空:如果C表中的addr在B表中的tel显示addr,否则显示空 2.实现方式 ...
- bzoj 3196 树套树模板
然而我还是在继续刷水题... 终于解开了区间第k大的心结... 比较裸的线段树套平衡树,比较不好想的是求区间第k大时需要二分一下答案,然后问题就转化为了第一个操作.复杂度nlog3n.跑的比较慢... ...
- python-汉诺塔递归实现
摘录自廖雪峰老师教程下的评论,个人备忘,脑细胞已死光 def move(from,to): #将盘子从from移动到to,动画效果需要脑补 print(from,'->',to) def han ...