`
nbaertuo
  • 浏览: 76133 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

jetty 手动 加载spring mvc demo

阅读更多

搞了一个周末,终于把spring mvc的一个demo用jetty手动跑起来啦。中间还是碰到了一些问题,所以在这里把代码贴出来,给刚接触jetty的同学一个参考。

 

import java.util.HashMap;
import java.util.Map;

import org.apache.jasper.servlet.JspServlet;
import org.mortbay.jetty.Connector;
import org.mortbay.jetty.Server;
import org.mortbay.jetty.bio.SocketConnector;
import org.mortbay.jetty.servlet.Context;
import org.mortbay.jetty.servlet.DefaultServlet;
import org.mortbay.jetty.servlet.FilterHolder;
import org.mortbay.jetty.servlet.ServletHolder;
import org.springframework.js.resource.ResourceServlet;
import org.springframework.web.context.ContextLoaderListener;
import org.springframework.web.filter.DelegatingFilterProxy;
import org.springframework.web.servlet.DispatcherServlet;

/**
 * 在eclipse中启动
 * @author ertuo
 */

public class JettyWebStarter {


 /**
  * 服务器启动。
  */
 public void start() {
  Server server = new Server();
  Connector connector = new SocketConnector();
  connector.setPort(8080);
  server.addConnector(connector);

        Context root = new Context(server, "/booking-mvc", Context.SESSIONS);
       
        /**启动的时候就会加载这个listener 这里开始建立spring的application content*/
        ContextLoaderListener listener = new ContextLoaderListener();
       
        /**设置spring配置文件位置*/
        Map<String, String> initParams = new HashMap<String, String>();
        initParams.put("contextConfigLocation", "/WEB-INF/config/web-application-config.xml");
        root.setInitParams(initParams);
        /**servlet context*/
        root.setResourceBase("E:/sources/spring/spring-webflow-2.0.5.RELEASE/projects/spring-webflow-samples/booking-mvc/src/main/webapp");
        root.addEventListener(listener);
       
        /**资源文件解析*/
        ServletHolder holder=new ServletHolder(new ResourceServlet());
        root.addServlet(holder, "/resources/*");
       
        /**spring control*/
        holder = new ServletHolder(new DispatcherServlet());
        holder.setInitParameter("contextConfigLocation", "/WEB-INF/config/web-application-config.xml");
        root.addServlet(holder, "/spring/*");
       
       
        /**jsp 解析servlet*/
        holder=new ServletHolder(new JspServlet());
        root.addServlet(holder, "*.jsp");
       
       
        /**html*/
        holder=new ServletHolder(new DefaultServlet());
        root.addServlet(holder, "*.html");
       
       
        /**welcome file 这里没有生效 不知道为什么*/
        root.setWelcomeFiles(new String[]{"index.html"});
       
        postStart(root);
        try {
         
            server.start();
            server.join();
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
 }
 
 private void postStart(Context root){
  /**spring内部过滤器代理 里面包含了默认的11个过滤器 这里的初始化参数可以直接些spring的bean名称*/
  FilterHolder filterHolder=new FilterHolder(DelegatingFilterProxy.class);
  filterHolder.setName("springSecurityFilterChain");
  root.addFilter(filterHolder, "/*", org.mortbay.jetty.Handler.DEFAULT);
  
 }
}
源代码在附件中,跑demo需要maven支持。

4
0
分享到:
评论

相关推荐

    maven+spring MVC+Mybatis+jetty+mysql

    "maven+spring MVC+Mybatis+jetty+mysql" 的组合是常见的开发栈,它涵盖了项目管理、前端控制器、持久层操作、应用服务器以及数据库管理等多个层面。下面将详细介绍这些关键技术及其在实际应用中的作用。 1. Maven...

    spring mvc demo

    8. **测试与运行**:使用Tomcat或Jetty等Servlet容器运行项目,通过浏览器访问配置的URL,查看Spring MVC应用是否正常工作。 这个"SpringMvc001"可能是项目初始化的目录,包含了一些基本的配置文件和样例代码。...

    基于Spring MVC 和 WxJava 实现的微信公众号Java后端Demo

    本Demo使用Spring MVC 框架实现微信公众号开发功能。 本项目为WxJava的Demo演示程序,更多Demo请 查阅此处。 如果想支持多公众号,请参考spring boot版本的demo:...

    Spring MVC 项目Demo

    【Spring MVC 项目Demo】是一个基于Java开发的Web应用程序示例,它利用了Spring MVC、MyBatis、Maven、Jetty服务器以及IntelliJ IDEA作为集成开发环境,并且依赖MySQL数据库来存储数据。这个项目旨在展示如何将这些...

    spring MVC 多module demo

    在"spring MVC 多module demo"中,我们探讨的是如何将一个大型项目分解为多个独立的模块,以便更好地管理代码、提高代码复用性和简化项目结构。 1. **模块化开发**:模块化是软件工程中的一个重要概念,它将复杂的...

    Spring-MVC+Maven构建java项目

    在本文中,我们将深入探讨如何使用Spring MVC和Maven来构建一个Java项目。Spring MVC是Spring框架的一个模块,专门用于构建Web应用程序,而Maven则是一个项目管理工具,用于简化构建、依赖管理和项目文档的生成。 *...

    Spring mvc搭建实例

    Spring MVC 是一个基于Java的轻量级Web应用框架,它为构建模型-视图-控制器(MVC)架构的应用程序提供了强大的支持。本教程将通过一个具体的实例来讲解如何搭建Spring MVC项目,确保你能够从头到尾了解每一个步骤。 ...

    最新Spring3 MVC 示例 demo程序

    该demo程序可以打包成WAR文件部署到Tomcat、Jetty等Servlet容器中,或者使用内置的Tomcat服务器(如Spring Boot)直接运行。 通过这个"最新Spring3 MVC 示例 demo程序",你可以学习如何配置Spring MVC、编写...

    springboot MVC简单demo

    SpringBoot MVC简单Demo详解 SpringBoot是Spring框架的一个简化版,它旨在简化Spring应用程序的初始搭建以及开发过程。MVC(Model-View-Controller)模式是Web应用开发中常用的一种设计模式,SpringBoot结合MVC提供...

    Spring boot+mybatis+Spring MVC

    Spring Boot、MyBatis 和 Spring MVC 是三个在Java开发领域广泛应用的开源框架,它们共同构建了一个高效、便捷的Web应用程序开发环境。让我们深入探讨这三个框架的核心功能和它们如何协同工作。 **Spring Boot** ...

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

    在Java Web开发中,Spring框架和Jetty服务器的整合提供了轻量级且高效的应用部署解决方案。这个例程展示了如何利用Spring来启动和管理Jetty服务器,以构建和运行Web应用程序。下面将详细介绍这一过程中的关键知识点...

    基于Spring MVC的web框架 1.1.11

    maven升级jdk1.8 jetty9.2.4 web升级jdk1.7 tomcat7 1.1.7(maven only) 包名修改 从此不再支持web版本,只支持maven版本 1.1.8 jquery 图片预览插件 图片滚动显示插件 1.1.9 jquery实现鼠标在按钮上显示窗口,离开...

    SpringDemo

    为了运行SpringDemo,我们需要配置一个应用服务器,如Tomcat或Jetty,并将Spring相关的配置文件(如applicationContext.xml)和Web配置文件(如web.xml)设置好。然后,将SpringDemo的源代码编译成class文件,放置在...

    SpringMVC+Maven DEMO

    2. **配置pom.xml**:添加SpringMVC和相关依赖,如Spring Core、Spring Web、Spring MVC、Jackson等。 3. **编写Controller**:创建Controller类,使用`@RequestMapping`注解处理请求。 4. **配置SpringMVC**:在...

    spring boot demo 集合

    Spring Boot Demo 集合是一个全面的教程项目,旨在帮助开发者深入理解和实践Spring Boot框架。这个项目包含了55个不同的集成示例,涵盖了Spring Boot在实际开发中的多种应用场景。通过这些示例,开发者可以逐步掌握...

    springboot-demo(springboot+mybatis+mysql+springmvc+thy)

    标题中的"springboot-demo"指的是一个使用Spring Boot框架构建的示例项目,它结合了多个技术组件,包括MyBatis、MySQL、Spring MVC以及可能是Thymeleaf(由于标签拼写不完整,假设是Thymeleaf)。让我们逐一探讨这些...

    SpringMvc集成Redis项目完整示例

    在本项目中,"SpringMvc集成Redis项目完整示例" 提供了一个全面的教程,教你如何将Spring MVC框架与Redis缓存系统相结合。这个示例包括了Web应用程序的实例以及独立的Java测试案例,无需启动Web服务器即可进行测试。...

    spring boot 所有‘demo,打包下载’

    这个“spring boot 所有‘demo,打包下载’”的资源集合是一个极好的学习材料,涵盖了 Spring Boot 的多个关键领域,包括 JPA、Tomcat、Cache、Ant、Hibernate 4、Jetty、WAR 包、Web 开发和 XML 配置。 1. **...

    springMvc+spring4+hibernate4搭建demo

    在本文中,我们将深入探讨如何使用Spring MVC、Spring 4和Hibernate 4构建一个完整的Java Web应用程序框架模板。Spring MVC是Spring框架的一部分,用于处理Web请求,Spring 4提供了全面的依赖注入和企业级服务,而...

Global site tag (gtag.js) - Google Analytics