`

Jetty实战之 嵌入式Jetty集成Spring运行

阅读更多

 

转载链接:http://blog.csdn.net/kongxx/article/details/7227107

1. 首先修改pom.xml文件,添加spring的依赖项

写道
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.google.code.garbagecan.jettystudy</groupId>
<artifactId>jettystudy</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>jettystudy</name>
<url>http://maven.apache.org</url>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<inherited>true</inherited>
<configuration>
<source>1.6</source>
<target>1.6</target>
<debug>true</debug>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.eclipse.jetty.aggregate</groupId>
<artifactId>jetty-all</artifactId>
<version>8.0.4.v20111024</version>
<type>jar</type>
<scope>provided</scope>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.6</version>
<type>jar</type>
<scope>provided</scope>
</dependency>

<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>

 2. 创建一个Server类,用来通过spring来启动Jetty server

    package com.google.code.garbagecan.jettystudy.sample4;  
      
    import org.springframework.context.support.ClassPathXmlApplicationContext;  
      
    public class MyServer {  
        public static void main(String[] args) throws Exception {  
            new ClassPathXmlApplicationContext("/com/google/code/garbagecan/jettystudy/sample4/spring.xml");  
        }  
    }  

 3. 创建一个Handler类,用了处理http请求

    package com.google.code.garbagecan.jettystudy.sample4;  
      
    import java.io.IOException;  
      
    import javax.servlet.ServletException;  
    import javax.servlet.http.HttpServletRequest;  
    import javax.servlet.http.HttpServletResponse;  
      
    import org.eclipse.jetty.server.Request;  
    import org.eclipse.jetty.server.handler.AbstractHandler;  
      
    public class MyHandler 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>");  
            response.getWriter().println("<li>Request url: " + target + "</li>");  
            response.getWriter().println("<li>Server port: " + request.getServerPort() + "</li>");  
        }  
    }  

 4. 创建一个spring配置文件,并放在com/google/code/garbagecan/jettystudy/sample4/spring.xml位置,内容如下.

写道
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

<bean id="Server" class="org.eclipse.jetty.server.Server" init-method="start" destroy-method="stop">
<property name="connectors">
<list>
<bean id="Connector" class="org.eclipse.jetty.server.nio.SelectChannelConnector">
<property name="port" value="8080" />
</bean>
</list>
</property>

<property name="handler">
<bean id="handlers" class="org.eclipse.jetty.server.handler.HandlerList">
<property name="handlers">
<list>
<bean class="com.google.code.garbagecan.jettystudy.sample4.MyHandler" />
<bean class="org.eclipse.jetty.server.handler.DefaultHandler" />
</list>
</property>
</bean>
</property>
</bean>
</beans>

 其中定义了Jetty Server的配置,包括Connector和Handler等等。
5. 运行MyServer类,然后通过http://localhost:8080/来访问。

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    example-spring-jetty:基于嵌入式Jetty的Spring MVC应用案例

    基于嵌入式Jetty的Spring MVC应用案例 Spring MVC 3.2.x 版本应用,基于嵌入式Jetty实现。 运行 mvn package java -jar target/example-spring-jetty-1.0-SNAPSHOT.jar 查看根信息 查看用户 查看images下面的图片 ...

    jetty 嵌入式开发源码

    Jetty不仅可以独立使用,还可以与Spring Boot、Quarkus等现代Java框架集成,源码中可以看到这些集成的实现细节。 通过深入学习Jetty的嵌入式开发源码,开发者能够更好地理解其工作原理,从而更高效地利用Jetty构建...

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

    - 在Spring Boot中,Jetty是默认的嵌入式服务器选项之一,简化了Spring应用的部署。 通过以上内容,我们可以了解到Jetty在Java Web开发中的重要地位和优势。无论是小型项目还是复杂的分布式系统,Jetty都能提供...

    springbatch_嵌入式jetty_动态控制的quartz

    支持web接口的批处理框架 在eclipse中导出为可执行的jar,无需部署到任何web容器中。直接通过bat或shell启动即可。...mybatis3.4.1 druid1.0.17 smg3(决策引擎) jetty8.1.5 fastjson1.2.7 springjdbc3.2.14

    Spring整合Jetty开发web应用的例程

    这个例程展示了如何利用Spring来启动和管理Jetty服务器,以构建和运行Web应用程序。下面将详细介绍这一过程中的关键知识点。 1. **Spring框架**:Spring是一个全面的Java企业级应用开发框架,提供了依赖注入...

    maven+spring MVC+Mybatis+jetty+mysql

    在本项目中,Maven 负责集成所有依赖,包括Spring MVC、Mybatis、Jetty和MySQL驱动等。 2. Spring MVC: Spring MVC 是Spring框架的一部分,它是一个基于模型-视图-控制器(Model-View-Controller)设计模式的Web...

    jetty 整合spring+mybatis

    Spring还包含Spring MVC,这是一个用于构建Web应用程序的模块,能够与Jetty完美集成。 MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数...

    spring boot内置jetty

    Spring Boot 默认会选择一个合适的嵌入式服务器,而 Jetty 就是其中之一。配置文件(如 `application.properties` 或 `application.yml`)中可以设置 `server.embedded.jetty.*` 属性来定制 Jetty 的行为,例如端口...

    嵌入jetty的springMVC可运行jar的REST+

    1. **Jetty嵌入式服务器**: Jetty是一个轻量级、高性能的开源HTTP服务器和Servlet容器。它可以直接嵌入到Java应用程序中,无需单独的Web服务器,这使得项目部署更加便捷。Jetty支持最新的Servlet和JSP规范,并且因...

    Spring Boot实战派(源码)

    Spring Boot简化了Spring应用程序的初始设置和配置,使得开发人员能够快速构建可运行的应用程序。以下是基于源码的详细知识点讲解: 1. **Spring Boot核心概念** - `@SpringBootApplication` 注解:它是`@...

    jetty各个版本下载

    Jetty以其高效、稳定和易于集成的特点,深受开发者喜爱。在本篇文章中,我们将深入探讨Jetty的各个版本以及如何进行下载。 1. **Jetty的历史版本** Jetty的发展历程可以追溯到1995年,自那时以来,它经历了多个...

    java jetty容器

    8. **安全性**: Jetty支持多种安全机制,如SSL/TLS加密、JAAS认证、以及与Spring Security等框架的集成,为Web应用提供了强大的安全保障。 9. **模块化**: Jetty的模块化设计使其可以根据应用需求选择加载特定的...

    maven+spring+jetty+logback简单项目源码

    4. `Jetty`的集成与使用:理解如何配置`Jetty`作为应用服务器,并在`Spring`中启动它。 5. `Logback`配置:学习如何定制日志输出,包括日志级别、格式和目的地。 6. 整合与测试:通过编写单元测试和集成测试,确保...

    web工程 -- linux + 嵌入式jetty + springMVC + maven

    含 过程介绍详细文本、源码(去除公司业务)、maven生成的压缩包。 一开始接到这个命题任务的时候,完全不知道怎么办,网上也没找到什么资料。现整理一下上传看看能不能帮到别人,顺便赚点积分。...

    文件上传下载(maven + spring mvc + jetty)

    Jetty是一款轻量级的嵌入式Servlet容器,它可以方便地集成到Maven构建流程中,通过命令`mvn jetty:run`快速启动一个本地服务器,便于开发者进行调试和测试。Jetty支持Servlet 3.1规范,使得我们能够轻松地部署基于...

    [课堂课件讲解]Java微服务实践-Spring Boot嵌入式Web容器.pptx

    Spring Boot嵌入式Web容器则提供了一种新的解决方案,集成了嵌入式Web容器,提供了更好的性能和灵活性。 传统Servlet容器: Eclipse Jetty是一个基于Java语言的Web服务器和Servlet容器,它提供了HTTP服务器和...

    spring-boot实战PDF 完整版和随书源码.7z

    2. 嵌入式服务器:Spring Boot支持内嵌Tomcat、Jetty等Web服务器,无需额外部署,简化了开发和测试流程。 3. 零配置:Spring Boot推崇“约定优于配置”的原则,很多配置都有默认值,极大地减少了繁杂的配置工作。 ...

    SpringBoot切换Tomcat容器,SpringBoot使用Jetty容器

    在Spring Boot框架中,开发者可以选择不同的嵌入式Web服务器作为应用程序的容器,其中最常见的是Tomcat和Jetty。本文将深入探讨如何在Spring Boot项目中从Tomcat切换到Jetty容器,以及这两个容器的特点和使用场景。 ...

    容器jetty

    - **与其他框架集成**:Jetty可以与Spring、Hibernate等Java框架无缝集成,简化Web应用开发。 - **插件系统**:Jetty的插件系统允许用户自定义扩展,例如添加新的HTTP方法或实现特定的协议。 6. **版本9.3.5.v...

    jetty-distribution-8.1.21.v20160908.zip

    安全性方面,Jetty支持基本的认证机制,如HTTP Basic Auth和Form-based Auth,还可以通过集成Spring Security等框架来实现更复杂的权限管理。 总的来说,Jetty 8.1.21作为一个成熟的Web服务器和Servlet容器,提供了...

Global site tag (gtag.js) - Google Analytics