`
huyifan951124
  • 浏览: 83178 次
社区版块
存档分类
最新评论

如何在服务器启动的时候自动装在spring容器(例如applicationContext.xml)

 
阅读更多

如果要在服务器启动时自动加载spring容器的话,那可定要在web.xml中配置。那么如何配置呢?请看下面代码

第一种:

没有任何的参数,直接通过监听器加载spring容器,这时候默认的读取路径是读取WEB-INF/applicationContext.xml,也就是说spring容器的配置文件只能有一个且名字必须为applicationContext.xml

 

<!-- 通过这个监听器来自动对spring的ApplicationContext进行加载 -->
<listener>

	<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

</listener>

 第二种:

 

手动指定参数,改变默认的读取路径,允许多文件读取构成spring容器,像下面这样的话applicationContext1.xml,applicationContext2.xml都能被读进去。

<context-param>
	
		<param-name>contextConfigLocation</param-name>
		<param-value>/WEB-INF/applicationContext*.xml</param-value>
	
</context-param>

<!-- 通过这个监听器来自动对spring的ApplicationContext进行加载 -->
<listener>

	<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

</listener>

 

那么服务器端怎么使用spring容器呢,如果是Action的话,只需要在Action上定义好与spring容器中bean的id相同的属性,action就会自动装配。如果是Servlet的话,那该怎么做呢?请看如下代码:

private ApplicationContext context;


//spring与Servlet整合的时候,因为Servlet和Filter不能进行自动装配,因此要用Servlet的init()的方法进行手动的赋值
	@SuppressWarnings("unchecked")
	@Override
	public  void init() throws ServletException 
	{
		//hibernateTemplate对象还是从spring容器中获取因为服务器与数据库的连接一个
		context=WebApplicationContextUtils.getRequiredWebApplicationContext(this.getServletContext());
		ht=(HibernateTemplate)context.getBean("ht");
		
		hibernateTrans=(UserDaoInterface)context.getBean("hibernateTrans");
		
	};

 

 

1
5
分享到:
评论

相关推荐

    java解决org.springframework.web.context.ContextLoaderListener

    这个监听器是基于Servlet容器(如Tomcat、Jetty等)的,当Web应用启动时,它会读取配置文件(通常是`web.xml`),创建并加载ApplicationContext。如果在这个过程中遇到问题,比如`ClassNotFoundException`,那通常...

    spring在web.xml中和在struts中的不同配置.[收集].pdf

    Struts2插件负责在Action执行时从Spring容器中查找并注入Bean。 总结一下,Spring在`web.xml`中的配置主要关注ApplicationContext的初始化和配置文件的位置,而Struts中的配置则是在Struts2配置文件中声明Action和...

    基于java的企业级应用开发:Spring的核心容器.ppt

    在`web.xml`配置文件中,设置`&lt;context-param&gt;`和`&lt;listener&gt;`元素,指定配置文件的位置,这样当Web服务器启动时,`ContextLoaderListener`会自动创建ApplicationContext。 ApplicationContext的实例化完成后,我们...

    spring的jar包.zip

    15. **spring-instrument.jar**:用于服务器端的类加载器增强,通常在应用服务器环境中使用。 16. **spring-amqp.jar**:支持RabbitMQ等消息代理的集成。 17. **spring-messaging.jar**:提供了对消息驱动的API和...

    Spring框架(spring-framework-5.2.6.RELEASE)的jar包

    5. **Instrumentation**:这个模块主要用于服务器端的类加载器和应用级监控,通常在容器环境中使用。 6. **Test**:测试模块支持Spring应用的单元测试和集成测试,包括对Mock对象的支持。 在"spring-framework-...

    Spring--1.Spring ?及搭建环境

    4. **运行应用:** 运行主程序,Spring Boot 将自动配置并启动服务器。 通过以上步骤,你已经成功地搭建了一个基本的 Spring 环境,接下来就可以开始编写实际的业务代码了。Spring 提供了大量的模块,如 Spring MVC...

    专题资料(2021-2022年)Java项目教学第一学期SSM框架讲义1Spring的基本应用.docx

    在Web应用中,ApplicationContext的初始化常通过`ContextLoaderListener`在web.xml中配置完成,这样可以确保在Web服务器启动时加载Spring容器。配置如下: ```xml &lt;param-name&gt;contextConfigLocation ...

    在struts2中集成Spring共2页.pdf.zip

    这样,当Struts2需要Action实例时,会从Spring容器中获取。 4. **注解驱动**:如果项目使用Spring的注解,如`@Autowired`和`@Service`等,那么Action类和相关bean可以通过注解进行配置,简化XML配置。 5. **事务...

    Spring试题和答案.pdf

    例如,Spring的`applicationContext.xml`文件中定义了bean的配置,如`&lt;bean id="userTable"&gt;`。 - AOP(面向切面编程):允许开发者将横切关注点(如日志、事务管理等)与业务逻辑分离,从而提高模块化。例如,通过`...

    spring ioc容器部署实现

    在`META-INF`目录下创建Spring配置文件,例如`applicationContext.xml`,并定义所需的bean及其依赖关系。 4. **实现业务逻辑** 根据应用需求,编写具体的业务逻辑类和服务类,并通过注解或XML配置的方式将其与...

    Eclipse+tomcat+maven 配置Spring mvc图文教程.zip

    在配置Spring MVC项目时,你需要在pom.xml中声明Spring MVC和相关库的依赖,例如Spring Web、Spring Core、Spring Context等。 然后,Tomcat是一款开源的Servlet容器,常被用来部署和运行Java Web应用。在Eclipse中...

    Spring源码学习七:web应用自动装配Spring配置文件1

    这段配置告诉Web服务器在启动时加载指定的Spring配置文件(如`applicationContext.xml`)。`ContextLoaderListener`实现了`ServletContextListener`接口,因此当Web应用启动时,它会接收到`contextInitialized`方法...

    web.xml中ContextLoaderListener的运行过程解析

    在Java Web应用中,`web.xml`是部署描述符,它是配置服务器如何处理Web应用程序的关键文件。`ContextLoaderListener`是Spring框架中的一个监听器,它负责初始化Spring应用上下文。下面将详细解析`web.xml`中`...

    spring启动.txt

    ### Spring在Tomcat容器中的启动过程详解 #### 一、Spring框架简介 Spring是一个开源的轻量级Java开发框架,其核心设计目标是为了简化企业级应用的开发。Spring提供了全面的基础架构支持,使得开发者可以专注于业务...

    10 Spring.doc

    默认情况下,Spring 容器会在启动时实例化所有单例 Bean,而原型 Bean 在每次请求时都会创建新的实例。 2.5 执行初始化和销毁方法 可以通过 init-method 和 destroy-method 属性指定 Bean 初始化和销毁时执行的方法...

    Spring-Reference_zh_CN(Spring中文参考手册)

    2.4.1. 在XML里更为简单的声明性事务配置 2.4.2. JPA 2.4.3. 异步的JMS 2.4.4. JDBC 2.5. Web层 2.5.1. Spring MVC的表单标签库 2.5.2. Spring MVC合理的默认值 2.5.3. Portlet 框架 2.6. 其他特性 2.6.1. 动态语言...

    spring1-demo.zip

    4. **Bean管理**:Spring容器管理应用中的对象,称为"bean"。它负责创建、初始化、装配bean,并管理它们的生命周期。 5. **数据访问**:Spring提供了JDBC抽象层,简化了数据库操作,还有对ORM框架(如Hibernate、...

    springboot参考指南

    1. 介紹 2. I.... 在启动时执行Spring Batch作业 ix. 70. 执行器(Actuator) i. 70.1. 改变HTTP端口或执行器端点的地址 ii. 70.2. 自定义'白标'(whitelabel,可以了解下相关理念)错误页面 x. 71...

    Struts2-Spring-Hibernate的整合.doc

    - 在`web.xml`中配置Spring的监听器`ContextLoaderListener`,这样Spring容器会在Web应用启动时初始化。 - 创建`applicationContext.xml`文件,定义bean的配置,包括数据源、事务管理器以及业务层和服务层的bean。...

    MyBatis_3_整合Spring3、SpringMVC.doc

    - 添加 Spring 容器监听器: ```xml &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener &lt;param-name&gt;contextConfigLocation &lt;param-value&gt;classpath*:applicationContext-*.xml ...

Global site tag (gtag.js) - Google Analytics