spring中管理timerTask配置文件正确,不执行代码,是否和其它配置有冲突?

问题描述

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd" default-autowire="byName" default-lazy-init="true"> <description>define all the basic bean mappings</description><context:annotation-config /><!-- jedis pool配置 --><bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig"><property name="maxActive" value="200" /><property name="maxIdle" value="10" /><property name="maxWait" value="1000" /><property name="testOnBorrow" value="true" /></bean><!-- jedis pool配置 --><bean id="jedisPool" class="redis.clients.jedis.JedisPool"><constructor-arg index="0" ref="jedisPoolConfig" /><constructor-arg index="1" value="172.16.1.165"/><constructor-arg index="2" value="6379"/></bean><!-- 配置所有的配置信息 --><bean id="constants" class="com.gozap.chouti.digg.core.commons.Constants"> <property name="scoffPic" value="http://img.gozap.com/group1/M00/51/A1/wKgCIk5XCSSIAoY_AACjisrsXVs070.jpg.jpg"></property> <property name="rumorPic" value="http://img.gozap.com/group1/M00/4F/8A/wKgCIk5V7PyMX4vTAABYVNWWTQU258.jpg.jpg"></property> <property name="titleMaxLength" value="300"></property> <property name="urlMaxLength" value="512"></property></bean><!-- for properties files --><bean id="propertyConfigurer"class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"><property name="locations"><list><value>classpath*:config/jdbc.properties</value></list></property></bean> <!-- 数据库连接池 --><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"><property name="driverClassName" value="com.mysql.jdbc.Driver" /><property name="url" value="jdbc:mysql://172.16.1.153:3306/chouti_digg?useUnicode=true&amp;characterEncoding=UTF-8" /><property name="username" value="chouti_digg" /><property name="password" value="chouti" /><property name="defaultAutoCommit" value="true"></property></bean><!-- Mybatis's sqlSessionFactory config --><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="dataSource"></property><property name="configLocation" value="classpath:ibatis/mybatis-config.xml"/></bean><bean name="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource"></property></bean><!-- 新榜榜单数据根据一定规则入热榜 --><bean id="choutiLinkNewToHot" class="com.gozap.chouti.digg.content.service.ChoutiLinkNewToHot"> </bean> <!-- 配置spring定时器 --> <bean id="scheduleLinkNewToHotTask" class="org.springframework.scheduling.timer.ScheduledTimerTask"><property name="timerTask"><ref local="choutiLinkNewToHot"/></property><property name="delay" ><value>5000</value></property><property name="period"><value>5000</value></property> </bean> <!-- 启动spring定时器 --> <bean class="org.springframework.scheduling.timer.TimerFactoryBean"> <property name="scheduledTimerTasks"> <list><ref local="scheduleLinkNewToHotTask"/></list> </property> </bean> <!-- 启用事务 --><tx:advice id="txAdvice" transaction-manager="transactionManager"><tx:attributes><tx:method name="save*" propagation="REQUIRED" /><tx:method name="add*" propagation="REQUIRED" /> <tx:method name="delete*" propagation="REQUIRED" /> <tx:method name="update*" propagation="REQUIRED" /></tx:attributes></tx:advice><!-- 扫描指定package下所有带有如@controller,@services,@resource,并把所注释的注册为Spring Beans --> <context:component-scan base-package="com.gozap.chouti.digg"><context:include-filter type="regex" expression="com.gozap.chouti.digg..*?.service..*"/></context:component-scan><!-- Support @Transactional tag --><tx:annotation-driven /><!-- scan mappers and let them be autowired --><bean id="mapperConfig" class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.gozap.chouti.digg.core.dao" /></bean> <!-- 激活annotation功能 --><context:annotation-config /><!-- 激活annotation功能 --><context:spring-configured /></beans>

解决方案

ChoutiLinkNewToHot类写的对不对?如果是正确的,建议把spring的bean文件中和timertask不相关的bean去掉进行测试。

时间: 2025-01-27 01:57:18

spring中管理timerTask配置文件正确,不执行代码,是否和其它配置有冲突?的相关文章

