zoukankan      html  css  js  c++  java
  • centos 5.8 x64Jetty的安装以及项目部署配置

    链接地址: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


    好了,这样就完成了!

    如果一件事情你觉得难的完不成,你可以把它分为若干步,并不断寻找合适的方法。最后你发现你会是个超人。不要给自己找麻烦,但遇到麻烦绝不怕,更不要退缩。 电工查找电路不通点的最快方法是:分段诊断排除,快速定位。你有什么启示吗? 求知若饥,虚心若愚。 当你对一个事情掌控不足的时候,你需要做的就是“梳理”,并制定相应的规章制度,并使资源各司其职。
  • 相关阅读:
    C语言I博客作业09
    请看这里
    C++ 面向对象学习笔记[1]
    graphviz的使用
    KDE安装后的一些随笔
    近期内容整理
    链表
    理解C++ lvalue与rvalue
    再看“笕实智慧校园”——作品的复盘[1]
    无题
  • 原文地址:https://www.cnblogs.com/wvqusrtg/p/5130540.html
Copyright © 2011-2022 走看看