创建一个spring管理的应用程序,想在应用程序中加一个管理功能,因此采用嵌入式web服务器jetty来完成。
1. spring的xml配置中需要加上<import resource="jetty.xml"/>这一行代码
2.创建jetty.xml文件:
<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.xsd">
<bean id="handler" class="org.eclipse.jetty.webapp.WebAppContext">
<property name="contextPath" value="/admin" />
<property name="resourceBase" value="./webapps/admin" />
<property name="logUrlOnStart" value="true" />
</bean>
<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="9191" />
</bean>
</list>
</property>
<property name="handler">
<ref bean="handler" />
</property>
</bean>
</beans>
注意 name="contextPath" value="/admin" 和 port value="9191"
3.配置好以后需要在项目中添加web目录:
webapps
admin
WEB-INF
web.xml
index.jsp
目录的基本结构为上面描述,admin为访问的上下文环境,如果不创建也可以
4.可以创建你的web项目了,包括jsp和servlet
5.不过有一点,想要在servlet中使用spring管理的bean是个麻烦的问题,因为他们不再同一个上下文环境中,不能随意的注入,解决办法为:创建一个获取spring管理的bean的工具类
package net.etongbao.common.utils;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
/**
* 获得指定上下文和Root上下文环境
* <p>
* 通过在*.xml文件中配置
* <pre>
* <bean id="applicationContextHelper" class="net.etongbao.common.ApplicationContextHelper"></bean>
* </pre>
* 配置完成后ApplicationContextHelper会获得所在xml文件Context
*/
public class ApplicationContextHelper implements ApplicationContextAware {
private static ApplicationContext ctx = null;
/**
* 获得Bean对象
*
* @param clazz Bean类型
* @return Bean对象
*/
public static <T> T getBean(Class<T> clazz) {
return ctx.getBean(clazz);
}
/**
* 获得Bean对象
*
* @param className
* @return
*/
public static Object getBean(String className) {
return ctx.getBean(className);
}
/**
* 获得应用所在上下文环境
*
* @return
*/
public static ApplicationContext getContext() {
return ctx;
}
/* (non-Javadoc)
* @see org.springframework.context.ApplicationContextAware#setApplicationContext(org.springframework.context.ApplicationContext)
*/
@Override
public void setApplicationContext(ApplicationContext args0) throws BeansException {
ctx = args0;
}
}
在需要把这个类注入到spring环境中,在xml中这样配置:
<bean id="applicationContextHelper" class="net.etongbao.common.utils.ApplicationContextHelper"></bean>
6.这样就可以在你的Servlet种使用spring管理的bean了 如:
PospCacheService pospCacheService = (PospCacheService) ApplicationContextHelper.getBean("pospCacheService");
分享到:
相关推荐
这个"maven+spring+jetty+logback简单项目源码"提供了一个基础框架,方便新手快速入门并实践这些技术。 首先,`Maven`是Apache开发的一个项目管理和综合工具,它通过一个项目对象模型(Project Object Model, POM)...
接下来是Spring MVC,它是Spring框架的一部分,专为创建Web应用程序而设计。Spring MVC提供了模型-视图-控制器(MVC)架构,使得业务逻辑、数据处理和用户界面可以清晰地分离。在文件上传下载的场景中,Spring MVC的...
Jetty 7.5.4 是一个轻量级的Java Servlet容器和HTTP服务器,用于运行Web应用程序。在CXF和Spring的组合中,Jetty扮演了托管服务的角色,为Web服务提供运行环境。它支持Servlet 3.0规范,提供高性能、低内存占用,...
Java应用程序实现Jetty集成Jersey和Spring是一项常见的技术任务,涉及到三个关键组件:Jetty(一个轻量级的HTTP服务器和Servlet容器),Jersey(一个用于实现RESTful Web服务的Java框架),以及Spring(一个全面的...
这个例程展示了如何利用Spring来启动和管理Jetty服务器,以构建和运行Web应用程序。下面将详细介绍这一过程中的关键知识点。 1. **Spring框架**:Spring是一个全面的Java企业级应用开发框架,提供了依赖注入...
SpringBoot是由Pivotal团队提供的全新框架,旨在简化Spring应用程序的初始搭建以及开发过程。它通过提供默认配置,消除了大量的XML配置,使得开发者可以快速地创建一个独立运行的、生产级别的Java应用。SpringBoot的...
**Spring**是一个开源的轻量级Java开发框架,主要关注于简化企业级应用程序的开发过程。Spring4版本进一步优化了框架的性能,并增加了对新特性如Spring MVC、Spring Data等的支持。Spring框架的核心功能包括依赖注入...
"Struts2 + Spring + Hibernate + DWR"是一个常见的Java Web开发框架组合,用于构建动态、数据驱动的Web应用程序。这个项目部署笔记将深入探讨这四个组件的核心功能以及它们如何协同工作。 首先,Struts2是一个基于...
标题 "springmvc+mysql+mybatis+jetty+maven+easyui" 描述了一款基于Java的Web应用程序,它利用了一系列流行的开源技术栈来构建。这个项目采用了Spring MVC作为后端MVC框架,MySQL作为数据库存储,MyBatis作为持久层...
5. **命令行界面**:Spring Boot CLI可以快速创建和运行Spring应用程序。 SpringCloud则是一个基于SpringBoot实现的云应用开发工具集,它为开发者提供了在分布式系统(如配置管理、服务发现、断路器、智能路由、微...
1. **JavaServer Faces (JSF)**:JSF是一种基于组件的MVC(模型-视图-控制器)框架,主要用于构建企业级的Web应用程序。它提供了一套预定义的UI组件,使得开发者可以更方便地创建用户界面。JSF通过EL(Expression ...
Struts2+Spring+Hibernate网上书店系统是一种基于Java技术的Web应用程序开发框架组合,用于构建高效、可扩展的电子商务平台。这个系统的核心是这三种框架的集成应用,它们分别是: 1. Struts2:作为MVC(Model-View...
这个组合是现代Java应用程序开发中的常见选择,因为它提供了高效能、易用性和强大的功能。 【JDK 8】是Java Development Kit的第8个主要版本,由Oracle公司发布。它引入了许多新特性,如: 1. **Lambda表达式**:...
【Struts+Spring+Hibernate新闻发布系统】是一种经典的Java Web开发框架组合,用于构建高效、可扩展的企业级应用程序,尤其适用于新闻发布或内容管理系统。这个系统利用了三个强大的开源框架:Struts作为表现层框架...
标题中的“一个ext+spring+hibernate+struts2做的系统”指的是一个基于四大开源框架构建的企业级Java Web应用程序。这些框架分别是EXT JS(一个用于构建富客户端界面的JavaScript库)、Spring(一个全面的Java企业...
【标题】"maven+jetty +ssh 项目例子"是一个综合性的开发示例,它展示了如何使用Maven构建工具、Jetty服务器以及SSH(Spring Security)框架来开发和部署一个Java Web应用。这个项目旨在帮助开发者理解这些技术的...
SpringMVC 是 Spring 框架的一部分,主要用于构建 Web 应用程序。它提供了模型-视图-控制器(MVC)架构,帮助开发者将业务逻辑、数据展示和用户交互分离,使代码结构更加清晰。 MyBatis 是一个轻量级的持久层框架,...
Spring提供了Message Broker接口,使得我们可以将消息代理集成到应用程序中。在这个例子中,我们使用内存中的SimpleBroker,它可以处理订阅和发布消息。在WebSocketConfig中配置SimpleBroker,设置订阅前缀和发布...
标题 "自己构建微服务(springmvc+内嵌jetty+maven 环境配置)" 提供了关于如何在Java环境中创建微服务的信息。这通常涉及使用Spring MVC作为控制器层,内嵌Jetty作为Web服务器,以及Maven作为项目管理工具。下面将...
Web服务(Web Service)是一种基于互联网的、使用标准XML(Extensible Markup Language)进行通信的软件组件,允许不同系统间的应用程序进行交互。Spring框架是Java平台上的一个核心框架,它提供了一个全面的基础...