链接地址:http://blog.csdn.net/shuixin536/article/details/9049821

安装环境 centos 5.8 x64

安装前须知

首先在安装Jetty之前要确定你的本机是否安装了java。因为Jetty的运行需要由java启动,所以在此之前请先安装java。
安装java请见同级java环境安装。

1.下载:

wget http://dist.codehaus.org/jetty/jetty-6.1.14/jetty-6.1.14.zip

unzip jetty-6.1.14.zip

2.配置JETTY_HOME

vim ~/.bashrc

JETTY_HOME=/home/inter12/installs/dev/jetty
JETTY_CONF=$JETTY_HOME/etc
JETTY_LOGS=$JETTY_HOME/logs

export JETTY_HOME
export JETTY_CONF
export JETTY_LOGS

3.就可以启动了

cd $JETTY_HOME/bin

sh jetty.sh start //启动

sh jetty.sh start //查看是否正常启动

第二种启动方式:

cd $JETTY_HOME/

java -jar start.jar etc/jetty.xml

其他常见的命令有:start|stop|run|restart|check|supervise

Ctrl+c停止运行。

默认端口是8080,具体配置后面再说。

通过浏览器来看下:http://127.0.0.1:8080/ 就可以看到 jetty默认的欢迎页面了! 很简单,类似于 tomcat

首页中提供了一些demo和一些常用说明,例如如何配置JNDI等信息!

4.几个重要的目录

$JETTY_HOME/etc 配置文件 ---- tomcat 下的conf目录

4.1 /etc/jetty.xml 这个为比较重要的配置文件。具体打开文件我们可以看:

1)连接器 对外暴露的服务,其中包含了端口,最大等待时间等信息。提供了两种方式,默认是NIO的处理,若是不行的话,就去除下面的注释

,启用性能稍微差点的BIO,目录下存在一个jetty-bio.xml目录,只需要使用这个即可!

<Call name="addConnector">

<Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set>

2)具体后端的处理类,connector负责通信调度,这个负责处理!

<Set name="handler">

<New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection">

3)配置上下文的路径,就是我们下面将会提到了 contexts目录的位置!

<Call name="addLifeCycle">

<Arg>

<New class="org.mortbay.jetty.deployer.ContextDeployer">

<Set name="contexts"><Ref id="Contexts"/></Set>

<Set name="configurationDir"><SystemProperty name="jetty.home" default="."/>/contexts</Set>

4)默认配置的webapps 目录, 若是想自己部署的话,需要修改这个值

<Call name="addLifeCycle">

<Arg>

<New class="org.mortbay.jetty.deployer.WebAppDeployer">

<Set name="contexts"><Ref id="Contexts"/></Set>

<Set name="webAppDir"><SystemProperty name="jetty.home" default="."/>/webapps</Set>

5)请求日志的存放地址

<Ref id="RequestLog">

<Set name="requestLog">

上面就是jetty.xml中几个重要的配置了!

-----------------------------------------------------------------------------------------------------------------------

4.2 etc/webdefault.xml 这个就是web.xml的默认实现 ! 也就是说若过你应用中没有web.xml的话,也可以启动! 前提是使用

bin/jetty.sh start

4.3 其他杂类 jetty-jaas.xml jetty-jmx.xml jetty-plus.xml jetty-ssl.xml jetty-ajp.xml 这些配置文件我想看名字大家都应该知道了

-----------------------------------------------------------------------------------------------------------------------

$JETTY_HOME/webapps 部署目录 ---- tomcat 下的webapps

$JETTY_HOME/lib 包存放路径 ---- tomcat 下的lib目录

$JETTY_HOME/bin 配置脚本 最重要的就是jetty.sh 这个脚本了, start|stop|run|restart|check|supervise

$JETTY_HOME/contexts webapp的上下文路径,这里可以将我们需要部署的WAR放到非 webapps目录下! 如果非要对应的话就是

tomcat/service.xml中的<context/>这个配置项

$JETTY_HOME/logs 这个目录我想不说大家也应该知道

$JETTY_HOME/extras 因为 jetty是嵌入式的容器,所以能很容易的和其他框架或是容器结合(spring,jboss等!),具体就可看这个目录下的

信息!

一般来说,具体到现实的应用中,我们不会去修改 jetty默认的一些配置项,都是通过替换代替的方式来完成配置文件的更换,具体就是4.1

所提到的几个配置文件!

-----------------------------------------------------------------------------------------------------------------------

内置容器

上面说的都是怎么利用JETTY作为WEB容器,其实我们还可以跟简单的方式将应用本身作为WEB容器,只需要继承JETTY的CORE包即可! 下面就

用代码来实例下吧!

1.mvn archetype:generate 创建一个项目 选择231这一个 struts项目

2.在pom.xml中添加包依赖

<dependency>
   <groupId>org.mortbay.jetty</groupId>
   <artifactId>jetty</artifactId>
   <version>6.1H.10</version>
 </dependency>3.mvn eclipse:eclipse -DdownloadSources=true 刷新包 若是你的网速不行的话那么就把后面的 -

DdownloadSources去掉,不要下载源码!

4.那就敲代码吧

package com.inter12.xzm.jetty;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.mortbay.jetty.Server;
import org.mortbay.jetty.servlet.Context;
import org.mortbay.jetty.servlet.ServletHolder;

