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

spring定时任务执行两次

阅读更多
 <Host name="localhost"  appBase=""
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">

        <Context  docBase="/usr/local/apache-tomcat-6.0.29/webapps/semwinner"  path=""   reloadable="true"></Context>
        <Context  docBase="/usr/local/apache-tomcat-6.0.29/webapps/emarboxmanager"  path="/admin"   reloadable="true"></Context>

      </Host>

 把appBase设置为空即可!

去除了appBase="webapps"中的webapps变成了appBase="",因为web应用程序都是放在webapps这个目录下的,如果 不把“webapps“去掉,这里会调用一次quartz的任务调度,在接下来的“<Context path”中又会调用一次quartz的任务调度,所以就重复了2次

分享到:
评论
5 楼 HeSanJava 2016-06-27  
谢谢,文章很有用
4 楼 JobinBai 2015-12-05  
xiaoqiang2008 写道
执行两次的原因是什么,好像楼主没弄清楚啊!
是不是在web.xml中同时配置了ContextLoaderListener和DispatcherServlet?假如真是这样的话,需要删掉一个配置,因为你相当于配置了两个spring容器,两个容器分别都执行各自的计划任务,所以同一个计划任务被执行了两次。
ContextLoaderListener是整合struts等其他框架时常用的配置,起加载时执行优先级高,可以在struts加载之前就执行;假如项目中只有spring框架,那仅配置DispatcherServlet就行了。
以上只是个人猜测,希望能有助于碰到类似问题的朋友们!


这个是正确的。
3 楼 zhangguicheng12 2014-11-06  
果然是tomcat配置的问题
  多谢了!
2 楼 xiaoqiang2008 2013-05-30  
执行两次的原因是什么,好像楼主没弄清楚啊!
是不是在web.xml中同时配置了ContextLoaderListener和DispatcherServlet?假如真是这样的话,需要删掉一个配置,因为你相当于配置了两个spring容器,两个容器分别都执行各自的计划任务,所以同一个计划任务被执行了两次。
ContextLoaderListener是整合struts等其他框架时常用的配置,起加载时执行优先级高,可以在struts加载之前就执行;假如项目中只有spring框架,那仅配置DispatcherServlet就行了。
以上只是个人猜测,希望能有助于碰到类似问题的朋友们!
1 楼 zx527291227 2012-09-18  
你好!按照你的说我尝试了下但是还是会访问两次,能帮忙看下是什么问题么?
http://zx527291227.iteye.com/admin/blogs/1680575

