`

我的第一个 Jetty 程序

 
阅读更多
参考网上的例子

在 eclipse 中新建 java 项目 jetty

下载 http://dist.codehaus.org/jetty/jetty-6.1.14/jetty-6.1.14.zip

把下载的文件中选择几个 jar 文件,拷贝到新建的java项目中

core-3.1.1.jar

jetty-6.1.14.jar

jetty-util-6.1.14.jar

jsp-2.1.jar

jsp-api-2.1.jar

servlet-api-2.5-6.1.14.jar

在 java 项目中新增文件夹 \jetty\web\WEB-INF 并且新建 web.xml 文件和 index.jsp 文件,和 StratJetty.java


StartJetty.java

package com.xjh.core;

import org.mortbay.jetty.Connector;
import org.mortbay.jetty.Server;
import org.mortbay.jetty.nio.SelectChannelConnector;
import org.mortbay.jetty.webapp.WebAppContext;

public class StartJetty {
	
	public static void main(String [] args) throws Exception {
		Server server = new Server();
		Connector connector = new SelectChannelConnector();
		//设置端口
		connector.setPort(8080);
		//设置host地址
		connector.setHost("127.0.0.1");
		server.setConnectors(new Connector[] { connector });
		//设置根路径
		WebAppContext context = new WebAppContext("web", "/web");
		server.addHandler(context);
		server.setStopAtShutdown(true);
		server.setSendServerVersion(true);
		
		//启动服务
		server.start();
		server.join();
	}

}


index.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>xiejiaohui's first Jetty jsp</title>
</head>
<body>
<% request.setAttribute("name", "xiejiaohui"); %>
<% System.out.println("My name is: " + request.getAttribute("name")); %>
<% response.getWriter().print(request.getAttribute("name") + "    "); %>
<% response.getWriter().print(new java.util.Date()); %>
</body>
</html>


web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
</web-app>


然后在 eclipse 中运行 StartJetty.java

运行的结果为:

2013-03-08 22:06:27.480::INFO:  Logging to STDERR via org.mortbay.log.StdErrLog
2013-03-08 22:06:27.524::INFO:  jetty-6.1.14
2013-03-08 22:06:27.841::INFO:  Started SelectChannelConnector@127.0.0.1:8080


在 IE 浏览器中访问默认 index.jsp

页面上显示

xiejiaohui Fri Mar 08 22:07:51 CST 2013

控制台输出

2013-03-08 22:06:27.480::INFO:  Logging to STDERR via org.mortbay.log.StdErrLog
2013-03-08 22:06:27.524::INFO:  jetty-6.1.14
2013-03-08 22:06:27.841::INFO:  Started SelectChannelConnector@127.0.0.1:8080
My name is: xiejiaohui
分享到:
评论

相关推荐

    zrlog个人博客程序 v2.1.1

    zrlog个人博客程序是一个基于JFinal进行开发的jsp个人博客软件,包含了以下功能:1.实现了的日志,分类,评论,的管理2.支持插件模式开发3.后台动态变更前台主题4.支持第三方评论插件5.提供 editormd 主流的富文本...

    jetty.project:EclipseJetty:registered:-Web容器和客户端-支持HTTP2,HTTP1.1,HTTP1.0,websocket,servlet等

    随着Maven下载所有依赖项,第一次构建可能会比预期花费更长的时间。 构建测试进行了大量的压力测试,在某些机器上,必须将文件描述符限制设置为大于2048,才能使测试成功通过。 通过使用mvn cle

    swagger-demo

    我将在git存储库中的每个步骤中进行检查Gradle构建文件我的第一个任务是就地获得一个简单的Gradle构建文件。 在,我对build.gradle文件有了一个很好的入门。 我添加样板Java构建/测试的东西,我的build.gradle看...

    android_hdr:适用于安卓的 HDR 应用程序

    这个项目是一个Android手机的HDR应用程序。 要加载此代码,您需要: 蚀 run-jetty-run eclipse 插件 android eclipse 插件 在 Eclipse 中有两个项目要加载: HDR,Android 手机应用程序。 仅限安卓 2.2! HDR ...

    SamoApp:综合酒吧管理应用程序

    这将带您进入Waiter Frontend,这是该项目的第一个也是唯一一个已实施的部分(当前)。贡献该项目旨在使用许多不同的技术(例如Maven,Jetty,HSQLDB,JSON,HTML等),因为我正在学习如何以正确的方式对其进行管理...

    用Maven构建JavaWeb开发环境(Jetty容器)之一

    以往每个项目独立管理依赖,使得每个项目打包后都是巨大无比的,而真正的程序文件却没有多少,Maven接管第三方依赖后,我们的应用就只有程序文件了,没有了jar包轻巧很多,而统一的管理,使得我们可以随意获取jar...

    Metrics:捕获 JVM 和应用程序级指标-开源

    Metrics 是一个 Java 库,可让您深入了解代码在生产中的作用。 Metrics 提供了一个强大的工具包,用于衡量... 例如,如果您的应用程序有一个由第三方库维护的值,您可以通过注册一个返回该值的 Gauge 实例轻松公开它。

    Beigesoft Enterprise Information System:基于 JEE 的会计网络应用程序。-开源

    这是 Beige Accounting All In One 继任者的第一个版本。 主要目标已成功实现,它在智能手机等弱设备上的运行速度明显快于其前身。 它的工作原理是: * 用于标准 Java(Windows、Mac、Nix...)的独立 A-Jetty 网络...

    agorava-socializer:使用Agorava构建的示例应用程序

    您所要做的就是输入命令mvn -Prun 然后等待那个maven下载所有需要的东西(可能是第一次),当Jetty启动时,只需将浏览器指向http://localhost:8080享受。建造您可以使用以下命令构建Agorava mvn clean install 它将...

    大数据面试题(1).docx

    下列哪个程序通常与 NameNode 在一个节点启动? a)SecondaryNameNode b)DataNode c)TaskTracker d)Jobtracker 4. Hadoop 作者 a)Martin Fowler 大数据面试题(1)全文共15页,当前为第1页。 b)Kent Beck 大数据面试题...

    spring-cxf-jaxrs-dual-api

    一个示例 Spring、CXF、JAX-RS 应用程序,它在不同的 CXFServlet 上加载了两个 API。 一公一私。 主要特征 弹簧注射 JAX-RS CXF 双API 入门 要启动应用程序,请运行以下命令: jetty:run 将有 2 个 API 可用: ...

    Electronic-Document-Management-System:使用 Spring 和 Hibernate 进行 EDMS 软件开发

    在开发模式下运行(使用嵌入式 HSQL 数据库): 使用嵌入式 Jetty 服务器运行此应用程序: mvn -P dev jetty:run -Dspring.profiles.active="dev" 这将在端口 8080 上启动嵌入式 Jetty 服务器,您可以在此处访问您的...

    naushad-sbx-test1

    Salesforce Canvas 是一个混搭框架,用于在 Salesforce 中使用第三方应用程序。 它的目标是在 UI 级别而不是 API 级别连接应用程序。 Platform Connect 将为第三方应用程序提供 JavaScript SDK 和 Java 类,以便他们...

    Maven权威指南 很精典的学习教程,比ANT更好用

    构建一个打包好的命令行应用程序 5. 一个简单的Web应用 5.1. 介绍 5.1.1. 下载本章样例 5.2. 定义这个简单的Web应用 5.3. 创建这个简单的Web应用 5.4. 配置Jetty插件 5.5. 添加一个简单的Servlet 5.6. ...

    大数据面试题.docx

    下列哪个程序通常与 NameNode 在一个节点启动? a)SecondaryNameNode b)DataNode c)TaskTracker d)Jobtracker 大数据面试题全文共16页,当前为第1页。4. Hadoop 作者 大数据面试题全文共16页,当前为第1页。 a)...

    大数据面试题-.docx

    下列哪个程序通常与 NameNode 在一个节点启动? a)SecondaryNameNode b)DataNode c)TaskTracker d)Jobtracker 4. Hadoop 作者 大数据面试题-全文共15页,当前为第1页。 a)Martin Fowler 大数据面试题-全文共15页,...

    demorunthroughvivek

    Salesforce Canvas是一个用于在Salesforce中使用第三方应用程序的混搭框架。 其目标是在UI级别而不是API级别连接应用程序。 Platform Connect将为第三方应用程序提供JavaScript SDK和Java类,以便它们可以无缝集成...

    herokudemofromsfdc:SFDC到HEROKU

    Salesforce Canvas是一个用于在Salesforce中使用第三方应用程序的混搭框架。 其目标是在UI级别而不是API级别连接应用程序。 Platform Connect将为第三方应用程序提供JavaScript SDK和Java类,以便它们可以无缝集成...

    forceheroku2:forceherokujava

    SFDC Canvas Java模板Salesforce Canvas是一个用于在Salesforce中使用第三方应用程序的混搭框架。 其目标是在UI级别而不是API级别连接应用程序。 Platform Connect将为第三方应用程序提供JavaScript SDK和Java类,...

Global site tag (gtag.js) - Google Analytics