spring quartz 项目调用另外项目的定时类,出现未注入问题
来源:互联网 发布:淘宝网折叠床单人 编辑:程序博客网 时间:2024/05/22 14:54
spring quartz 项目调用另外项目的定时类,出现未注入问题
之前spring 定时器配置文件代码:
<bean name="contentarbitrateservicejob" class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass">
<value>com.cbex.channel.jc.common.QuartzTask</value>
</property>
<property name="jobDataAsMap">
<map>
<entry key="timeout">
<value>5</value>
</entry>
</map>
</property>
</bean>
修改后的代码:
<!--定时器 要调用的工作类 --> <bean id="quartzJob" class="com.cbex.channel.jc.common.QuartzJob"> <property name="utrCemsUpdatetimeManager" ref="utrCemsUpdatetimeManager"/><property name="utrmCemsProjectManager" ref="utrmCemsProjectManager"/> <property name="utrmCemsSellerManager" ref="utrmCemsSellerManager"/> <property name="utrmCemsBuyerManager" ref="utrmCemsBuyerManager"/> <property name="utrmCemsBidinfoManager" ref="utrmCemsBidinfoManager"/> <property name="utrmCemsTenderinfoManager" ref="utrmCemsTenderinfoManager"/> <property name="utrmCemsProjectTempManager" ref="utrmCemsProjectTempManager"/><property name="utrmCemsSellerTempManager" ref="utrmCemsSellerTempManager"/> <property name="utrmCemsBuyerTempManager" ref="utrmCemsBuyerTempManager"/> <property name="utrmCemsBidinfoTempManager" ref="utrmCemsBidinfoTempManager"/> <property name="utrmCemsTenderinfoTempManager" ref="utrmCemsTenderinfoTempManager"/> </bean> <!-- 定义调用对象和调用对象的方法 --> <bean id="jobtask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <!-- 调用的类 --> <property name="targetObject"> <ref bean="quartzJob" /> </property> <!-- 调用类中的方法 --> <property name="targetMethod"> <value>work</value> </property> </bean> <!-- 定义触发时间 --> <bean id="doTime" class="org.springframework.scheduling.quartz.CronTriggerBean"> <property name="jobDetail"> <ref bean="jobtask" /> </property> <!-- cron表达式 --> <property name="cronExpression"> <!-- 第 10秒 隔 5秒执行一次--> <value>0 */1 * * * ?</value> </property> </bean> <!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序 --> <bean id="startQuertz" lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref bean="doTime" /> </list> </property> </bean> <!-- 定时器 end -->
调用的java类
/** * */package com.cbex.channel.jc.common;import java.util.HashMap;import java.util.List;import java.util.Map;import com.cbex.channel.jc.entity.UtrCemsUpdatetime;import com.cbex.channel.jc.manager.UtrCemsUpdatetimeManager;import com.cbex.channel.jc.manager.channelm.UtrmCemsBidinfoManager;import com.cbex.channel.jc.manager.channelm.UtrmCemsBidinfoTempManager;import com.cbex.channel.jc.manager.channelm.UtrmCemsBuyerManager;import com.cbex.channel.jc.manager.channelm.UtrmCemsBuyerTempManager;import com.cbex.channel.jc.manager.channelm.UtrmCemsProjectManager;import com.cbex.channel.jc.manager.channelm.UtrmCemsProjectTempManager;import com.cbex.channel.jc.manager.channelm.UtrmCemsSellerManager;import com.cbex.channel.jc.manager.channelm.UtrmCemsSellerTempManager;import com.cbex.channel.jc.manager.channelm.UtrmCemsTenderinfoManager;import com.cbex.channel.jc.manager.channelm.UtrmCemsTenderinfoTempManager;import com.zbxsoft.api.vo.ParamsVo;/** * @author : chzhou * @date: 日期:2016-5-4 时间:下午01:05:09 * @desc:描述 */public class QuartzJob {private UtrmCemsProjectManager utrmCemsProjectManager;private UtrmCemsSellerManager utrmCemsSellerManager;private UtrmCemsBuyerManager utrmCemsBuyerManager;private UtrmCemsBidinfoManager utrmCemsBidinfoManager;private UtrmCemsTenderinfoManager utrmCemsTenderinfoManager;private UtrmCemsProjectTempManager utrmCemsProjectTempManager;private UtrmCemsSellerTempManager utrmCemsSellerTempManager;private UtrmCemsBuyerTempManager utrmCemsBuyerTempManager;private UtrmCemsBidinfoTempManager utrmCemsBidinfoTempManager;private UtrmCemsTenderinfoTempManager utrmCemsTenderinfoTempManager;private UtrCemsUpdatetimeManager utrCemsUpdatetimeManager;public void work() { System.out.println("==========定时器");//1.查询记录表记录的最新时间ParamsVo<UtrCemsUpdatetime> vo1 = new ParamsVo<UtrCemsUpdatetime>();Map<String,String> map=new HashMap<String,String>();List<UtrCemsUpdatetime> list = utrCemsUpdatetimeManager.getList(vo1);//查询所有记录表数据for(int i=0;i<list.size();i++){map.put(list.get(i).getUpdateid(), list.get(i).getUpdatetime());}ParamsVo vo=publicSwMothod(map,"1");//2.查询大于记录表最新时间的各个表集合数据List projectTempList = utrmCemsProjectTempManager.getList(vo);//2 把最新的数据集合,同步批量插入到监测库中 if(projectTempList.size()>0){vo = this.getParamsVo(null, projectTempList, "Batch");vo.setObjs(projectTempList);utrmCemsProjectManager.editInfo(vo); }//批量插入转让方监测库 vo=publicSwMothod(map,"2");List sellerTempList = utrmCemsSellerTempManager.getList(vo);if(sellerTempList.size()>0){vo = this.getParamsVo(null, sellerTempList, "Batch");vo.setObjs(sellerTempList);utrmCemsSellerManager.editInfo(vo); }//批量插入受让方监测库//3 每同步到检测库表做触发器,添加监测库触发更新记录表时间} public void setUtrmCemsProjectManager(UtrmCemsProjectManager utrmCemsProjectManager) {this.utrmCemsProjectManager = utrmCemsProjectManager;}public void setUtrmCemsSellerManager(UtrmCemsSellerManager utrmCemsSellerManager) {this.utrmCemsSellerManager = utrmCemsSellerManager;}public void setUtrmCemsBuyerManager(UtrmCemsBuyerManager utrmCemsBuyerManager) {this.utrmCemsBuyerManager = utrmCemsBuyerManager;}public void setUtrmCemsBidinfoManager(UtrmCemsBidinfoManager utrmCemsBidinfoManager) {this.utrmCemsBidinfoManager = utrmCemsBidinfoManager;}public void setUtrmCemsTenderinfoManager(UtrmCemsTenderinfoManager utrmCemsTenderinfoManager) {this.utrmCemsTenderinfoManager = utrmCemsTenderinfoManager;}//前置库(临时)public void setUtrmCemsProjectTempManager(UtrmCemsProjectTempManager utrmCemsProjectTempManager) {this.utrmCemsProjectTempManager = utrmCemsProjectTempManager;}public void setUtrmCemsSellerTempManager(UtrmCemsSellerTempManager utrmCemsSellerTempManager) {this.utrmCemsSellerTempManager = utrmCemsSellerTempManager;}public void setUtrmCemsBuyerTempManager(UtrmCemsBuyerTempManager utrmCemsBuyerTempManager) {this.utrmCemsBuyerTempManager = utrmCemsBuyerTempManager;}public void setUtrmCemsBidinfoTempManager(UtrmCemsBidinfoTempManager utrmCemsBidinfoTempManager) {this.utrmCemsBidinfoTempManager = utrmCemsBidinfoTempManager;}public void setUtrmCemsTenderinfoTempManager(UtrmCemsTenderinfoTempManager utrmCemsTenderinfoTempManager) {this.utrmCemsTenderinfoTempManager = utrmCemsTenderinfoTempManager;}public void setUtrCemsUpdatetimeManager(UtrCemsUpdatetimeManager utrCemsUpdatetimeManager) {this.utrCemsUpdatetimeManager = utrCemsUpdatetimeManager;}}
然后重新启动,被调用的定时器 QuartzTask类里面调用的utrCemsUpdatetimeManager 属性的 set方法注入进入了。
0 0
- spring quartz 项目调用另外项目的定时类,出现未注入问题
- Spring+Quartz 定时任务无法自动注入bean的问题
- Spring quartz定时任务Service注入问题
- Spring-quartz定时任务service注入问题
- Spring web项目使用Quartz定时任务
- spring集成quartz,出现2次重复调用的问题
- VS C#工程【调用另外一个项目的类】
- 项目所用技术回顾之定时任务(基于spring quartz)
- 之前项目中用到Spring+Quartz实现定时任务的配置方法
- spring的quartz定时
- spring boot项目依赖spring mvc项目注入失败问题
- spring&quartz的项目应用总结
- spring mvc-quartz的maven配置管理项目
- 项目出现的问题
- Quartz(07) quartz spring web 项目的整合(方法一)
- Quartz(08) quartz spring web 项目的整合(方法二)
- Quartz(09) quartz spring web 项目的整合(终极版)
- 主题:spring集成quartz,出现2次重复调用的问题
- linux(centos)搭建SVN服务器
- maven+eclipse+tomcat配置过程记录
- ASP.NET TreeView读取数据库实例
- iOS 获取app版本
- 查看编译参数
- spring quartz 项目调用另外项目的定时类,出现未注入问题
- Java面试常客之四大代码块
- iOS 转场动画笔记
- 测试 php
- The Apache Axis2 Web service runtime in Tomcat v6.0 Server does not support the service project
- Go性能优化技巧 1/10
- 隐藏文件
- Discuz 论坛
- ListView头部视差效果