相关推荐

    spring定时任务执行两次的异常排查处理

    一个tomcat下部署了两个应用,一个是普通web应用syncc,另一个应用syncc_wx属于微信公众号后台程序涉及消息定时推送,tomcat未分离...”spring定时任务执行两次的异常排查处理.docx"针对上述描述问题进行分析和解决。

    spring定时任务执行两次及tomcat部署缓慢问题的解决方法

    Spring 定时任务执行两次及 Tomcat 部署缓慢问题的解决方法 Spring 定时器执行两次问题重现和解析 在使用 Quartz 定时任务框架时,可能会出现定时任务执行两次的问题。这个问题可能会在开发环境中没有出现,但是...

    spring java 定时器 执行两次 quartz

    当我们遇到Spring定时器执行两次或者更多次的问题时,这通常是由于配置不当或者多线程并发导致的。下面将详细介绍如何使用Spring集成Quartz,以及解决定时任务重复执行的问题。 首先,让我们了解Spring如何配置...

    spring定时器启动两次原因及解决

    标题中的“spring定时器启动两次原因及解决”指...总之,解决Spring定时任务启动两次的问题需要从配置、代码逻辑和环境设置等多个角度进行排查,结合源码理解和日志分析,才能准确找到问题的根源并提出有效的解决方案。

    Spring定时任务(Web项目)

    一、Spring定时任务简介 Spring框架的定时任务功能主要依赖于`Spring Task`模块,也称为Spring的后台任务处理。它提供了基于`@Scheduled`注解和`TaskScheduler`接口的两种定时任务实现方式。`@Scheduled`适用于简单...

    完美解决多应用服务器负载均衡环境下spring quartz同一定时任务重复执行问题

    在多应用服务器负载均衡环境下,Spring Quartz定时任务的重复执行问题是一个常见的挑战。Spring Quartz是一个强大的、开源的作业调度框架,允许开发者定义和执行复杂的定时任务。然而,当多个服务器实例并行运行时,...

    spring自带定时任务程序

    给定的压缩包可能包含了一个关于如何配置、使用和测试Spring定时任务的文档。这个文档应该详细介绍了每个步骤,包括如何在Spring环境中注册和启动定时任务,如何编写带有`@Scheduled`注解的方法,以及如何编写测试...

    spring定时任务demo包含jar包

    Spring定时任务是Spring框架中的一个强大特性,它允许开发者在应用程序中设置定时任务,以便在特定的时间点或按照预设的周期执行特定的业务逻辑。这个"spring定时任务demo包含jar包"提供了一个完整的示例,帮助我们...

    spring之定时任务实现(spring-task和quartz等不同方式)

    `fixedRate`参数定义了两次执行之间的间隔时间。 如果需要更复杂的调度规则,如cron表达式,可以使用`cron`属性: ```java @Scheduled(cron = "0 0/5 * * * ?") public void executeTask() { // 执行任务代码 } `...

    spring的自带定时任务

    Spring定时任务基础 Spring的定时任务功能是通过`org.springframework.scheduling`包中的类来实现的,主要涉及`TaskScheduler`和`TaskExecutor`接口。`TaskScheduler`用于定时任务的调度,而`TaskExecutor`则处理...

    Spring配置定时任务

    在Spring框架中,定时任务是通过Spring的Task模块来实现的,这允许我们在应用程序中创建和管理定时任务,而无需依赖外部的调度器如Quartz或Cron。本例主要探讨如何在Spring中配置和执行定时任务。 首先,我们要引入...

    spring 定时任务 示例代码

    总结起来,Spring提供了两种方式来处理定时任务:内置的基于注解的定时任务和集成Quartz Scheduler。前者适合简单的定时需求,而后者则为复杂的需求提供了更多灵活性和控制力。在实际开发中,应根据项目需求选择合适...

    Spring 定时任务

    Spring通过`@Scheduled`注解提供了对定时任务的支持,该注解可以轻松地应用于任何Java方法上,使得开发者能够以声明式的方式来配置和执行定时任务。 ### @Scheduled 注解详解 `@Scheduled`注解主要用于方法级别,...

    springboot定时任务的动态开启关闭

    首先,我们需要引入Spring Boot的`spring-boot-starter-quartz`或者`spring-boot-starter-task`依赖,这两个都是Spring框架提供的定时任务支持。`spring-boot-starter-quartz`基于Quartz库,而`spring-boot-starter-...

    Spring整合Quartz后的简单定时任务示例

    本资源"Spring整合Quartz后的简单定时任务示例"提供了如何将这两者结合使用的实例,旨在帮助开发者实现基于Spring的定时任务功能。 首先,我们要理解Spring对定时任务的支持。Spring框架通过`@Scheduled`注解提供了...

    Spring3.2.6定时任务+线程池.docx

    ### Spring3.2.6定时任务与线程池配置详解 #### 一、背景介绍 在现代软件开发中,为了提高系统的并发处理能力和资源利用率,往往需要利用到多线程技术来实现定时任务的处理。Spring框架作为Java企业级应用开发中的...

    两种方式通过spring实现定时执行任务操作

    本文将详细讲解两种通过Spring实现定时任务的方法:Spring的`TimerTask`和`Spring Batch`的`Tasklet`。我们将涵盖这两种方法的基本原理、配置以及使用源码,确保你能全面理解如何在实际项目中应用。 ### 一、Spring...

    Spring定时任务的几种实现

    ### Spring定时任务的几种实现 #### 一、定时任务实现技术分类 在Spring框架中,实现定时任务的主要技术方案有三种: 1. **Java自带的`java.util.Timer`类**:这种实现方式允许用户调度一个`java.util.TimerTask`...

    详解SpringBoot 创建定时任务(配合数据库动态执行)

    在SpringBoot中创建定时任务,主要有两种方式:一种是通过注解(@Scheduled)创建静态定时任务,另一种是通过实现接口(SchedulingConfigurer)创建动态定时任务。 静态定时任务的创建非常简单,只需几行代码便可以完成...

    spring定时任务

    Spring定时任务是Spring框架提供的一种强大的任务调度机制,它允许开发者在应用中安排周期性任务的执行,无需依赖外部的调度服务如Quartz或cron。自Spring 3.0版本开始,Spring引入了`@Scheduled`注解和`Task...

Global site tag (gtag.js) - Google Analytics