今天在使用java架構做資料同步更新時遇到這樣一個問題 Invalid bound statement (not found):
架構是基于spring mybatis的,檢查程式編寫
1在sql的xml裡格式
<select id="getConfirmActivityDTO" resultType="sec.crm.thirdpl.vo.WeChatActivityDTO">
<!-- SQL -->
</select>
2在dao裡的格式
@MyBatisMapper
public interface JOB_Mapper {
public List<WeChatActivityDTO> getConfirmActivityDTO();
}
3在業務方法的格式
@Service("job_BIZ")
public class JOB_BIZIMPL implements JOB_BIZ {
@Inject
private JOB_Mapper mapper;
......
4 在task中格式
@Component(value = "job_SYN_Task")
public class JOB_SYN_Task implements Runnable {
@Inject
JOB_BIZ job_BIZ;
從上面程式編寫中未發現異常,于是主要關注配置檔案,在定時任務的配置中發現
<bean id="JOB_SYN_Trigger"
class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail">
<ref bean="JOB_SYN_Detail" />
</property>
<property name="cronExpression">
<value>2 * * * * ?</value>
</bean>
為測試友善,定時任務配置成2s啟動一次,導緻程式沒有搜尋IOC對象注入的時間,是以報錯,調整程式啟動時間間隔後,不在報此問題