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
好了,这样就完成了!
centos 5.8 x64Jetty的安装以及项目部署配置的更多相关文章
- Linux下tomcat的安装与项目部署
最近在linux下安装了jdk,为了圆我以前的心愿,把tomcat也安装了,顺便部署个项目,也算是小又成就感 废话不说了,直接上过程 一.下载安装对应的jdk,并配置Java环境. 有关jdk的安装请 ...
- Swift - 项目部署配置(支持的系统,设备和状态条样式等)
点击项目,在General选项卡中的“Deployment Info”栏目中可以进行一些项目的配置 Deployment Target:支持的iOS SDK的最低版本 Device:所支持的设备(iP ...
- tomcat安装与项目部署
1.tomcat依赖:jdk jre,环境变量配置 java_home jre_home 2.tomcat安装: 下载:http://tomcat.apache.org/ download ...
- 微服务架构 ------ DockerCompose从安装到项目部署
DockerCompose的目的:简化Docker的启动和停止流程,以及编排Docker启动服务与服务之间的关系 DockerCompose的安装:curl -L https://get.daoclo ...
- centos 6.3 64位安装php5.5及配置tengine
PHP 用到的工具包: yum install gd-devel libjpeg-devel libpng-devel freetype-devel libxml2-devel curl-devel ...
- CentOS 7.0 使用 yum 安装 MariaDB 及 简单配置
1.安装MariaDB 安装命令 yum -y install MariaDB-server MariaDB-client 安装完成MariaDB,首先启动MariaDB 设置开机启动 接下来进行Ma ...
- CentOS7.5下安装nginx --项目部署
1.安装ngnix一些依赖包 [root@VM_39_157_centos ~]# yum -y install gcc gcc-c++ openssl-devel pcre-devel httpd- ...
- docker的安装及项目部署
Making Docker and Deployment Process Step: set up your docker environment build a image of activeMQ ...
- Centos + docker,Ubuntu + docker介绍安装及详细使用
docker笔记 常用命令 设置docker开机自启:sudo chkconfig docker on 查所有镜像: docker images 删除某个镜像:docker rmi CONTAINER ...
随机推荐
- 每天一个小算法(4)----在O(1)时间删除指定结点
O(1)时间内删除结点的思路只能是复制该结点下一个结点的数据,然后删除该结点的下一个结点,来等效删除此结点. 需要注意的地方是删除头结点和尾结点的处理. #include <stdio.h> ...
- 在实体对象中访问导航属性里的属性值出现异常“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 ...
- 依赖注入(DI)和控制反转(IOC)
依赖注入(DI)和控制反转(IOC) 0X1 什么是依赖注入 依赖注入(Dependency Injection),是这样一个过程:某客户类只依赖于服务类的一个接口,而不依赖于具体服务类,所以客户类只 ...
- MySQL 分区表各个分区的行数
分区的信息是记录在information_schema.partitions 这个表里的.它不能直接定位行所在的分区,但它可查到每个分区中有多少行. 例子: select partition_name ...
- Android Studio 中快速提取方法
在开发过程中,有时在一个方法内部写了过多的代码,然后想要把一些代码提取出来封装下,分离开放在一个单独的方法里,可能你的做法是直接选中后Ctrl + 叉,或者 Ctrl + C,但在Android St ...
- 男装电子零售商East Dane即将面世_衣装_YOKA时尚网
男装电子零售商East Dane即将面世_衣装_YOKA时尚网 男装电子零售商East Dane即将面世
- MSSTDFMT.dll系统文件(附2种MSSTDFMT.dll 注册方法)-系统增强
MSSTDFMT.dll系统文件(附2种MSSTDFMT.dll 注册方法)-系统增强 msstdfmt.dll是微软标准数据格式对象相关动态链接库文件. msstdfmt.dll里面包含了定义好函数 ...
- qt4.8.4安装以及64位程序编译方法
本文将使用简单的几个步骤说明在vc2008和64位的操作系统下如何编译安装x64Qt软件 首先必须保证你所使用的系统是64bit的操作系统,本次我们使用的系统是windows7 professiona ...
- docker基础入门之二
一.docker文件系统: linuxFS包括boot file system 和 root file system boot file system (bootfs),包含bootloader和ke ...
- 如何写出专业级OOP程序-----文档注释
由于时间的限制就写一些通用的注释啦> @author 姓名 这个标记将产生一个作者条目,可以使用多个@author注释,每个对应一个作者. @version 文本 这个标记产生版本条目,对当前版 ...