`
ipjmc
  • 浏览: 707616 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

创建一个简单的Server(嵌入Jetty学习一)

阅读更多

    Jetty的口号是:“不要把你的程序放到Jetty里,而是把Jetty部署到你的程序里”,也就是说可以把war包放到Jetty里(就像tomcat一样),也可以把Jetty当成程序的一个HTTP模块。

    嵌入Jetty的使用方法是这样的,可以在maven中添加depency,然后就可以在Java程序中使用Jetty创建Web Server了,目前最新的Jetty版本是Jetty 9。

 

                <!-- jetty dependecies -->
		<dependency>
			<groupId>org.eclipse.jetty</groupId>
			<artifactId>jetty-server</artifactId>
			<version>9.0.0.v20130308</version>
		</dependency>
		
		<dependency>
			<groupId>org.eclipse.jetty</groupId>
			<artifactId>jetty-webapp</artifactId>
			<version>9.0.0.v20130308</version>
		</dependency>
		
		<dependency>
			<groupId>org.eclipse.jetty</groupId>
			<artifactId>jetty-continuation</artifactId>
			<version>9.0.0.v20130308</version>
		</dependency>
            
		<dependency>
			<groupId>org.eclipse.jetty</groupId>
			<artifactId>jetty-jsp</artifactId>
			<version>9.0.0.v20130308</version>
		</dependency>

 

下面是一个最简单的示例代码:

 

可以参考Jetty源码工程里面的使用示例: http://git.eclipse.org/c/jetty/org.eclipse.jetty.project.git/tree/examples/embedded/src/main/java/org/eclipse/jetty/embedded

 

也可以参考Jetty的Wiki,不过只有Jetty 8以前的:

http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty

 

创建一个Handler

 

public class HelloHandler extends AbstractHandler
{
    public void handle(String target,Request baseRequest,HttpServletRequest request,HttpServletResponse response) 
        throws IOException, ServletException
    {
        response.setContentType("text/html;charset=utf-8");
        response.setStatus(HttpServletResponse.SC_OK);
        baseRequest.setHandled(true);
        response.getWriter().println("<h1>Hello World</h1>");
    }
}

 

启动Jetty Server,并设置Handler

public static void main(String[] args) throws Exception
{
    Server server = new Server(8080);
    server.setHandler(new HelloHandler());
 
    server.start();
    server.join();
}
9
3
分享到:
评论
2 楼 ipjmc 2013-04-02  
jayyunfei 写道
学习了,这个是不是用来测试很方便?

这个好像没什么用,就像helloworld
1 楼 jayyunfei 2013-04-02  
学习了,这个是不是用来测试很方便?

相关推荐

    Jetty入门学习资料

    开发者只需创建一个`Server`对象,指定端口,添加Handler,然后通过配置文件启动服务器,如以下代码片段所示: ```java public class JettyServer { public static void main(String[] args) { Server server = ...

    jetty嵌入Web编程多种实现方式案例

    使用Jetty Server API是最基础的嵌入方式,通过创建Server对象,配置Connector(连接器)来监听端口,然后添加Handler(处理器)来处理请求。例如,可以创建一个简单的HTTP服务器,监听8080端口: ```java ...

    jetty嵌入项目实战

    - 嵌入Jetty意味着将Jetty服务器作为应用程序的一部分来运行,无需独立的服务器进程。 - 使用`org.eclipse.jetty.server.Server`类创建服务器实例,并配置监听端口、处理请求的Handler等。 - 配置Servlet容器,...

    jetty6.1.4 嵌入样例

    Jetty 6.1.4 是一个开源的Java Web服务器和Servlet容器,它以其轻量级、高效和可嵌入性而闻名。这个版本的Jetty发布于2009年,是Jetty系列的一个重要里程碑,提供了对Servlet 2.5规范的支持。在本文中,我们将深入...

    Jetty内嵌服务器实例

    2. **内嵌Jetty的实现**:学习如何通过Java代码创建并启动一个内嵌的Jetty服务器,这通常涉及导入相关的Jetty库,创建Server对象,配置Connector(如HTTP或HTTPS)和Handler(如WebAppContext)。 3. **Servlet容器...

    实战 Jetty--让你快速速学会jetty

    以下是一个简单的示例代码片段,展示了如何创建一个监听8080端口的Server对象,设置一个默认Handler,并使用XML配置文件(如`jetty.xml`)初始化和启动服务器: ```java public class JettyServer { public static...

    jetty所需jar包

    通常,你可以创建一个lib目录,将这些jar包放入其中,然后通过java -cp "lib/*" org.eclipse.jetty.server.Server命令启动服务器。当然,具体的命令可能根据你的项目配置有所不同。 另外,Jetty也支持通过maven或...

    jetty8+ 内嵌式启动运行demo

    以下是一个简单的内嵌Jetty启动示例: ```java import org.eclipse.jetty.server.Server; import org.eclipse.jetty.webapp.WebAppContext; public class JettyEmbeddedDemo { public static void main(String[] ...

    jetty6 嵌入到 javaproject中

    在Java代码中,创建一个`Server`实例,并配置必要的组件,如`Connector`(用于网络通信)和`Handler`(处理HTTP请求)。下面是一个简单的示例: ```java import org.mortbay.jetty.Server; import org.mortbay....

    利用Jetty服务器开发web应用例程

    在这个例子中,我们创建了一个Jetty服务器,监听8080端口,并配置了一个Servlet上下文。`ServletHolder`用于注册我们的`HelloServlet`,并指定其处理所有URL(`"/*"`)。如果需要部署其他Servlet,只需重复`...

    HelloWorld之jetty运行

    要搭建一个简单的Jetty环境,首先需要创建一个Java工程,并将必要的依赖库导入。在提供的信息中,包含了几个关键的JAR文件,例如jetty-6.1.15.rc3.jar和servlet-api-2.5-20081211.jar等。这些库文件是运行Jetty和...

    Jetty源码分析.pdf

    - **静态页面Web服务**:通过简单的几行代码即可创建一个提供静态页面的Web服务。 ```java HttpServer server = new HttpServer(); // 创建一个新的HttpServer SocketListener listener = new SocketListener();...

    Jersey+Jetty框架简单搭建(包含文件上传下载)

    2. **创建 Maven 项目**:使用 IDE(如 IntelliJ IDEA 或 Eclipse)创建一个新的 Maven 项目,或者手动创建一个符合 Maven 结构的目录结构。 3. **添加依赖**:在 `pom.xml` 文件中,添加 Jersey 和 Jetty 的依赖。...

    jetty 8 嵌入web 及Jsoup测试

    - 创建一个简单的Servlet,处理GET请求并返回HTML。 - 使用Jsoup发送请求到这个Servlet,然后解析返回的HTML,验证Servlet是否正确工作。 - 在测试类中,编写JUnit测试用例,结合Jsoup检查Servlet的响应。 总结...

    jetty.project-jetty-9.4.35.v20201120.rar

    Jetty作为一个Servlet容器,提供了快速、稳定且可嵌入的特性,开发者可以直接将Jetty服务器与应用程序打包在一起,无需额外的服务器部署步骤。 Jetty 9.4.35是该系列的一个稳定版本,修复了之前版本的一些已知问题...

    Jetty插件_eclipse

    2. **创建Links文件夹**:在Eclipse的安装目录下,找到`plugins`或`dropins`文件夹(取决于你的Eclipse版本),然后创建一个新的文件夹,命名为`jetty_links`。 3. **创建Link文件**:在`jetty_links`文件夹中,...

    jetty6 嵌入式使用

    4. **配置web.xml**:虽然在嵌入式使用中不是必需的,但可以创建一个`web.xml`文件来配置Servlet,这有助于在其他非嵌入式环境中迁移应用。 5. **运行应用**:在Eclipse中运行`JettyStarter`类,Jetty服务器将在...

    jetty-6.1.9 jspweb 服务器

    Jetty 是一个开源的servlet容器,它为基于Java的web内容,例如JSP和servlet提供运行环境。Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布。开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立...

    Jetty权威指南.pdf

    Jetty是一个完全由Java编写的高性能HTTP服务器及servlet容器,它不仅能够作为一个独立的服务运行,还具备强大的可嵌入性。Jetty的设计模块化、组件化,能够很好地集成到其他应用中。它支持最新的HTTP标准和技术,如...

    JAVA里使用Jetty作为轻量级嵌入式的Web容器

    这是一个简单的Java程序,创建了一个监听8080端口的Jetty服务器,处理所有请求的Servlet是`MyServlet`。 7. **扩展应用** - Jetty不仅用于基础的Web服务,还可以用于构建RESTful API、微服务、实时通信等场景。 ...

Global site tag (gtag.js) - Google Analytics