public class MineJettyServer {

public static void main(String[] args) throws Exception {
        MineJettyServer mineJettyServer = new MineJettyServer();
        mineJettyServer.start();
    }

private void start() throws Exception {
        // 1.启动一个SERVER 并指定端口
        Server server = new Server(8080);

// 2.设置应用的跟路径为 / 你也可以设置成自己需要的应用名字。例如我这个的应用是/jTest
        // Context context = new Context(server, "/jTest", Context.SESSIONS);
        Context context = new Context(server, "/", Context.SESSIONS);

// 3.添加servlet. OKServlet就是我们具体处理业务的类!
        context.addServlet(new ServletHolder(new OKServlet()), "/ok.jsp");

// 4.启动。收工,这样就搞定了内置 servlet容器!
        server.start();
    }

class OKServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

@Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

PrintWriter writer = resp.getWriter();

writer.write("success,welcome to ok.jsp!");
            writer.flush();
            writer.close();
        }

@Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            System.out.println("do post method enter!");
        }

}
}
访问地址:http://127.0.0.1:8080/ok.jsp 这样就可以看到输出的结果了!

若是根路径设置为 /jTest的话,路径为:http://127.0.0.1:8080/jTest/ok.jsp

好了,这样就完成了!

centos 5.8 x64Jetty的安装以及项目部署配置的更多相关文章

  1. Linux下tomcat的安装与项目部署

    最近在linux下安装了jdk,为了圆我以前的心愿,把tomcat也安装了,顺便部署个项目,也算是小又成就感 废话不说了,直接上过程 一.下载安装对应的jdk,并配置Java环境. 有关jdk的安装请 ...

  2. Swift - 项目部署配置(支持的系统,设备和状态条样式等)

    点击项目,在General选项卡中的“Deployment Info”栏目中可以进行一些项目的配置 Deployment Target:支持的iOS SDK的最低版本 Device:所支持的设备(iP ...

  3. tomcat安装与项目部署

    1.tomcat依赖:jdk jre,环境变量配置  java_home  jre_home 2.tomcat安装: 下载:http://tomcat.apache.org/    download ...

  4. 微服务架构 ------ DockerCompose从安装到项目部署

    DockerCompose的目的:简化Docker的启动和停止流程,以及编排Docker启动服务与服务之间的关系 DockerCompose的安装:curl -L https://get.daoclo ...

  5. centos 6.3 64位安装php5.5及配置tengine

    PHP 用到的工具包: yum install gd-devel libjpeg-devel libpng-devel freetype-devel libxml2-devel curl-devel ...

  6. CentOS 7.0 使用 yum 安装 MariaDB 及 简单配置

    1.安装MariaDB 安装命令 yum -y install MariaDB-server MariaDB-client 安装完成MariaDB,首先启动MariaDB 设置开机启动 接下来进行Ma ...

  7. CentOS7.5下安装nginx --项目部署

    1.安装ngnix一些依赖包 [root@VM_39_157_centos ~]# yum -y install gcc gcc-c++ openssl-devel pcre-devel httpd- ...

  8. docker的安装及项目部署

    Making Docker and Deployment Process Step: set up your docker environment build a image of activeMQ ...

  9. Centos + docker,Ubuntu + docker介绍安装及详细使用

    docker笔记 常用命令 设置docker开机自启:sudo chkconfig docker on 查所有镜像: docker images 删除某个镜像:docker rmi CONTAINER ...

随机推荐

  1. 每天一个小算法(4)----在O(1)时间删除指定结点

    O(1)时间内删除结点的思路只能是复制该结点下一个结点的数据,然后删除该结点的下一个结点,来等效删除此结点. 需要注意的地方是删除头结点和尾结点的处理. #include <stdio.h> ...

  2. 在实体对象中访问导航属性里的属性值出现异常“There is already an open DataReader associated with this Command which must be closed first”

    在实体对象中访问导航属性里的属性值出现异常“There is already an open DataReader associated with this Command which must be ...

  3. 依赖注入(DI)和控制反转(IOC)

    依赖注入(DI)和控制反转(IOC) 0X1 什么是依赖注入 依赖注入(Dependency Injection),是这样一个过程:某客户类只依赖于服务类的一个接口,而不依赖于具体服务类,所以客户类只 ...

  4. MySQL 分区表各个分区的行数

    分区的信息是记录在information_schema.partitions 这个表里的.它不能直接定位行所在的分区,但它可查到每个分区中有多少行. 例子: select partition_name ...

  5. Android Studio 中快速提取方法

    在开发过程中,有时在一个方法内部写了过多的代码,然后想要把一些代码提取出来封装下,分离开放在一个单独的方法里,可能你的做法是直接选中后Ctrl + 叉,或者 Ctrl + C,但在Android St ...

  6. 男装电子零售商East Dane即将面世_衣装_YOKA时尚网

    男装电子零售商East Dane即将面世_衣装_YOKA时尚网 男装电子零售商East Dane即将面世

  7. MSSTDFMT.dll系统文件(附2种MSSTDFMT.dll 注册方法)-系统增强

    MSSTDFMT.dll系统文件(附2种MSSTDFMT.dll 注册方法)-系统增强 msstdfmt.dll是微软标准数据格式对象相关动态链接库文件. msstdfmt.dll里面包含了定义好函数 ...

  8. qt4.8.4安装以及64位程序编译方法

    本文将使用简单的几个步骤说明在vc2008和64位的操作系统下如何编译安装x64Qt软件 首先必须保证你所使用的系统是64bit的操作系统,本次我们使用的系统是windows7 professiona ...

  9. docker基础入门之二

    一.docker文件系统: linuxFS包括boot file system 和 root file system boot file system (bootfs),包含bootloader和ke ...

  10. 如何写出专业级OOP程序-----文档注释

    由于时间的限制就写一些通用的注释啦> @author 姓名 这个标记将产生一个作者条目,可以使用多个@author注释,每个对应一个作者. @version 文本 这个标记产生版本条目,对当前版 ...