Spring中管理Bean依赖注入之后和Bean销毁之前的行为

    对于Singleton作用域的Bean,Spring容器将会跟踪它们的生命周期,容器知道何时实例化结束.何时销毁.Spring可以管理Bean在实例化结束之后和Bean销毁之前的行为. Bean依赖关系注入之后的行为:     Spring提供了两种方式在Bean全部属性设置成功后执行特定的行为: 在Spring配置文件中使用init-method属性:这个属性指定某个方法在Bean全部依赖关系设置结束后自动执行.这个方法写在Bean里面.使用这种方法不需要将代码与Spring耦合在一起

spring bean管理的问题

问题描述 在同一个项目中,使用两种方式配置bean的管理:配置型和注解我在一个类名是Test1的类上加入注解如下:@Component@Scope(ScopeType.VIEW)publicclassTest1{}而后我又在配置文件中配置:<beanid="test1"class="com.Other1"scope="view"></bean>附加:Other1继承Test1以上情况可以启动,当我在页面上使用#{test1

Java Spring中同时访问多种不同数据库

开发企业应用时我们常常遇到要同时访问多种不同数据库的问题,有时是必须把数据归档到某种数据仓库中,有时是要把数据变更推送到第三方数据库中.使用Spring框架时,使用单一数据库是非常容易的,但如果要同时访问多个数据库的话事件就变得复杂多了. 本文以在Spring框架下开发一个SpringMVC程序为例,示范了一种同时访问多种数据库的方法,而且尽量地简化配置改动. 搭建数据库 建议你也同时搭好两个数据库来跟进我们的示例.本文中我们用了PostgreSQL和MySQL. 下面的脚本内容是在两个数据库中

spring bean 属性从配置文件读取

问题描述 spring bean 属性从配置文件读取 我在spring的xml文件中使用这个标签: <context:component-scan base-package="${serverPack}"/> 启动${serverPack}从配置文件中获取,现在启动Tomcat出错. 解决方案 Spring bean配置读取配置文件Spring中读取bean配置文件的几种方式用dom4j读取配置文件来模拟spring的bean工厂 解决方案二: 要读取.properties

Solr集群搭建,zookeeper集群搭建,Solr分片管理,Solr集群下的DataImport,分词配置。

1   什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud.当一个系统的索引数据量少的时候是不需要使用SolrCloud的,当索引量很大,搜索请求并发很高,这时需要使 用SolrCloud来满足这些需求. SolrCloud是基于Solr和Zookeeper的分布式搜索方案,它的主要思想是使用Zookeeper作为集群的配置信息中心. 它有几个特色功能: 1)集中式的配置信息 2)自动容

Spring中的AOP(七)——基于XML配置文件方式的AOP

    除了前面介绍的基于JDK1.5的注解方式来定义切面,切入点和增强处理外,Spring AOP也允许直接使用XML配置文件来管理它们.在JDK1.5之前,只能使用配置文件的方式来管理,在Spring2.X后提供了一个新的aop命名空间来定义切面.切入点和增强处理.     相比之下,使用XML配置文件方式有如下优点: 如果没有使用JDK1.5以上版本,只能使用XML配置文件的方式 对早期的Spring用于来说更加习惯,而且这种方式允许使用纯粹的POJO来支持AOP 采用XML配置方式时,我

如何使用Spring来管理Struts中的Action

当指定struts.objectFactory为spring时,struts2框架就会把bean转发给spring来创建,装配,注入.但是bean创建完成之后,还是由struts容器来管理其生命周期.配置方式: (1)struts.xml中: xml 代码: < constant name="struts.objectFactory" value="spring" /> (2)struts.properties中: java 代码: struts.obj

tomcat5-类加载机制 Tomcat5 shared目录下加载的Spring如何管理Tomcat中部署的多个项目

问题描述 类加载机制 Tomcat5 shared目录下加载的Spring如何管理Tomcat中部署的多个项目 20C 我们知道Tomcat5.x类加载体系结构如下:不同的类加载器加载不同路径上的类或jar包. Bootstrap | System | Common / Catalina Shared / Webapp1 Webapp2有这样一个场景,在Tomcat5.x下部署了10个项目,每个项目都是用Spring来组织和管理的,可以吧Spring放到Tomcat的Common或Shared目

spring中配置事务管理的问题

问题描述 spring中配置事务管理的问题 我的Spring配置文件中加上下面的配置,程序启动就报404,是为什么? <tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="get*" propagation="REQUIRED" read-only=&q